Add Keycloak as a Link login option

This commit is contained in:
Darren Clarke 2026-01-21 09:58:05 +01:00
parent ac42d7df78
commit e8f2cc4c50
2 changed files with 29 additions and 0 deletions

View file

@ -11,6 +11,7 @@ import Google from "next-auth/providers/google";
import Credentials from "next-auth/providers/credentials";
import Apple from "next-auth/providers/apple";
import AzureADProvider from "next-auth/providers/azure-ad";
import Keycloak from "next-auth/providers/keycloak";
import { createLogger } from "@link-stack/logger";
const logger = createLogger('link-authentication');
@ -101,6 +102,18 @@ if (process.env.GOOGLE_CLIENT_ID && process.env.GOOGLE_CLIENT_SECRET) {
tenantId: process.env.AZURE_AD_TENANT_ID,
}),
);
} else if (
process.env.KEYCLOAK_CLIENT_ID &&
process.env.KEYCLOAK_CLIENT_SECRET &&
process.env.KEYCLOAK_ISSUER
) {
providers.push(
Keycloak({
clientId: process.env.KEYCLOAK_CLIENT_ID,
clientSecret: process.env.KEYCLOAK_CLIENT_SECRET,
issuer: process.env.KEYCLOAK_ISSUER,
}),
);
} else {
providers.push(
Credentials({