mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-12 11:04:25 +00:00
202aae4954
* feat: add mfa to login policy * feat: add mfa to login policy * feat: add mfa to login policy * feat: add mfa to login policy * feat: add mfa to login policy on org * feat: add mfa to login policy on org * feat: append events on policy views * feat: iam login policy mfa definition * feat: login policies on orgs * feat: configured mfas in login process * feat: configured mfas in login process * Update internal/ui/login/static/i18n/en.yaml Co-authored-by: Livio Amstutz <livio.a@gmail.com> * fix: rename software and hardware mfas * fix: pr requests * fix user mfa * fix: test * fix: oidc version * fix: oidc version * fix: proto gen Co-authored-by: Livio Amstutz <livio.a@gmail.com> Co-authored-by: Max Peintner <max@caos.ch>
158 lines
2.7 KiB
Go
158 lines
2.7 KiB
Go
package model
|
|
|
|
type NextStep interface {
|
|
Type() NextStepType
|
|
}
|
|
|
|
type NextStepType int32
|
|
|
|
const (
|
|
NextStepUnspecified NextStepType = iota
|
|
NextStepLogin
|
|
NextStepUserSelection
|
|
NextStepInitUser
|
|
NextStepPassword
|
|
NextStepChangePassword
|
|
NextStepInitPassword
|
|
NextStepVerifyEmail
|
|
NextStepMfaPrompt
|
|
NextStepMfaVerify
|
|
NextStepRedirectToCallback
|
|
NextStepChangeUsername
|
|
NextStepLinkUsers
|
|
NextStepExternalNotFoundOption
|
|
NextStepExternalLogin
|
|
NextStepGrantRequired
|
|
)
|
|
|
|
type UserSessionState int32
|
|
|
|
const (
|
|
UserSessionStateActive UserSessionState = iota
|
|
UserSessionStateTerminated
|
|
)
|
|
|
|
type LoginStep struct{}
|
|
|
|
func (s *LoginStep) Type() NextStepType {
|
|
return NextStepLogin
|
|
}
|
|
|
|
type SelectUserStep struct {
|
|
Users []UserSelection
|
|
}
|
|
|
|
func (s *SelectUserStep) Type() NextStepType {
|
|
return NextStepUserSelection
|
|
}
|
|
|
|
type UserSelection struct {
|
|
UserID string
|
|
DisplayName string
|
|
LoginName string
|
|
UserSessionState UserSessionState
|
|
}
|
|
|
|
type InitUserStep struct {
|
|
PasswordSet bool
|
|
}
|
|
|
|
type ExternalNotFoundOptionStep struct{}
|
|
|
|
func (s *ExternalNotFoundOptionStep) Type() NextStepType {
|
|
return NextStepExternalNotFoundOption
|
|
}
|
|
|
|
func (s *InitUserStep) Type() NextStepType {
|
|
return NextStepInitUser
|
|
}
|
|
|
|
type PasswordStep struct{}
|
|
|
|
func (s *PasswordStep) Type() NextStepType {
|
|
return NextStepPassword
|
|
}
|
|
|
|
type ExternalLoginStep struct {
|
|
SelectedIDPConfigID string
|
|
}
|
|
|
|
func (s *ExternalLoginStep) Type() NextStepType {
|
|
return NextStepExternalLogin
|
|
}
|
|
|
|
type ChangePasswordStep struct{}
|
|
|
|
func (s *ChangePasswordStep) Type() NextStepType {
|
|
return NextStepChangePassword
|
|
}
|
|
|
|
type InitPasswordStep struct{}
|
|
|
|
func (s *InitPasswordStep) Type() NextStepType {
|
|
return NextStepInitPassword
|
|
}
|
|
|
|
type ChangeUsernameStep struct{}
|
|
|
|
func (s *ChangeUsernameStep) Type() NextStepType {
|
|
return NextStepChangeUsername
|
|
}
|
|
|
|
type VerifyEMailStep struct{}
|
|
|
|
func (s *VerifyEMailStep) Type() NextStepType {
|
|
return NextStepVerifyEmail
|
|
}
|
|
|
|
type MfaPromptStep struct {
|
|
Required bool
|
|
MfaProviders []MFAType
|
|
}
|
|
|
|
func (s *MfaPromptStep) Type() NextStepType {
|
|
return NextStepMfaPrompt
|
|
}
|
|
|
|
type MfaVerificationStep struct {
|
|
MfaProviders []MFAType
|
|
}
|
|
|
|
func (s *MfaVerificationStep) Type() NextStepType {
|
|
return NextStepMfaVerify
|
|
}
|
|
|
|
type LinkUsersStep struct{}
|
|
|
|
func (s *LinkUsersStep) Type() NextStepType {
|
|
return NextStepLinkUsers
|
|
}
|
|
|
|
type GrantRequiredStep struct{}
|
|
|
|
func (s *GrantRequiredStep) Type() NextStepType {
|
|
return NextStepGrantRequired
|
|
}
|
|
|
|
type RedirectToCallbackStep struct{}
|
|
|
|
func (s *RedirectToCallbackStep) Type() NextStepType {
|
|
return NextStepRedirectToCallback
|
|
}
|
|
|
|
type MFAType int
|
|
|
|
const (
|
|
MFATypeOTP MFAType = iota
|
|
MFATypeU2F
|
|
)
|
|
|
|
type MFALevel int
|
|
|
|
const (
|
|
MFALevelNotSetUp MFALevel = iota
|
|
MFALevelSecondFactor
|
|
MFALevelMultiFactor
|
|
MFALevelMultiFactorCertified
|
|
)
|