mirror of
https://github.com/BookStackApp/BookStack.git
synced 2024-11-26 02:10:19 +08:00
bba7dcce49
Extracted logout to the login service so the logic can be shared instead of re-implemented at each stage. For this, the SocialAuthService was split so the driver management is in its own class, so it can be used elsewhere without use (or circular dependencies) of the SocialAuthService. During review of #4467
57 lines
2.4 KiB
PHP
57 lines
2.4 KiB
PHP
<?php
|
|
|
|
return [
|
|
|
|
// Display name, shown to users, for OpenId option
|
|
'name' => env('OIDC_NAME', 'SSO'),
|
|
|
|
// Dump user details after a login request for debugging purposes
|
|
'dump_user_details' => env('OIDC_DUMP_USER_DETAILS', false),
|
|
|
|
// Claim, within an OpenId token, to find the user's display name
|
|
'display_name_claims' => env('OIDC_DISPLAY_NAME_CLAIMS', 'name'),
|
|
|
|
// Claim, within an OpenID token, to use to connect a BookStack user to the OIDC user.
|
|
'external_id_claim' => env('OIDC_EXTERNAL_ID_CLAIM', 'sub'),
|
|
|
|
// OAuth2/OpenId client id, as configured in your Authorization server.
|
|
'client_id' => env('OIDC_CLIENT_ID', null),
|
|
|
|
// OAuth2/OpenId client secret, as configured in your Authorization server.
|
|
'client_secret' => env('OIDC_CLIENT_SECRET', null),
|
|
|
|
// The issuer of the identity token (id_token) this will be compared with
|
|
// what is returned in the token.
|
|
'issuer' => env('OIDC_ISSUER', null),
|
|
|
|
// Auto-discover the relevant endpoints and keys from the issuer.
|
|
// Fetched details are cached for 15 minutes.
|
|
'discover' => env('OIDC_ISSUER_DISCOVER', false),
|
|
|
|
// Public key that's used to verify the JWT token with.
|
|
// Can be the key value itself or a local 'file://public.key' reference.
|
|
'jwt_public_key' => env('OIDC_PUBLIC_KEY', null),
|
|
|
|
// OAuth2 endpoints.
|
|
'authorization_endpoint' => env('OIDC_AUTH_ENDPOINT', null),
|
|
'token_endpoint' => env('OIDC_TOKEN_ENDPOINT', null),
|
|
|
|
// OIDC RP-Initiated Logout endpoint
|
|
// A null value gets the URL from discovery, if active.
|
|
// A false value force-disables RP-Initiated Logout.
|
|
// A string value forces the given URL to be used.
|
|
'end_session_endpoint' => env('OIDC_END_SESSION_ENDPOINT', null),
|
|
|
|
// Add extra scopes, upon those required, to the OIDC authentication request
|
|
// Multiple values can be provided comma seperated.
|
|
'additional_scopes' => env('OIDC_ADDITIONAL_SCOPES', null),
|
|
|
|
// Group sync options
|
|
// Enable syncing, upon login, of OIDC groups to BookStack roles
|
|
'user_to_groups' => env('OIDC_USER_TO_GROUPS', false),
|
|
// Attribute, within a OIDC ID token, to find group names within
|
|
'groups_claim' => env('OIDC_GROUPS_CLAIM', 'groups'),
|
|
// When syncing groups, remove any groups that no longer match. Otherwise, sync only adds new groups.
|
|
'remove_from_groups' => env('OIDC_REMOVE_FROM_GROUPS', false),
|
|
];
|