Documentation
¶
Index ¶
- Constants
- Variables
- func LegalLink(name string, href string) flowpilot.Link
- func OAuthLink(name string, href string) flowpilot.Link
- func OtherLink(name string, href string) flowpilot.Link
- type Action
- type Back
- type Dependencies
- type EmailPersistVerifiedStatus
- type ExchangeToken
- type GenerateOAuthLinks
- type GetUserData
- type IssueSession
- type PasswordSave
- type ScheduleMFACreationStates
- type Skip
- type ThirdPartyOAuth
- type VerifyAttestationResponse
- type WebauthnCredentialSave
Constants ¶
View Source
const ( ActionAccountDelete flowpilot.ActionName = "account_delete" ActionBack flowpilot.ActionName = "back" ActionContinueToLoginOTP flowpilot.ActionName = "continue_to_login_otp" ActionContinueToLoginSecurityKey flowpilot.ActionName = "continue_to_login_security_key" ActionContinueToOTPSecretCreation flowpilot.ActionName = "continue_to_otp_secret_creation" ActionContinueToPasscodeConfirmation flowpilot.ActionName = "continue_to_passcode_confirmation" ActionContinueToPasscodeConfirmationRecovery flowpilot.ActionName = "continue_to_passcode_confirmation_recovery" ActionContinueToPasskeyRegistration flowpilot.ActionName = "continue_to_passkey_registration" ActionContinueToPasswordLogin flowpilot.ActionName = "continue_to_password_login" ActionContinueToPasswordRegistration flowpilot.ActionName = "continue_to_password_registration" ActionContinueToSecurityKeyCreation flowpilot.ActionName = "continue_to_security_key_creation" ActionContinueWithLoginIdentifier flowpilot.ActionName = "continue_with_login_identifier" ActionEmailAddressSet flowpilot.ActionName = "email_address_set" ActionEmailCreate flowpilot.ActionName = "email_create" ActionEmailDelete flowpilot.ActionName = "email_delete" ActionEmailSetPrimary flowpilot.ActionName = "email_set_primary" ActionEmailVerify flowpilot.ActionName = "email_verify" ActionExchangeToken flowpilot.ActionName = "exchange_token" ActionOTPCodeValidate flowpilot.ActionName = "otp_code_validate" ActionOTPCodeVerify flowpilot.ActionName = "otp_code_verify" ActionOTPSecretDelete flowpilot.ActionName = "otp_secret_delete" ActionPasswordCreate flowpilot.ActionName = "password_create" ActionPasswordDelete flowpilot.ActionName = "password_delete" ActionPasswordLogin flowpilot.ActionName = "password_login" ActionPasswordRecovery flowpilot.ActionName = "password_recovery" ActionPasswordUpdate flowpilot.ActionName = "password_update" ActionPatchMetadata flowpilot.ActionName = "patch_metadata" ActionRegisterClientCapabilities flowpilot.ActionName = "register_client_capabilities" ActionRegisterLoginIdentifier flowpilot.ActionName = "register_login_identifier" ActionRegisterPassword flowpilot.ActionName = "register_password" ActionRememberMe flowpilot.ActionName = "remember_me" ActionResendPasscode flowpilot.ActionName = "resend_passcode" ActionSecurityKeyCreate flowpilot.ActionName = "security_key_create" ActionSecurityKeyDelete flowpilot.ActionName = "security_key_delete" ActionSkip flowpilot.ActionName = "skip" ActionThirdPartyOAuth flowpilot.ActionName = "thirdparty_oauth" ActionTrustDevice flowpilot.ActionName = "trust_device" ActionUsernameCreate flowpilot.ActionName = "username_create" ActionUsernameDelete flowpilot.ActionName = "username_delete" ActionUsernameUpdate flowpilot.ActionName = "username_update" ActionVerifyPasscode flowpilot.ActionName = "verify_passcode" ActionWebauthnCredentialCreate flowpilot.ActionName = "webauthn_credential_create" ActionWebauthnCredentialDelete flowpilot.ActionName = "webauthn_credential_delete" ActionWebauthnCredentialRename flowpilot.ActionName = "webauthn_credential_rename" ActionWebauthnGenerateCreationOptions flowpilot.ActionName = "webauthn_generate_creation_options" ActionWebauthnGenerateRequestOptions flowpilot.ActionName = "webauthn_generate_request_options" ActionWebauthnVerifyAssertionResponse flowpilot.ActionName = "webauthn_verify_assertion_response" ActionWebauthnVerifyAttestationResponse flowpilot.ActionName = "webauthn_verify_attestation_response" ActionSessionDelete flowpilot.ActionName = "session_delete" )
View Source
const ( FlowCapabilities flowpilot.FlowName = "capabilities" FlowCredentialOnboarding flowpilot.FlowName = "credential_onboarding" FlowCredentialUsage flowpilot.FlowName = "credential_usage" FlowDeviceTrust flowpilot.FlowName = "device_trust" FlowLogin flowpilot.FlowName = "login" FlowMFACreation flowpilot.FlowName = "mfa_creation" FlowProfile flowpilot.FlowName = "profile" FlowRegistration flowpilot.FlowName = "registration" FlowUserDetails flowpilot.FlowName = "user_details" FlowMFAUsage flowpilot.FlowName = "mfa_usage" )
View Source
const ( StashPathDeviceTrustGranted = "device_trust_granted" StashPathEmail = "email" StashPathEmailVerified = "email_verified" StashPathLoginMethod = "login_method" StashPathLoginOnboardingCreateEmail = "login_onboarding_create_email" StashPathLoginOnboardingScheduled = "login_onboarding_scheduled" StashPathMFAUsageMethod = "mfa_method" StashPathCreateMFAOnlyCredential = "create_mfa_only_credential" StashPathNewPassword = "new_password" StashPathOTPSecret = "otp_secret" StashPathOTPImageSource = "otp_image_src" StashPathPasscodeEmail = "sticky.passcode_email" StashPathPasscodeID = "sticky.passcode_id" StashPathPasscodeTemplate = "passcode_template" StashPathPasswordRecoveryPending = "pw_recovery_pending" StashPathRememberMeSelected = "remember_me_selected" StashPathSecurityKeyAttachmentSupported = "security_key_attachment_supported" StashPathSkipUserCreation = "skip_user_creation" StashPathThirdPartyProvider = "third_party_provider" StashPathUserHasEmails = "user_has_emails" StashPathUserHasOTPSecret = "user_hat_otp_secret" StashPathUserHasPasskey = "user_has_passkey" StashPathUserHasPassword = "user_has_password" StashPathUserHasSecurityKey = "user_has_security_key" StashPathUserHasUsername = "user_has_username" StashPathUserHasWebauthnCredential = "user_has_webauthn_credential" StashPathUserID = "user_id" StashPathUserIdentification = "user_identification" StashPathUsername = "username" StashPathWebauthnAvailable = "webauthn_available" StashPathWebauthnConditionalMediationAvailable = "webauthn_conditional_mediation_available" StashPathWebauthnCredentials = "webauthn_credentials" StashPathWebauthnPlatformAuthenticatorAvailable = "webauthn_platform_authenticator_available" StashPathWebauthnSessionDataID = "webauthn_session_data_id" )
View Source
const ( StateCredentialOnboardingChooser flowpilot.StateName = "credential_onboarding_chooser" StateDeviceTrust flowpilot.StateName = "device_trust" StateError flowpilot.StateName = "error" StateLoginInit flowpilot.StateName = "login_init" StateLoginMethodChooser flowpilot.StateName = "login_method_chooser" StateLoginOTP flowpilot.StateName = "login_otp" StateLoginPasskey flowpilot.StateName = "login_passkey" StateLoginPassword flowpilot.StateName = "login_password" StateLoginPasswordRecovery flowpilot.StateName = "login_password_recovery" StateLoginSecurityKey flowpilot.StateName = "login_security_key" StateMFAMethodChooser flowpilot.StateName = "mfa_method_chooser" StateOnboardingCreatePasskey flowpilot.StateName = "onboarding_create_passkey" StateOnboardingEmail flowpilot.StateName = "onboarding_email" StateOnboardingUsername flowpilot.StateName = "onboarding_username" StateOnboardingVerifyPasskeyAttestation flowpilot.StateName = "onboarding_verify_passkey_attestation" StateMFAOTPSecretCreation flowpilot.StateName = "mfa_otp_secret_creation" StatePasscodeConfirmation flowpilot.StateName = "passcode_confirmation" StatePasswordCreation flowpilot.StateName = "password_creation" StatePreflight flowpilot.StateName = "preflight" StateProfileAccountDeleted flowpilot.StateName = "account_deleted" StateProfileInit flowpilot.StateName = "profile_init" StateProfileWebauthnCredentialVerification flowpilot.StateName = "webauthn_credential_verification" StateRegistrationInit flowpilot.StateName = "registration_init" StateMFASecurityKeyCreation flowpilot.StateName = "mfa_security_key_creation" StateSuccess flowpilot.StateName = "success" StateThirdParty flowpilot.StateName = "thirdparty" )
View Source
const ( CategoryLegal flowpilot.LinkCategory = "legal" CategoryOauth flowpilot.LinkCategory = "oauth" CategoryOther flowpilot.LinkCategory = "other" )
Link categories enumeration.
Variables ¶
View Source
var ( ErrorNotFound = flowpilot.NewFlowError("not_found", "The requested resource was not found.", http.StatusNotFound) ErrorPasscodeMaxAttemptsReached = flowpilot.NewFlowError("passcode_max_attempts_reached", "The passcode was entered wrong too many times.", http.StatusUnauthorized) ErrorPasskeyInvalid = flowpilot.NewFlowError("passkey_invalid", "The passkey is invalid.", http.StatusUnauthorized) ErrorRateLimitExceeded = flowpilot.NewFlowError("rate_limit_exceeded", "The rate limit has been exceeded.", http.StatusTooManyRequests) ErrorWebauthnCredentialInvalidMFAOnly = flowpilot.NewFlowError("webauthn_credential_invalid_mfa_only", "This credential can be used as a second factor security key only.", http.StatusUnauthorized) ErrorPlatformAuthenticatorRequired = flowpilot.NewFlowError("platform_authenticator_required", "The device or browser does not support the required platform authenticators.", http.StatusUnauthorized) )
View Source
var ( ErrorEmailAlreadyExists = flowpilot.NewInputError("email_already_exists", "The email address already exists.") ErrorUsernameAlreadyExists = flowpilot.NewInputError("username_already_exists", "The username already exists.") ErrorUnknownUsername = flowpilot.NewInputError("unknown_username_error", "The username is unknown.") ErrorUnknownEmail = flowpilot.NewInputError("unknown_email_error", "The email address is unknown.") ErrorInvalidUsername = flowpilot.NewInputError("invalid_username_error", "The username is invalid.") ErrorPasscodeInvalid = flowpilot.NewInputError("passcode_invalid", "The passcode is invalid.") ErrorInvalidMetadata = flowpilot.NewInputError("invalid_metadata_error", "The metadata is invalid.") )
Functions ¶
Types ¶
type Back ¶
type Back struct{}
func (Back) GetDescription ¶
func (Back) GetName ¶
func (a Back) GetName() flowpilot.ActionName
func (Back) Initialize ¶
func (a Back) Initialize(c flowpilot.InitializationContext)
type Dependencies ¶
type Dependencies struct { Cfg config.Config HttpContext echo.Context PasscodeService services.Passcode PasswordService services.Password WebauthnService services.WebauthnService SamlService saml.Service Persister persistence.Persister SessionManager session.Manager OTPRateLimiter limiter.Store PasscodeRateLimiter limiter.Store PasswordRateLimiter limiter.Store TokenExchangeRateLimiter limiter.Store Tx *pop.Connection AuthenticatorMetadata mapper.AuthenticatorMetadata AuditLogger auditlog.Logger }
type EmailPersistVerifiedStatus ¶
type EmailPersistVerifiedStatus struct {
Action
}
func (EmailPersistVerifiedStatus) Execute ¶
func (h EmailPersistVerifiedStatus) Execute(c flowpilot.HookExecutionContext) error
type ExchangeToken ¶
type ExchangeToken struct {
Action
}
func (ExchangeToken) Execute ¶
func (a ExchangeToken) Execute(c flowpilot.ExecutionContext) error
func (ExchangeToken) GetDescription ¶
func (a ExchangeToken) GetDescription() string
func (ExchangeToken) GetName ¶
func (a ExchangeToken) GetName() flowpilot.ActionName
func (ExchangeToken) Initialize ¶
func (a ExchangeToken) Initialize(c flowpilot.InitializationContext)
type GenerateOAuthLinks ¶
type GenerateOAuthLinks struct {
Action
}
func (GenerateOAuthLinks) Execute ¶
func (h GenerateOAuthLinks) Execute(c flowpilot.HookExecutionContext) error
type GetUserData ¶
type GetUserData struct {
Action
}
func (GetUserData) Execute ¶
func (h GetUserData) Execute(c flowpilot.HookExecutionContext) error
type IssueSession ¶
type IssueSession struct {
Action
}
func (IssueSession) Execute ¶
func (h IssueSession) Execute(c flowpilot.HookExecutionContext) error
type PasswordSave ¶
type PasswordSave struct {
Action
}
func (PasswordSave) Execute ¶
func (h PasswordSave) Execute(c flowpilot.HookExecutionContext) error
type ScheduleMFACreationStates ¶
type ScheduleMFACreationStates struct {
Action
}
func (ScheduleMFACreationStates) Execute ¶
func (h ScheduleMFACreationStates) Execute(c flowpilot.HookExecutionContext) error
type Skip ¶
type Skip struct {
Action
}
func (Skip) GetDescription ¶
func (Skip) GetName ¶
func (a Skip) GetName() flowpilot.ActionName
func (Skip) Initialize ¶
func (a Skip) Initialize(c flowpilot.InitializationContext)
type ThirdPartyOAuth ¶
type ThirdPartyOAuth struct {
Action
}
func (ThirdPartyOAuth) Execute ¶
func (a ThirdPartyOAuth) Execute(c flowpilot.ExecutionContext) error
func (ThirdPartyOAuth) GetDescription ¶
func (a ThirdPartyOAuth) GetDescription() string
func (ThirdPartyOAuth) GetName ¶
func (a ThirdPartyOAuth) GetName() flowpilot.ActionName
func (ThirdPartyOAuth) Initialize ¶
func (a ThirdPartyOAuth) Initialize(c flowpilot.InitializationContext)
type VerifyAttestationResponse ¶
type VerifyAttestationResponse struct {
Action
}
func (VerifyAttestationResponse) Execute ¶
func (h VerifyAttestationResponse) Execute(c flowpilot.HookExecutionContext) error
type WebauthnCredentialSave ¶
type WebauthnCredentialSave struct {
Action
}
func (WebauthnCredentialSave) Execute ¶
func (h WebauthnCredentialSave) Execute(c flowpilot.HookExecutionContext) error
Source Files
¶
- action_back.go
- action_exchange_token.go
- action_skip.go
- action_thirdparty_oauth.go
- const_action_names.go
- const_flow_names.go
- const_stash_paths.go
- const_state_names.go
- errors.go
- flow.go
- hook_email_persist_verified_status.go
- hook_generate_oauth_links.go
- hook_get_user_data.go
- hook_issue_session.go
- hook_password_save.go
- hook_persist_webauthn_credential.go
- hook_schedule_mfa_creation_states.go
- hook_verify_attestation_response.go
- links.go
Click to show internal directories.
Click to hide internal directories.