started with Multi-Tenant OpenID.

TODO:
working code but needs some refactoring and cleaning up.
This commit is contained in:
Ruben Talstra 2025-02-08 13:12:07 +01:00
parent d786bf263c
commit 6577144554
Failed to extract signature
10 changed files with 350 additions and 58 deletions

View file

@ -481,6 +481,7 @@ export type TStartupConfig = {
githubLoginEnabled: boolean;
googleLoginEnabled: boolean;
openidLoginEnabled: boolean;
openidMultiTenantEnabled: boolean;
appleLoginEnabled: boolean;
openidLabel: string;
openidImageUrl: string;
@ -558,6 +559,24 @@ export const configSchema = z.object({
message: 'At least one `endpoints` field must be provided.',
})
.optional(),
// ===== Add your OpenID configuration =====
openid: z
.object({
tenants: z
.array(
z.object({
name: z.string(),
domains: z.string(),
openid: z.object({
clientId: z.string(),
clientSecret: z.string(),
issuer: z.string(),
}),
}),
)
.optional(),
})
.optional(),
});
export const getConfigDefaults = () => getSchemaDefaults(configSchema);