mirror of
https://github.com/netbirdio/netbird.git
synced 2026-04-16 07:16:38 +00:00
[client, management] Add OAuth select_account prompt support to PKCE flow (#4880)
* Add OAuth select_account prompt support to PKCE flow Extends LoginFlag enum with select_account options to enable multi-account selection during authentication. This allows users to choose which account to use when multiple accounts have active sessions with the identity provider. The new flags are backward compatible - existing LoginFlag values (0=prompt login, 1=max_age=0) retain their original behavior.
This commit is contained in:
@@ -1,19 +1,20 @@
|
||||
package common
|
||||
|
||||
// LoginFlag introduces additional login flags to the PKCE authorization request
|
||||
// LoginFlag introduces additional login flags to the PKCE authorization request.
|
||||
//
|
||||
// # Config Values
|
||||
//
|
||||
// | Value | Flag | OAuth Parameters |
|
||||
// |-------|----------------------|-----------------------------------------|
|
||||
// | 0 | LoginFlagPromptLogin | prompt=select_account login |
|
||||
// | 1 | LoginFlagMaxAge0 | max_age=0 & prompt=select_account |
|
||||
type LoginFlag uint8
|
||||
|
||||
const (
|
||||
// LoginFlagPrompt adds prompt=login to the authorization request
|
||||
LoginFlagPrompt LoginFlag = iota
|
||||
// LoginFlagMaxAge0 adds max_age=0 to the authorization request
|
||||
// LoginFlagPromptLogin adds prompt=select_account login to the authorization request
|
||||
LoginFlagPromptLogin LoginFlag = iota
|
||||
// LoginFlagMaxAge0 adds max_age=0 and prompt=select_account to the authorization request
|
||||
LoginFlagMaxAge0
|
||||
// LoginFlagNone disables all login flags
|
||||
LoginFlagNone
|
||||
)
|
||||
|
||||
func (l LoginFlag) IsPromptLogin() bool {
|
||||
return l == LoginFlagPrompt
|
||||
}
|
||||
|
||||
func (l LoginFlag) IsMaxAge0Login() bool {
|
||||
return l == LoginFlagMaxAge0
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user