mirror of
https://github.com/skooner-k8s/skooner.git
synced 2026-02-14 17:49:55 +00:00
add OIDC_CODE_CHALLENGE
This commit is contained in:
@@ -13,6 +13,7 @@ const OIDC_CLIENT_ID = process.env.OIDC_CLIENT_ID;
|
||||
const OIDC_SECRET = process.env.OIDC_SECRET;
|
||||
const OIDC_URL = process.env.OIDC_URL;
|
||||
const OIDC_SCOPES = process.env.OIDC_SCOPES || 'openid email';
|
||||
const OIDC_CODE_CHALLENGE = process.env.OIDC_CODE_CHALLENGE || '';
|
||||
const OIDC_CODE_CHALLENGE_METHOD = process.env.OIDC_CODE_CHALLENGE_METHOD || 'plain';
|
||||
const OIDC_METADATA = JSON.parse(process.env.OIDC_METADATA || '{}');
|
||||
const clientMetadata = Object.assign({client_id: OIDC_CLIENT_ID, client_secret: OIDC_SECRET}, OIDC_METADATA);
|
||||
@@ -131,7 +132,18 @@ async function getOidcEndpoint() {
|
||||
if (!OIDC_URL) return;
|
||||
|
||||
const provider = await getOidcProvider();
|
||||
return provider.authorizationUrl({scope: OIDC_SCOPES, code_challenge_method: OIDC_CODE_CHALLENGE_METHOD});
|
||||
const isUsePKCE = OIDC_CODE_CHALLENGE !== "" && OIDC_CODE_CHALLENGE_METHOD === "S256"
|
||||
let authParams = {
|
||||
scope: OIDC_SCOPES,
|
||||
}
|
||||
if (isUsePKCE) {
|
||||
authParams = {
|
||||
...authParams,
|
||||
code_challenge: OIDC_CODE_CHALLENGE,
|
||||
code_challenge_method: OIDC_CODE_CHALLENGE_METHOD
|
||||
}
|
||||
}
|
||||
return provider.authorizationUrl(authParams);
|
||||
}
|
||||
|
||||
async function oidcAuthenticate(code, redirectUri) {
|
||||
|
||||
Reference in New Issue
Block a user