feat: map preferred_username claim to user record (#2569)

This commit is contained in:
Greg Linklater
2021-09-17 03:45:37 +02:00
committed by GitHub
parent 27736f66ef
commit 01cea549a5
7 changed files with 29 additions and 1 deletions

View File

@@ -2,6 +2,7 @@
import passport from "@outlinewiki/koa-passport";
import fetch from "fetch-with-proxy";
import Router from "koa-router";
import get from "lodash/get";
import { Strategy } from "passport-oauth2";
import accountProvisioner from "../../../commands/accountProvisioner";
import env from "../../../env";
@@ -22,6 +23,8 @@ const OIDC_AUTH_URI = process.env.OIDC_AUTH_URI;
const OIDC_TOKEN_URI = process.env.OIDC_TOKEN_URI;
const OIDC_USERINFO_URI = process.env.OIDC_USERINFO_URI;
const OIDC_SCOPES = process.env.OIDC_SCOPES || "";
const OIDC_USERNAME_CLAIM =
process.env.OIDC_USERNAME_CLAIM || "preferred_username";
const allowedDomains = getAllowedDomains();
export const config = {
@@ -103,6 +106,9 @@ if (OIDC_CLIENT_ID) {
name: profile.name,
email: profile.email,
avatarUrl: profile.picture,
// Claim name can be overriden using an env variable.
// Default is 'preferred_username' as per OIDC spec.
username: get(profile, OIDC_USERNAME_CLAIM),
},
authenticationProvider: {
name: providerName,