Add scope configuration
This commit is contained in:
parent
07fa3d9a2e
commit
79b5e363bc
@ -56,6 +56,14 @@ async function register ({
|
|||||||
private: true
|
private: true
|
||||||
})
|
})
|
||||||
|
|
||||||
|
registerSetting({
|
||||||
|
name: 'scope',
|
||||||
|
label: 'Scope',
|
||||||
|
type: 'input',
|
||||||
|
private: true,
|
||||||
|
default: 'openid email profile'
|
||||||
|
})
|
||||||
|
|
||||||
registerSetting({
|
registerSetting({
|
||||||
name: 'username-property',
|
name: 'username-property',
|
||||||
label: 'Username property',
|
label: 'Username property',
|
||||||
@ -94,15 +102,15 @@ async function register ({
|
|||||||
const secretKeyBuf = await getRandomBytes(16)
|
const secretKeyBuf = await getRandomBytes(16)
|
||||||
store.secretKey = secretKeyBuf.toString('hex')
|
store.secretKey = secretKeyBuf.toString('hex')
|
||||||
|
|
||||||
await loadSettingsAndCreateClient(registerExternalAuth, unregisterExternalAuth, peertubeHelpers, settingsManager)
|
|
||||||
store.authDisplayName = await settingsManager.getSetting('auth-display-name')
|
|
||||||
|
|
||||||
settingsManager.onSettingsChange(settings => {
|
settingsManager.onSettingsChange(settings => {
|
||||||
loadSettingsAndCreateClient(registerExternalAuth, unregisterExternalAuth, peertubeHelpers, settingsManager)
|
loadSettingsAndCreateClient(registerExternalAuth, unregisterExternalAuth, peertubeHelpers, settingsManager)
|
||||||
.catch(err => logger.error('Cannot load settings and create client after settings changes.', { err }))
|
.catch(err => logger.error('Cannot load settings and create client after settings changes.', { err }))
|
||||||
|
|
||||||
if (settings['auth-display-name']) store.authDisplayName = settings['auth-display-name']
|
if (settings['auth-display-name']) store.authDisplayName = settings['auth-display-name']
|
||||||
})
|
})
|
||||||
|
|
||||||
|
await loadSettingsAndCreateClient(registerExternalAuth, unregisterExternalAuth, peertubeHelpers, settingsManager)
|
||||||
|
store.authDisplayName = await settingsManager.getSetting('auth-display-name')
|
||||||
}
|
}
|
||||||
|
|
||||||
async function unregister () {
|
async function unregister () {
|
||||||
@ -127,6 +135,7 @@ async function loadSettingsAndCreateClient (registerExternalAuth, unregisterExte
|
|||||||
store.userAuthenticated = null
|
store.userAuthenticated = null
|
||||||
|
|
||||||
const settings = await settingsManager.getSettings([
|
const settings = await settingsManager.getSettings([
|
||||||
|
'scope',
|
||||||
'discover-url',
|
'discover-url',
|
||||||
'client-id',
|
'client-id',
|
||||||
'client-secret'
|
'client-secret'
|
||||||
@ -172,7 +181,7 @@ async function loadSettingsAndCreateClient (registerExternalAuth, unregisterExte
|
|||||||
const codeChallenge = openidModule.generators.codeChallenge(codeVerifier)
|
const codeChallenge = openidModule.generators.codeChallenge(codeVerifier)
|
||||||
|
|
||||||
const redirectUrl = store.client.authorizationUrl({
|
const redirectUrl = store.client.authorizationUrl({
|
||||||
scope: 'openid email profile',
|
scope: settings['scope'],
|
||||||
response_mode: 'form_post',
|
response_mode: 'form_post',
|
||||||
code_challenge: codeChallenge,
|
code_challenge: codeChallenge,
|
||||||
code_challenge_method: 'S256'
|
code_challenge_method: 'S256'
|
||||||
|
Loading…
x
Reference in New Issue
Block a user