Merge pull request #16899 from sennyeya/secret-scoping

feat(auth-backend): Add correct secret scoping for auth-backend secrets
This commit is contained in:
Fredrik Adelöw
2023-03-17 12:02:04 +01:00
committed by GitHub
2 changed files with 93 additions and 9 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend': patch
---
Enforce the secret visibility of certificates and client secrets in the auth backend. Also, document all known options for each auth plugin.
+88 -9
View File
@@ -62,30 +62,72 @@ export interface Config {
*/
providers?: {
google?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
callbackUrl?: string;
};
};
github?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
callbackUrl?: string;
enterpriseInstanceUrl?: string;
};
};
gitlab?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
audience?: string;
callbackUrl?: string;
};
};
saml?: {
entryPoint: string;
logoutUrl?: string;
issuer: string;
/**
* @visibility secret
*/
cert: string;
audience?: string;
/**
* @visibility secret
*/
privateKey?: string;
authnContext?: string[];
identifierFormat?: string;
/**
* @visibility secret
*/
decryptionPvk?: string;
signatureAlgorithm?: 'sha256' | 'sha512';
digestAlgorithm?: string;
acceptedClockSkewMs?: number;
};
okta?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
audience: string;
authServerId?: string;
idp?: string;
callbackUrl?: string;
};
};
oauth2?: {
[authEnv: string]: {
@@ -101,19 +143,56 @@ export interface Config {
};
};
oidc?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
callbackUrl?: string;
metadataUrl: string;
scope?: string;
prompt?: string;
};
};
auth0?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
domain: string;
callbackUrl?: string;
audience?: string;
connection?: string;
connectionScope?: string;
};
};
microsoft?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
tenantId: string;
callbackUrl?: string;
};
};
onelogin?: {
[authEnv: string]: { [key: string]: string };
[authEnv: string]: {
clientId: string;
/**
* @visibility secret
*/
clientSecret: string;
issuer: string;
callbackUrl?: string;
};
};
awsalb?: {
issuer?: string;
iss?: string;
region: string;
};
cfaccess?: {