Documentation ¶
Index ¶
- Constants
- Variables
- func ConfigureAccountStatusRoute(route httproute.Route) httproute.Route
- func ConfigureAppStaticAssetsRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowAccountStatusRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowChangePasswordRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowCreatePasswordRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowEnterOOBOTPRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowEnterPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowEnterRecoveryCodeRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowEnterTOTPRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowFinishFlowRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowForgotPasswordOTPRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowForgotPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowForgotPasswordSuccessRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowLoginRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowNoAuthenticatorRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowOOBOTPLinkRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowPromoteRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowPromptCreatePasskeyRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowReauthRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowResetPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowResetPasswordSuccessRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowSetupOOBOTPRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowSetupTOTPRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowSignupRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowTerminateOtherSessionsRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowUsePasskeyRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowViewRecoveryCodeRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowWechatRoute(route httproute.Route) httproute.Route
- func ConfigureAuthflowWhatsappOTPRoute(route httproute.Route) httproute.Route
- func ConfigureCSRFErrorInstructionRoute(route httproute.Route) httproute.Route
- func ConfigureConfirmTerminateOtherSessionsRoute(route httproute.Route) httproute.Route
- func ConfigureConnectWeb3AccountRoute(route httproute.Route) httproute.Route
- func ConfigureCreatePasskeyRoute(route httproute.Route) httproute.Route
- func ConfigureCreatePasswordRoute(route httproute.Route) httproute.Route
- func ConfigureEnterLoginIDRoute(route httproute.Route) httproute.Route
- func ConfigureEnterOOBOTPRoute(route httproute.Route) httproute.Route
- func ConfigureEnterPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureEnterRecoveryCodeRoute(route httproute.Route) httproute.Route
- func ConfigureEnterTOTPRoute(route httproute.Route) httproute.Route
- func ConfigureErrorRoute(route httproute.Route) httproute.Route
- func ConfigureFeatureDisabledRoute(route httproute.Route) httproute.Route
- func ConfigureForceChangePasswordRoute(route httproute.Route) httproute.Route
- func ConfigureForceChangeSecondaryPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureForgotPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureForgotPasswordSuccessRoute(route httproute.Route) httproute.Route
- func ConfigureGeneratedStaticAssetsRoute(route httproute.Route) httproute.Route
- func ConfigureLoginLinkOTPRoute(route httproute.Route) httproute.Route
- func ConfigureLoginRoute(route httproute.Route) httproute.Route
- func ConfigureLogoutRoute(route httproute.Route) httproute.Route
- func ConfigureOAuthEntrypointRoute(route httproute.Route) httproute.Route
- func ConfigurePasskeyCreationOptionsRoute(route httproute.Route) httproute.Route
- func ConfigurePasskeyRequestOptionsRoute(route httproute.Route) httproute.Route
- func ConfigurePromoteRoute(route httproute.Route) httproute.Route
- func ConfigurePromptCreatePasskeyRoute(route httproute.Route) httproute.Route
- func ConfigureReauthRoute(route httproute.Route) httproute.Route
- func ConfigureResetPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureResetPasswordSuccessRoute(route httproute.Route) httproute.Route
- func ConfigureReturnRoute(route httproute.Route) httproute.Route
- func ConfigureRootRoute(route httproute.Route) httproute.Route
- func ConfigureSSOCallbackRoute(route httproute.Route) httproute.Route
- func ConfigureSelectAccountRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsBiometricRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsChangePasswordRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsChangeSecondaryPasswordRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsDeleteAccountRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsDeleteAccountSuccessRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsIdentityRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsMFARoute(route httproute.Route) httproute.Route
- func ConfigureSettingsOOBOTPRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsPasskeyRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsProfileEditRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsProfileRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsRecoveryCodeRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsSessionsRoute(route httproute.Route) httproute.Route
- func ConfigureSettingsTOTPRoute(route httproute.Route) httproute.Route
- func ConfigureSetupLoginLinkOTPRoute(route httproute.Route) httproute.Route
- func ConfigureSetupOOBOTPRoute(route httproute.Route) httproute.Route
- func ConfigureSetupRecoveryCodeRoute(route httproute.Route) httproute.Route
- func ConfigureSetupTOTPRoute(route httproute.Route) httproute.Route
- func ConfigureSetupWhatsappOTPRoute(route httproute.Route) httproute.Route
- func ConfigureSignupRoute(route httproute.Route) httproute.Route
- func ConfigureTesterRoute(route httproute.Route) httproute.Route
- func ConfigureUsePasskeyRoute(route httproute.Route) httproute.Route
- func ConfigureVerifyIdentityRoute(route httproute.Route) httproute.Route
- func ConfigureVerifyIdentitySuccessRoute(route httproute.Route) httproute.Route
- func ConfigureVerifyLoginLinkOTPRoute(route httproute.Route) httproute.Route
- func ConfigureWebsocketRoute(route httproute.Route) httproute.Route
- func ConfigureWechatAuthRoute(route httproute.Route) httproute.Route
- func ConfigureWechatCallbackRoute(route httproute.Route) httproute.Route
- func ConfigureWhatsappOTPRoute(route httproute.Route) httproute.Route
- func CreateQRCodeImage(content string, width int, height int, level qr.ErrorCorrectionLevel) (image.Image, error)
- func DeriveFlowName(flowType authflow.FlowType, flowGroup string, ...) (string, error)
- func FindLoginIDInPreviousInput(s *webapp.Session, xStep string) (string, bool)
- func FormToJSON(form url.Values) map[string]interface{}
- func FormToLoginLinkTarget(form url.Values) (target string, err error)
- func FormToOOBTarget(oobAuthenticatorType model.AuthenticatorType, form url.Values) (target string, inputType string, err error)
- func FormatRecoveryCodes(recoveryCodes []string) []string
- func GetSettingsUIImplementation(ctx context.Context) config.SettingsUIImplementation
- func GetUIImplementation(ctx context.Context) config.UIImplementation
- func GetValidationSchema(oobAuthenticatorType model.AuthenticatorType) *validation.SimpleSchema
- func GetXStepFromQuery(r *http.Request) string
- func HandleAccountRecoveryIdentificationBotProtection(identification config.AuthenticationFlowAccountRecoveryIdentification, ...) (err error)
- func HandleAuthenticationBotProtection(authentication config.AuthenticationFlowAuthentication, ...) (err error)
- func HandleCreateAuthenticatorBotProtection(authentication config.AuthenticationFlowAuthentication, ...) (err error)
- func HandleIdentificationBotProtection(identification config.AuthenticationFlowIdentification, ...) (err error)
- func IdentitiesDisplayName(identities []*identity.Info) string
- func InsertBotProtection(formData url.Values, input map[string]interface{})
- func IsBotProtectionInputValid(formData url.Values) bool
- func JSONPointerFormToMap(form url.Values) map[string]string
- func PatchGenderForm(form url.Values)
- func SetRecoveryCodeAttachmentHeaders(w http.ResponseWriter)
- func ValidateBotProtectionInput(formData url.Values) error
- func WebsocketChannelName(appID string, id string) string
- func WithSettingsUIImplementation(ctx context.Context, impl config.SettingsUIImplementation) context.Context
- func WithUIImplementation(ctx context.Context, impl config.UIImplementation) context.Context
- type AccountStatusHandler
- type AdvanceOptions
- type AnonymousUserPromotionService
- type AppStaticAssetsHandler
- type AuthEntryPointMiddleware
- type AuthFlowForgotPasswordViewModel
- type AuthenticationBeginNode
- type AuthenticationFlowWebsocketEventStore
- type AuthflowAccountStatusHandler
- type AuthflowChangePasswordHandler
- type AuthflowController
- func (c *AuthflowController) AdvanceDirectly(route string, screen *webapp.AuthflowScreenWithFlowResponse, query url.Values) *webapp.Result
- func (c *AuthflowController) AdvanceToDelayedScreen(r *http.Request, s *webapp.Session) (*webapp.Result, error)
- func (c *AuthflowController) AdvanceWithInput(ctx context.Context, r *http.Request, s *webapp.Session, ...) (result *webapp.Result, err error)
- func (c *AuthflowController) AdvanceWithInputs(ctx context.Context, r *http.Request, s *webapp.Session, ...) (*webapp.Result, error)
- func (c *AuthflowController) DelayScreen(ctx context.Context, r *http.Request, s *webapp.Session, ...) (*webapp.AuthflowScreen, error)
- func (c *AuthflowController) FeedInputWithoutNavigate(ctx context.Context, stateToken string, input interface{}) (*authflow.ServiceOutput, error)
- func (c *AuthflowController) Finish(ctx context.Context, r *http.Request, s *webapp.Session) (*webapp.Result, error)
- func (c *AuthflowController) GetScreen(ctx context.Context, s *webapp.Session, xStep string) (*webapp.AuthflowScreenWithFlowResponse, error)
- func (c *AuthflowController) HandleOAuthCallback(ctx context.Context, w http.ResponseWriter, r *http.Request, ...)
- func (c *AuthflowController) HandleResumeOfFlow(ctx context.Context, w http.ResponseWriter, r *http.Request, ...)
- func (c *AuthflowController) HandleStartOfFlow(ctx context.Context, w http.ResponseWriter, r *http.Request, ...)
- func (c *AuthflowController) HandleStep(ctx context.Context, w http.ResponseWriter, r *http.Request, ...)
- func (c *AuthflowController) HandleWithoutFlow(ctx context.Context, w http.ResponseWriter, r *http.Request, ...)
- func (c *AuthflowController) RedirectURI(r *http.Request) string
- func (c *AuthflowController) ReplaceScreen(ctx context.Context, r *http.Request, s *webapp.Session, ...) (result *webapp.Result, err error)
- func (c *AuthflowController) Restart(ctx context.Context, s *webapp.Session) (result *webapp.Result, err error)
- func (c *AuthflowController) UpdateWithInput(ctx context.Context, r *http.Request, s *webapp.Session, ...) (result *webapp.Result, err error)
- type AuthflowControllerAuthflowService
- type AuthflowControllerCookieManager
- type AuthflowControllerErrorHandler
- type AuthflowControllerHandler
- type AuthflowControllerHandlers
- type AuthflowControllerInlinePreviewHandler
- type AuthflowControllerLogger
- type AuthflowControllerOAuthClientResolver
- type AuthflowControllerOAuthSessionService
- type AuthflowControllerSAMLSessionService
- type AuthflowControllerSessionStore
- type AuthflowControllerUIInfoResolver
- type AuthflowCreatePasswordHandler
- type AuthflowCreatePasswordViewModel
- type AuthflowEnterOOBOTPHandler
- type AuthflowEnterOOBOTPViewModel
- type AuthflowEnterPasswordHandler
- type AuthflowEnterPasswordViewModel
- type AuthflowEnterRecoveryCodeHandler
- type AuthflowEnterTOTPHandler
- type AuthflowFinishFlowHandler
- type AuthflowForgotPasswordHandler
- type AuthflowForgotPasswordOTPAlternativeChannel
- type AuthflowForgotPasswordOTPHandler
- type AuthflowForgotPasswordOTPViewModel
- type AuthflowForgotPasswordSuccessHandler
- type AuthflowLoginEndpointsProvider
- type AuthflowLoginHandler
- type AuthflowLoginViewModel
- type AuthflowNavigator
- type AuthflowNoAuthenticatorHandler
- type AuthflowOAuthCallbackResponse
- type AuthflowOOBOTPLinkHandler
- type AuthflowOOBOTPLinkViewModel
- type AuthflowPromoteEndpointsProvider
- type AuthflowPromoteHandler
- type AuthflowPromptCreatePasskeyHandler
- type AuthflowPromptCreatePasskeyViewModel
- type AuthflowReauthHandler
- type AuthflowResetPasswordHandler
- func (h *AuthflowResetPasswordHandler) GetData(w http.ResponseWriter, r *http.Request, ...) (map[string]interface{}, error)
- func (h *AuthflowResetPasswordHandler) GetErrorData(w http.ResponseWriter, r *http.Request, err error) (map[string]interface{}, error)
- func (h *AuthflowResetPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
- type AuthflowResetPasswordSuccessHandler
- type AuthflowResetPasswordSuccessViewModel
- type AuthflowSetupOOBOTPHandler
- type AuthflowSetupOOBOTPViewModel
- type AuthflowSetupTOTPHandler
- type AuthflowSetupTOTPViewModel
- type AuthflowSignupEndpointsProvider
- type AuthflowSignupHandler
- type AuthflowTerminateOtherSessionsHandler
- type AuthflowUsePasskeyHandler
- type AuthflowUsePasskeyViewModel
- type AuthflowViewRecoveryCodeHandler
- type AuthflowViewRecoveryCodeViewModel
- type AuthflowWechatHandler
- type AuthflowWechatHandlerOAuthStateStore
- type AuthflowWechatViewModel
- type AuthflowWhatsappOTPHandler
- type AuthflowWhatsappOTPViewModel
- type Authorization
- type BiometricIdentity
- type CSRFErrorInstructionHandler
- type CSRFMiddleware
- type CSRFMiddlewareLogger
- type CSRFMiddlewareUIImplementationService
- type ChangePasswordViewModel
- type ConfirmTerminateOtherSessionsEndpointsProvider
- type ConfirmTerminateOtherSessionsHandler
- type ConnectWeb3AccountHandler
- type ConnectWeb3AccountViewModel
- type Controller
- func (c *Controller) BeforeHandle(fn func(ctx context.Context) error)
- func (c *Controller) DeleteSession(ctx context.Context, id string) error
- func (c *Controller) EntryPointGet(ctx context.Context, opts webapp.SessionOptions, intent interaction.Intent) (*interaction.Graph, error)
- func (c *Controller) EntryPointPost(ctx context.Context, opts webapp.SessionOptions, intent interaction.Intent, ...) (*webapp.Result, error)
- func (c *Controller) EntryPointSession(ctx context.Context, opts webapp.SessionOptions) *webapp.Session
- func (c *Controller) Get(fn func(ctx context.Context) error)
- func (c *Controller) GetSession(ctx context.Context, id string) (*webapp.Session, error)
- func (c *Controller) InteractionGet(ctx context.Context) (*interaction.Graph, error)
- func (c *Controller) InteractionGetWithSession(ctx context.Context, s *webapp.Session) (*interaction.Graph, error)
- func (c *Controller) InteractionOAuthCallback(ctx context.Context, oauthInput InputOAuthCallback, ...) (*webapp.Result, error)
- func (c *Controller) InteractionPost(ctx context.Context, inputFn func() (interface{}, error)) (*webapp.Result, error)
- func (c *Controller) InteractionSession(ctx context.Context) (*webapp.Session, error)
- func (c *Controller) PostAction(action string, fn func(ctx context.Context) error)
- func (c *Controller) RedirectURI() string
- func (c *Controller) RequireUserID(ctx context.Context) string
- func (c *Controller) ServeWithDBTx(ctx context.Context)
- func (c *Controller) ServeWithoutDBTx(ctx context.Context)
- func (c *Controller) UpdateSession(ctx context.Context, s *webapp.Session) error
- type ControllerDeps
- type ControllerFactory
- type CookieManager
- type CreateAuthenticatorBeginNode
- type CreateAuthenticatorPhoneOTPNode
- type CreatePasskeyHandler
- type CreatePasswordHandler
- type CreatePasswordViewModel
- type EnterLoginIDHandler
- type EnterLoginIDService
- type EnterLoginIDViewModel
- type EnterOOBOTPHandler
- type EnterOOBOTPNode
- type EnterOOBOTPViewModel
- type EnterPasswordHandler
- type EnterPasswordViewModel
- type EnterPasswordViewVariant
- type EnterRecoveryCodeHandler
- type EnterTOTPHandler
- type ErrorHandler
- type ErrorRenderer
- type ErrorRendererAuthflowV2Navigator
- type ErrorRendererUIImplementationService
- type ErrorService
- type FeatureDisabledHandler
- type FlashMessage
- type ForceChangePasswordHandler
- type ForceChangeSecondaryPasswordHandler
- type ForgotPasswordHandler
- type ForgotPasswordLoginIDInputType
- type ForgotPasswordSuccessHandler
- type ForgotPasswordSuccessNode
- type ForgotPasswordSuccessViewModel
- type ForgotPasswordViewModel
- type FormPrefiller
- type GeneratedStaticAssetsHandler
- type GlobalEmbeddedResourceManager
- type GlobalSessionService
- type GlobalSessionServiceFactory
- type ImplementationSwitcherHandler
- type ImplementationSwitcherMiddleware
- type ImplementationSwitcherMiddlewareUIImplementationService
- type InputAuthOOB
- type InputAuthPassword
- type InputAuthRecoveryCode
- type InputAuthTOTP
- type InputChangePassword
- type InputConfirmTerminateOtherSessions
- type InputConfirmWeb3AccountRequest
- type InputCreateAuthenticator
- type InputNewLoginID
- type InputOAuthCallback
- type InputPasskeyAssertionResponse
- type InputPasskeyAttestationResponse
- type InputPromptCreatePasskeyAttestationResponse
- type InputRemoveAuthenticator
- type InputRemoveIdentity
- type InputResendCode
- type InputResetPassword
- type InputSelectLoginLink
- type InputSelectOOB
- type InputSelectTOTP
- type InputSelectVerifyIdentityViaOOBOTP
- type InputSelectVerifyIdentityViaWhatsapp
- type InputSelectWhatsappOTP
- type InputSetupLoginLinkOTP
- type InputSetupOOB
- type InputSetupPassword
- type InputSetupRecoveryCode
- type InputSetupTOTP
- type InputSetupWhatsappOTP
- type InputTriggerLoginLink
- type InputTriggerOOB
- type InputTriggerWhatsApp
- type InputUseLoginID
- type InputUseOAuth
- type InputVerificationCode
- type InputVerifyLoginLinkOTP
- type InputVerifyWhatsappOTP
- type JSONResponseWriter
- type LoginHandler
- type LoginLinkOTPHandler
- type LoginLinkOTPNode
- type LoginLinkOTPPageQueryState
- type LoginLinkOTPViewModel
- type LoginViewModel
- type LogoutHandler
- type LogoutSessionManager
- type MeterService
- type NotFoundHandler
- type OAuthEntrypointEndpointsProvider
- type OAuthEntrypointHandler
- type OTPCodeService
- type PageService
- type PanicMiddleware
- type PanicMiddlewareEndpointsProvider
- type PanicMiddlewareLogger
- type PanicMiddlewareUIImplementationService
- type PasskeyCreationOptionsHandler
- type PasskeyCreationOptionsService
- type PasskeyRequestOptionsHandler
- type PasskeyRequestOptionsService
- type PasswordPolicy
- type PromoteHandler
- type PromoteInputLoginID
- type PromoteInputOAuth
- type PromoteViewModel
- type PromptCreatePasskeyHandler
- type Publisher
- type ReauthHandler
- type Renderer
- type ResetPasswordHandler
- type ResetPasswordService
- type ResetPasswordSuccessHandler
- type ResourceManager
- type ResponseRenderer
- func (r *ResponseRenderer) Render(w http.ResponseWriter, req *http.Request, tpl template.Resource, ...)
- func (r *ResponseRenderer) RenderHTML(w http.ResponseWriter, req *http.Request, tpl *template.HTML, data interface{})
- func (r *ResponseRenderer) RenderHTMLStatus(w http.ResponseWriter, req *http.Request, status int, tpl *template.HTML, ...)
- func (r *ResponseRenderer) RenderStatus(w http.ResponseWriter, req *http.Request, status int, tpl template.Resource, ...)
- type ResponseWriter
- type ReturnHandler
- type RootHandler
- type SAMLSLOService
- type SAMLSLOSessionService
- type SSOCallbackHandler
- type SSOCallbackHandlerOAuthStateStore
- type SelectAccountAuthenticationInfoService
- type SelectAccountHandler
- type SelectAccountIdentityService
- type SelectAccountUIInfoResolver
- type SelectAccountUserFacade
- type SelectAccountUserService
- type SelectAccountViewModel
- type SessionStore
- type SettingsAuthenticatorService
- type SettingsAuthorizationService
- type SettingsBiometricHandler
- type SettingsBiometricViewModel
- type SettingsChangePasswordHandler
- type SettingsChangeSecondaryPasswordHandler
- type SettingsDeleteAccountAuthenticationInfoService
- type SettingsDeleteAccountHandler
- type SettingsDeleteAccountOAuthSessionService
- type SettingsDeleteAccountSessionStore
- type SettingsDeleteAccountSuccessAuthenticationInfoService
- type SettingsDeleteAccountSuccessHandler
- type SettingsDeleteAccountSuccessUIInfoResolver
- type SettingsDeleteAccountUserService
- type SettingsDeleteAccountViewModel
- type SettingsEndpointsProvider
- type SettingsHandler
- type SettingsIdentityHandler
- type SettingsIdentityService
- type SettingsIdentityViewModel
- type SettingsImplementationSwitcherHandler
- type SettingsImplementationSwitcherMiddleware
- type SettingsImplementationSwitcherMiddlewareUIImplementationService
- type SettingsMFAHandler
- type SettingsMFAService
- type SettingsOAuthStateStore
- type SettingsOOBOTPHandler
- type SettingsOOBOTPViewModel
- type SettingsPasskeyHandler
- type SettingsPasskeyViewModel
- type SettingsProfileEditCustomAttrsService
- type SettingsProfileEditHandler
- type SettingsProfileEditStdAttrsService
- type SettingsProfileEditUserService
- type SettingsProfileHandler
- type SettingsRecoveryCodeHandler
- type SettingsRecoveryCodeViewModel
- type SettingsSessionListingService
- type SettingsSessionManager
- type SettingsSessionsHandler
- type SettingsSessionsViewModel
- type SettingsTOTPHandler
- type SettingsTOTPViewModel
- type SettingsVerificationService
- type SetupLoginLinkOTPHandler
- type SetupLoginLinkOTPNode
- type SetupOOBOTPHandler
- type SetupOOBOTPNode
- type SetupOOBOTPViewModel
- type SetupRecoveryCodeHandler
- func (h *SetupRecoveryCodeHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
- func (h *SetupRecoveryCodeHandler) MakeViewModel(graph *interaction.Graph) SetupRecoveryCodeViewModel
- func (h *SetupRecoveryCodeHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
- type SetupRecoveryCodeNode
- type SetupRecoveryCodeViewModel
- type SetupTOTPEndpointsProvider
- type SetupTOTPHandler
- func (h *SetupTOTPHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, ...) (map[string]interface{}, error)
- func (h *SetupTOTPHandler) MakeViewModel(session *webapp.Session, graph *interaction.Graph) (*SetupTOTPViewModel, error)
- func (h *SetupTOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
- type SetupTOTPNode
- type SetupTOTPViewModel
- type SetupWhatsappOTPHandler
- type SignupHandler
- type SignupViewModel
- type TesterAppSessionTokenService
- type TesterAuthTokensIssuer
- type TesterCookieManager
- type TesterHandler
- type TesterOfflineGrantService
- type TesterService
- type TesterState
- type TesterUserInfoProvider
- type TesterViewModel
- type TutorialCookie
- type UsePasskeyHandler
- type UserProfile
- type VerifyIdentityHandler
- func (h *VerifyIdentityHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter, action string, ...) (map[string]interface{}, error)
- func (h *VerifyIdentityHandler) GetErrorData(r *http.Request, rw http.ResponseWriter, err error) (map[string]interface{}, error)
- func (h *VerifyIdentityHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
- type VerifyIdentityNode
- type VerifyIdentitySuccessHandler
- type VerifyIdentityViewModel
- type VerifyLoginLinkOTPHandler
- type VerifyLoginLinkOTPViewModel
- type WeChatAuthViewModel
- type WebappOAuthClientResolver
- type WebsocketHandler
- type WebsocketMessage
- type WebsocketMessageKind
- type WechatAuthHandler
- type WechatCallbackHandler
- type WechatCallbackHandlerOAuthStateStore
- type WhatsappOTPAuthnNode
- type WhatsappOTPHandler
- type WhatsappOTPNode
- type WhatsappOTPViewModel
- type WorkflowWebsocketEventStore
Constants ¶
const LoginLinkOTPPageQueryStateKey = "state"
const (
VerifyIdentityActionSubmit = "submit"
)
const (
// WebsocketMessageKindRefresh means when the client receives this message, they should refresh the page.
WebsocketMessageKindRefresh = "refresh"
)
const WechatActionCallback = "callback"
Variables ¶
var AddOrUpdateLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_login_id_input_type": { "type": "string" },
"q_login_id_key": { "type": "string" },
"q_login_id_type": { "type": "string" },
"q_login_id": { "type": "string" }
},
"required": ["q_login_id_input_type", "q_login_id_key", "q_login_id_type", "q_login_id"]
}
`)
var AuthflowBotProtectionSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_bot_protection_provider_type": { "type": "string" },
"x_bot_protection_provider_response": { "type": "string" }
},
"required": ["x_bot_protection_provider_type", "x_bot_protection_provider_response"]
}
`)
var AuthflowChangePasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_new_password": { "type": "string" }
},
"required": ["x_new_password"]
}
`)
var AuthflowCreatePasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_password": { "type": "string" },
"x_confirm_password": { "type": "string" }
},
"required": ["x_password", "x_confirm_password"]
}
`)
var AuthflowEnterOOBOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_code": {
"type": "string",
"format": "x_oob_otp_code"
}
},
"required": ["x_code"]
}
`)
var AuthflowEnterPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_password": { "type": "string" }
},
"required": ["x_password"]
}
`)
var AuthflowEnterRecoveryCodeSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_recovery_code": {
"type": "string",
"format": "x_recovery_code"
}
},
"required": ["x_recovery_code"]
}
`)
var AuthflowEnterTOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_code": { "type": "string" }
},
"required": ["x_code"]
}
`)
var AuthflowForgotPasswordOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_code": {
"type": "string",
"format": "x_oob_otp_code"
}
},
"required": ["x_code"]
}
`)
var AuthflowForgotPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_login_id": { "type": "string" },
"x_login_id_type": { "type": "string", "enum": ["phone", "email"] }
},
"required": ["x_login_id", "x_login_id_type"]
}
`)
var AuthflowLoginLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_login_id": { "type": "string" },
"x_login_id_input_type": { "type": "string" }
},
"required": ["x_login_id", "x_login_id_input_type"]
}
`)
var AuthflowPromoteLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_login_id_key": { "type": "string" },
"q_login_id": { "type": "string" }
},
"required": ["q_login_id_key", "q_login_id"]
}
`)
var AuthflowResetPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_password": { "type": "string" },
"x_confirm_password": { "type": "string" }
},
"required": ["x_password", "x_confirm_password"]
}
`)
var AuthflowSetupOOBOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_target": { "type": "string" }
},
"required": ["x_target"]
}
`)
var AuthflowSetupTOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_code": { "type": "string" }
},
"required": ["x_code"]
}
`)
var AuthflowSignupLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_login_id_key": { "type": "string" },
"q_login_id": { "type": "string" }
},
"required": ["q_login_id_key", "q_login_id"]
}
`)
var AuthflowWhatsappOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_code": {
"type": "string",
"format": "x_oob_otp_code"
}
},
"required": ["x_code"]
}
`)
var Components = web.ComponentsHTML
var ConfirmTerminateOtherSessionsSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_response": { "type": "string" }
},
"required": ["x_response"]
}
`)
var CreatePasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_password": { "type": "string" },
"x_confirm_password": { "type": "string" },
"x_stage": { "type": "string" }
},
"required": ["x_password", "x_confirm_password", "x_stage"]
}
`)
var DependencySet = wire.NewSet( wire.Struct(new(AuthEntryPointMiddleware), "*"), wire.Struct(new(ImplementationSwitcherMiddleware), "*"), wire.Struct(new(SettingsImplementationSwitcherMiddleware), "*"), wire.Struct(new(ResponseRenderer), "*"), wire.Struct(new(FormPrefiller), "*"), wire.Bind(new(Renderer), new(*ResponseRenderer)), wire.Struct(new(ErrorRenderer), "*"), wire.Struct(new(ControllerDeps), "*"), wire.Struct(new(ControllerFactory), "*"), wire.Struct(new(AuthflowController), "*"), NewAuthflowControllerLogger, NewPublisher, wire.Struct(new(GlobalSessionServiceFactory), "*"), NewPanicMiddlewareLogger, wire.Struct(new(PanicMiddleware), "*"), NewCSRFMiddlewareLogger, wire.Struct(new(CSRFMiddleware), "*"), wire.Struct(new(CSRFErrorInstructionHandler), "*"), wire.Struct(new(AppStaticAssetsHandler), "*"), wire.Struct(new(RootHandler), "*"), wire.Struct(new(OAuthEntrypointHandler), "*"), wire.Struct(new(LoginHandler), "*"), wire.Struct(new(SignupHandler), "*"), wire.Struct(new(PromoteHandler), "*"), wire.Struct(new(ReauthHandler), "*"), wire.Struct(new(SelectAccountHandler), "*"), wire.Struct(new(SSOCallbackHandler), "*"), wire.Struct(new(EnterLoginIDHandler), "*"), wire.Struct(new(EnterPasswordHandler), "*"), wire.Struct(new(ConfirmTerminateOtherSessionsHandler), "*"), wire.Struct(new(UsePasskeyHandler), "*"), wire.Struct(new(CreatePasswordHandler), "*"), wire.Struct(new(CreatePasskeyHandler), "*"), wire.Struct(new(PromptCreatePasskeyHandler), "*"), wire.Struct(new(SetupTOTPHandler), "*"), wire.Struct(new(EnterTOTPHandler), "*"), wire.Struct(new(SetupOOBOTPHandler), "*"), wire.Struct(new(EnterOOBOTPHandler), "*"), wire.Struct(new(SetupWhatsappOTPHandler), "*"), wire.Struct(new(WhatsappOTPHandler), "*"), wire.Struct(new(SetupLoginLinkOTPHandler), "*"), wire.Struct(new(LoginLinkOTPHandler), "*"), wire.Struct(new(VerifyLoginLinkOTPHandler), "*"), wire.Struct(new(EnterRecoveryCodeHandler), "*"), wire.Struct(new(SetupRecoveryCodeHandler), "*"), wire.Struct(new(VerifyIdentityHandler), "*"), wire.Struct(new(VerifyIdentitySuccessHandler), "*"), wire.Struct(new(ForgotPasswordHandler), "*"), wire.Struct(new(ForgotPasswordSuccessHandler), "*"), wire.Struct(new(ResetPasswordHandler), "*"), wire.Struct(new(ResetPasswordSuccessHandler), "*"), wire.Struct(new(SettingsHandler), "*"), wire.Struct(new(TesterHandler), "*"), wire.Struct(new(SettingsProfileHandler), "*"), wire.Struct(new(SettingsProfileEditHandler), "*"), wire.Struct(new(SettingsIdentityHandler), "*"), wire.Struct(new(SettingsBiometricHandler), "*"), wire.Struct(new(SettingsMFAHandler), "*"), wire.Struct(new(SettingsTOTPHandler), "*"), wire.Struct(new(SettingsOOBOTPHandler), "*"), wire.Struct(new(SettingsRecoveryCodeHandler), "*"), wire.Struct(new(SettingsSessionsHandler), "*"), wire.Struct(new(ForceChangePasswordHandler), "*"), wire.Struct(new(SettingsChangePasswordHandler), "*"), wire.Struct(new(ForceChangeSecondaryPasswordHandler), "*"), wire.Struct(new(SettingsChangeSecondaryPasswordHandler), "*"), wire.Struct(new(SettingsDeleteAccountHandler), "*"), wire.Struct(new(SettingsDeleteAccountSuccessHandler), "*"), wire.Struct(new(SettingsPasskeyHandler), "*"), wire.Struct(new(AccountStatusHandler), "*"), wire.Struct(new(LogoutHandler), "*"), wire.Struct(new(ReturnHandler), "*"), wire.Struct(new(ErrorHandler), "*"), wire.Struct(new(NotFoundHandler), "*"), wire.Struct(new(WebsocketHandler), "*"), wire.Struct(new(WechatAuthHandler), "*"), wire.Struct(new(WechatCallbackHandler), "*"), wire.Struct(new(PasskeyCreationOptionsHandler), "*"), wire.Struct(new(PasskeyRequestOptionsHandler), "*"), wire.Struct(new(ConnectWeb3AccountHandler), "*"), wire.Struct(new(FeatureDisabledHandler), "*"), wire.Struct(new(AuthflowLoginHandler), "*"), wire.Struct(new(AuthflowSignupHandler), "*"), wire.Struct(new(AuthflowPromoteHandler), "*"), wire.Struct(new(AuthflowReauthHandler), "*"), wire.Struct(new(AuthflowEnterPasswordHandler), "*"), wire.Struct(new(AuthflowEnterOOBOTPHandler), "*"), wire.Struct(new(AuthflowCreatePasswordHandler), "*"), wire.Struct(new(AuthflowEnterTOTPHandler), "*"), wire.Struct(new(AuthflowSetupTOTPHandler), "*"), wire.Struct(new(AuthflowViewRecoveryCodeHandler), "*"), wire.Struct(new(AuthflowWhatsappOTPHandler), "*"), wire.Struct(new(AuthflowOOBOTPLinkHandler), "*"), wire.Struct(new(AuthflowChangePasswordHandler), "*"), wire.Struct(new(AuthflowUsePasskeyHandler), "*"), wire.Struct(new(AuthflowPromptCreatePasskeyHandler), "*"), wire.Struct(new(AuthflowEnterRecoveryCodeHandler), "*"), wire.Struct(new(AuthflowSetupOOBOTPHandler), "*"), wire.Struct(new(AuthflowTerminateOtherSessionsHandler), "*"), wire.Struct(new(AuthflowWechatHandler), "*"), wire.Struct(new(AuthflowForgotPasswordHandler), "*"), wire.Struct(new(AuthflowForgotPasswordOTPHandler), "*"), wire.Struct(new(AuthflowForgotPasswordSuccessHandler), "*"), wire.Struct(new(AuthflowResetPasswordHandler), "*"), wire.Struct(new(AuthflowResetPasswordSuccessHandler), "*"), wire.Struct(new(AuthflowAccountStatusHandler), "*"), wire.Struct(new(AuthflowNoAuthenticatorHandler), "*"), wire.Struct(new(AuthflowFinishFlowHandler), "*"), wire.Struct(new(ResponseWriter), "*"), )
var DirectAccessDisableComponents = web.DirectAccessDisableComponentsHTML
var EnterOOBOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_oob_otp_code": {
"type": "string",
"format": "x_oob_otp_code"
}
},
"required": ["x_oob_otp_code"]
}
`)
var EnterPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_password": { "type": "string" },
"x_stage": { "type": "string" }
},
"required": ["x_password", "x_stage"]
}
`)
var EnterRecoveryCodeSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_recovery_code": {
"type": "string",
"format": "x_recovery_code"
}
},
"required": ["x_recovery_code"]
}
`)
var EnterTOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_totp_code": {
"type": "string",
"format": "x_totp_code"
}
},
"required": ["x_totp_code"]
}
`)
var ErrNoFallbackAvailable = fmt.Errorf("webapp: no fallback is available")
var ForceChangePasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_new_password": { "type": "string" },
"x_confirm_password": { "type": "string" }
},
"required": ["x_new_password", "x_confirm_password"]
}
`)
var ForceChangeSecondaryPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_new_password": { "type": "string" },
"x_confirm_password": { "type": "string" }
},
"required": ["x_new_password", "x_confirm_password"]
}
`)
var ForgotPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_login_id_input_type": { "type": "string", "enum": ["email", "phone", "text"] },
"q_login_id": { "type": "string" }
},
"required": ["q_login_id_input_type", "q_login_id"]
}
`)
var LoginWithLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_login_id_input_type": { "type": "string", "enum": ["email", "phone", "text"] },
"q_login_id": { "type": "string" }
},
"required": ["q_login_id_input_type", "q_login_id"]
}
`)
var PasskeyAutofillSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_assertion_response": { "type": "string" }
},
"required": ["x_assertion_response"]
}
`)
var PromoteWithLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_login_id_key": { "type": "string" },
"q_login_id_type": { "type": "string" },
"q_login_id_input_type": { "type": "string", "enum": ["email", "phone", "text"] },
"q_login_id": { "type": "string" }
},
"required": ["q_login_id_key", "q_login_id_type", "q_login_id_input_type", "q_login_id"]
}
`)
var RemoveLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_identity_id": { "type": "string" }
},
"required": ["q_identity_id"]
}
`)
var ResetPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"code": { "type": "string" },
"x_password": { "type": "string" },
"x_confirm_password": { "type": "string" }
},
"required": ["code", "x_password", "x_confirm_password"]
}
`)
var SettingsChangePasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_old_password": { "type": "string" },
"x_new_password": { "type": "string" },
"x_confirm_password": { "type": "string" }
},
"required": ["x_old_password", "x_new_password", "x_confirm_password"]
}
`)
var SettingsChangeSecondaryPasswordSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_old_password": { "type": "string" },
"x_new_password": { "type": "string" },
"x_confirm_password": { "type": "string" }
},
"required": ["x_old_password", "x_new_password", "x_confirm_password"]
}
`)
var SettingsComponents = web.SettingsComponentsHTML
var SetupLoginLinkOTPEmailSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_email": { "type": "string" }
},
"required": ["x_email"]
}
`)
var SetupOOBOTPEmailSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_email": { "type": "string" }
},
"required": ["x_email"]
}
`)
var SetupOOBOTPSMSSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_e164": { "type": "string" }
},
"required": ["x_e164"]
}
`)
var SetupTOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_totp_code": {
"type": "string",
"format": "x_totp_code"
}
},
"required": ["x_totp_code"]
}
`)
var SetupWhatsappOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_e164": { "type": "string" }
},
"required": ["x_e164"]
}
`)
var SignupWithLoginIDSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"q_login_id_key": { "type": "string" },
"q_login_id_type": { "type": "string" },
"q_login_id_input_type": { "type": "string", "enum": ["email", "phone", "text"] },
"q_login_id": { "type": "string" }
},
"required": ["q_login_id_key", "q_login_id_type", "q_login_id_input_type", "q_login_id"]
}
`)
var TemplateCSRFErrorHTML = template.RegisterHTML( "web/authflowv2/csrf_error_page.html", Components..., )
var TemplateCSRFErrorInstructionHTML = template.RegisterHTML( "web/authflowv2/csrf_error_instruction.html", Components..., )
var TemplateDirectAccessDisable = template.RegisterHTML( "web/authflowv2/direct_access_disabled.html", DirectAccessDisableComponents..., )
var TemplateTurboErrorHTML = template.RegisterHTML( "web/turbo_error.html", Components..., )
var TemplateV2WebFatalErrorHTML = template.RegisterHTML( "web/authflowv2/fatal_error.html", Components..., )
NOTE: To resolve import cycle in panic_middleware.go, put it here as workaround
var TemplateWebAccountStatusHTML = template.RegisterHTML( "web/account_status.html", Components..., )
var TemplateWebAuthflowAccountStatusHTML = template.RegisterHTML( "web/authflow_account_status.html", Components..., )
var TemplateWebAuthflowChangePasswordHTML = template.RegisterHTML( "web/authflow_change_password.html", Components..., )
var TemplateWebAuthflowCreatePasswordHTML = template.RegisterHTML( "web/authflow_create_password.html", Components..., )
var TemplateWebAuthflowEnterOOBOTPHTML = template.RegisterHTML( "web/authflow_enter_oob_otp.html", Components..., )
var TemplateWebAuthflowEnterPasswordHTML = template.RegisterHTML( "web/authflow_enter_password.html", Components..., )
var TemplateWebAuthflowEnterRecoveryCodeHTML = template.RegisterHTML( "web/authflow_enter_recovery_code.html", Components..., )
var TemplateWebAuthflowEnterTOTPHTML = template.RegisterHTML( "web/authflow_enter_totp.html", Components..., )
var TemplateWebAuthflowForgotPasswordGenericOTPHTML = template.RegisterHTML( "web/authflow_forgot_password_generic_otp.html", Components..., )
var TemplateWebAuthflowForgotPasswordHTML = template.RegisterHTML( "web/authflow_forgot_password.html", Components..., )
var TemplateWebAuthflowForgotPasswordSuccessHTML = template.RegisterHTML( "web/authflow_forgot_password_success.html", Components..., )
var TemplateWebAuthflowForgotPasswordWhatsappOTPHTML = template.RegisterHTML( "web/authflow_forgot_password_whatsapp_otp.html", Components..., )
var TemplateWebAuthflowLoginHTML = template.RegisterHTML( "web/authflow_login.html", Components..., )
var TemplateWebAuthflowNoAuthenticatorHTML = template.RegisterHTML( "web/authflow_no_authenticator.html", Components..., )
var TemplateWebAuthflowOOBOTPLinkHTML = template.RegisterHTML( "web/authflow_oob_otp_link.html", Components..., )
var TemplateWebAuthflowPromoteHTML = template.RegisterHTML( "web/authflow_promote.html", Components..., )
var TemplateWebAuthflowPromptCreatePasskeyHTML = template.RegisterHTML( "web/authflow_prompt_create_passkey.html", Components..., )
var TemplateWebAuthflowResetPasswordHTML = template.RegisterHTML( "web/authflow_reset_password.html", Components..., )
var TemplateWebAuthflowResetPasswordSuccessHTML = template.RegisterHTML( "web/authflow_reset_password_success.html", Components..., )
var TemplateWebAuthflowSetupOOBOTPHTML = template.RegisterHTML( "web/authflow_setup_oob_otp.html", Components..., )
var TemplateWebAuthflowSetupTOTPHTML = template.RegisterHTML( "web/authflow_setup_totp.html", Components..., )
var TemplateWebAuthflowSignupHTML = template.RegisterHTML( "web/authflow_signup.html", Components..., )
var TemplateWebAuthflowTerminateOtherSessionsHTML = template.RegisterHTML( "web/authflow_terminate_other_sessions.html", Components..., )
var TemplateWebAuthflowUsePasskeyHTML = template.RegisterHTML( "web/authflow_use_passkey.html", Components..., )
var TemplateWebAuthflowViewRecoveryCodeHTML = template.RegisterHTML( "web/authflow_view_recovery_code.html", Components..., )
var TemplateWebAuthflowWechatHTML = template.RegisterHTML( "web/authflow_wechat.html", Components..., )
var TemplateWebAuthflowWhatsappOTPHTML = template.RegisterHTML( "web/authflow_whatsapp_otp.html", Components..., )
var TemplateWebChangePasswordHTML = template.RegisterHTML( "web/change_password.html", Components..., )
var TemplateWebChangeSecondaryPasswordHTML = template.RegisterHTML( "web/change_secondary_password.html", Components..., )
var TemplateWebConfirmTerminateOtherSessionsHTML = template.RegisterHTML( "web/confirm_terminate_other_sessions.html", Components..., )
var TemplateWebConnectWeb3AccountHTML = template.RegisterHTML( "web/connect_web3_account.html", Components..., )
var TemplateWebConsentHTML = template.RegisterHTML( "web/consent.html", Components..., )
var TemplateWebCreatePasskeyHTML = template.RegisterHTML( "web/create_passkey.html", Components..., )
var TemplateWebCreatePasswordHTML = template.RegisterHTML( "web/create_password.html", Components..., )
var TemplateWebDownloadRecoveryCodeTXT = template.RegisterPlainText(
"web/download_recovery_code.txt",
plainTextComponents...,
)
var TemplateWebEnterLoginIDHTML = template.RegisterHTML( "web/enter_login_id.html", Components..., )
var TemplateWebEnterOOBOTPHTML = template.RegisterHTML( "web/enter_oob_otp.html", Components..., )
var TemplateWebEnterPasswordHTML = template.RegisterHTML( "web/enter_password.html", Components..., )
var TemplateWebEnterRecoveryCodeHTML = template.RegisterHTML( "web/enter_recovery_code.html", Components..., )
var TemplateWebEnterTOTPHTML = template.RegisterHTML( "web/enter_totp.html", Components..., )
var TemplateWebFatalErrorHTML = template.RegisterHTML( "web/fatal_error.html", Components..., )
var TemplateWebFeatureDisabledHTML = template.RegisterHTML( "web/error_feature_disabled.html", Components..., )
var TemplateWebForgotPasswordHTML = template.RegisterHTML( "web/forgot_password.html", Components..., )
var TemplateWebForgotPasswordSuccessHTML = template.RegisterHTML( "web/forgot_password_success.html", Components..., )
var TemplateWebLoginHTML = template.RegisterHTML( "web/login.html", Components..., )
var TemplateWebLoginLinkHTML = template.RegisterHTML( "web/login_link_otp.html", Components..., )
var TemplateWebLogoutHTML = template.RegisterHTML( "web/logout.html", Components..., )
var TemplateWebNotFoundHTML = template.RegisterHTML( "web/not_found.html", Components..., )
var TemplateWebPromoteHTML = template.RegisterHTML( "web/promote.html", Components..., )
var TemplateWebPromptCreatePasskeyHTML = template.RegisterHTML( "web/prompt_create_passkey.html", Components..., )
var TemplateWebResetPasswordHTML = template.RegisterHTML( "web/reset_password.html", Components..., )
var TemplateWebResetPasswordSuccessHTML = template.RegisterHTML( "web/reset_password_success.html", Components..., )
var TemplateWebReturnHTML = template.RegisterHTML( "web/return.html", Components..., )
var TemplateWebSelectAccountHTML = template.RegisterHTML( "web/select_account.html", Components..., )
var TemplateWebSettingsAnonymousUserHTML = template.RegisterHTML( "web/settings_anonymous_user.html", Components..., )
var TemplateWebSettingsBiometricHTML = template.RegisterHTML( "web/settings_biometric.html", Components..., )
var TemplateWebSettingsDeleteAccountHTML = template.RegisterHTML( "web/settings_delete_account.html", Components..., )
var TemplateWebSettingsDeleteAccountSuccessHTML = template.RegisterHTML( "web/settings_delete_account_success.html", Components..., )
var TemplateWebSettingsHTML = template.RegisterHTML( "web/settings.html", Components..., )
var TemplateWebSettingsIdentityHTML = template.RegisterHTML( "web/settings_identity.html", Components..., )
var TemplateWebSettingsMFAHTML = template.RegisterHTML( "web/settings_mfa.html", Components..., )
var TemplateWebSettingsOOBOTPHTML = template.RegisterHTML( "web/settings_oob_otp.html", Components..., )
var TemplateWebSettingsPasskeyHTML = template.RegisterHTML( "web/settings_passkey.html", Components..., )
var TemplateWebSettingsProfileEditHTML = template.RegisterHTML( "web/settings_profile_edit.html", Components..., )
var TemplateWebSettingsProfileHTML = template.RegisterHTML( "web/settings_profile.html", Components..., )
var TemplateWebSettingsRecoveryCodeHTML = template.RegisterHTML( "web/settings_recovery_code.html", Components..., )
var TemplateWebSettingsSessionsHTML = template.RegisterHTML( "web/settings_sessions.html", Components..., )
var TemplateWebSettingsTOTPHTML = template.RegisterHTML( "web/settings_totp.html", Components..., )
var TemplateWebSetupLoginLinkOTPHTML = template.RegisterHTML( "web/setup_login_link_otp.html", Components..., )
var TemplateWebSetupOOBOTPHTML = template.RegisterHTML( "web/setup_oob_otp.html", Components..., )
var TemplateWebSetupRecoveryCodeHTML = template.RegisterHTML( "web/setup_recovery_code.html", Components..., )
var TemplateWebSetupTOTPHTML = template.RegisterHTML( "web/setup_totp.html", Components..., )
var TemplateWebSetupWhatsappOTPHTML = template.RegisterHTML( "web/setup_whatsapp_otp.html", Components..., )
var TemplateWebSignupHTML = template.RegisterHTML( "web/signup.html", Components..., )
var TemplateWebTesterHTML = template.RegisterHTML( "web/tester.html", Components..., )
var TemplateWebUsePasskeyHTML = template.RegisterHTML( "web/use_passkey.html", Components..., )
var TemplateWebVerifyIdentityHTML = template.RegisterHTML( "web/verify_identity.html", Components..., )
var TemplateWebVerifyIdentitySuccessHTML = template.RegisterHTML( "web/verify_identity_success.html", Components..., )
var TemplateWebVerifyLoginLinkOTPHTML = template.RegisterHTML( "web/verify_login_link.html", Components..., )
var TemplateWebWechatAuthHandlerHTML = template.RegisterHTML( "web/wechat_auth.html", Components..., )
var TemplateWebWhatsappHTML = template.RegisterHTML( "web/whatsapp_otp.html", Components..., )
var TesterScopes = []string{ "openid", oauth.OfflineAccess, oauth.FullAccessScope, }
var VerifyIdentitySchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_verification_code": {
"type": "string",
"format": "x_verification_code"
}
},
"required": ["x_verification_code"]
}
`)
var VerifyLoginLinkOTPSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_oob_otp_code": { "type": "string" }
},
"required": ["x_oob_otp_code"]
}
`)
var Web3AccountConfirmationSchema = validation.NewSimpleSchema(`
{
"type": "object",
"properties": {
"x_siwe_message": { "type": "string" },
"x_siwe_signature": { "type": "string" }
},
"required": ["x_siwe_message", "x_siwe_signature"]
}
`)
Functions ¶
func CreateQRCodeImage ¶
func DeriveFlowName ¶
func DeriveFlowName(flowType authflow.FlowType, flowGroup string, clientAllowlist *config.AuthenticationFlowAllowlist, definedGroups []*config.UIAuthenticationFlowGroup) (string, error)
func FormToJSON ¶
func FormToOOBTarget ¶
func FormatRecoveryCodes ¶
func GetSettingsUIImplementation ¶
func GetSettingsUIImplementation(ctx context.Context) config.SettingsUIImplementation
func GetUIImplementation ¶
func GetUIImplementation(ctx context.Context) config.UIImplementation
func GetValidationSchema ¶
func GetValidationSchema(oobAuthenticatorType model.AuthenticatorType) *validation.SimpleSchema
func GetXStepFromQuery ¶
func HandleAccountRecoveryIdentificationBotProtection ¶
func HandleAccountRecoveryIdentificationBotProtection(identification config.AuthenticationFlowAccountRecoveryIdentification, flowResp *authflow.FlowResponse, formData url.Values, input map[string]interface{}) (err error)
As IntentAccountRecoveryFlowStepIdentify has it's own IdentificationData type to narrow down Identification as {"email", "phone"}, we imitate the same logic in HandleIdentificationBotProtection here for account recovery
func HandleAuthenticationBotProtection ¶
func HandleAuthenticationBotProtection(authentication config.AuthenticationFlowAuthentication, flowResp *authflow.FlowResponse, formData url.Values, input map[string]interface{}) (err error)
func HandleCreateAuthenticatorBotProtection ¶
func HandleCreateAuthenticatorBotProtection(authentication config.AuthenticationFlowAuthentication, flowResp *authflow.FlowResponse, formData url.Values, input map[string]interface{}) (err error)
func HandleIdentificationBotProtection ¶
func HandleIdentificationBotProtection(identification config.AuthenticationFlowIdentification, flowResp *authflow.FlowResponse, formData url.Values, input map[string]interface{}) (err error)
func IdentitiesDisplayName ¶
func InsertBotProtection ¶
func PatchGenderForm ¶
func SetRecoveryCodeAttachmentHeaders ¶
func SetRecoveryCodeAttachmentHeaders(w http.ResponseWriter)
func WebsocketChannelName ¶
func WithUIImplementation ¶
Types ¶
type AccountStatusHandler ¶
type AccountStatusHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AccountStatusHandler) GetData ¶
func (h *AccountStatusHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*AccountStatusHandler) ServeHTTP ¶
func (h *AccountStatusHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AdvanceOptions ¶
type AdvanceOptions struct { // Treat the next screen as the extend of the taken branch // Allowing alternative branches to be selected based on the current state InheritTakenBranchState bool }
type AnonymousUserPromotionService ¶
type AnonymousUserPromotionService interface {
ConvertLoginHintToInput(loginHintString string) (*webapp.AnonymousTokenInput, error)
}
type AppStaticAssetsHandler ¶
type AppStaticAssetsHandler struct {
Resources ResourceManager
}
func (*AppStaticAssetsHandler) Open ¶
func (h *AppStaticAssetsHandler) Open(name string) (http.File, error)
func (*AppStaticAssetsHandler) ServeHTTP ¶
func (h *AppStaticAssetsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthEntryPointMiddleware ¶
type AuthEntryPointMiddleware struct { BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer AppHostSuffixes config.AppHostSuffixes TrustProxy config.TrustProxy OAuthConfig *config.OAuthConfig UIConfig *config.UIConfig OAuthClientResolver WebappOAuthClientResolver }
type AuthFlowForgotPasswordViewModel ¶
type AuthFlowForgotPasswordViewModel struct { LoginIDInputType ForgotPasswordLoginIDInputType LoginID string PhoneLoginIDEnabled bool EmailLoginIDEnabled bool LoginIDDisabled bool OTPForm string }
func NewAuthFlowForgotPasswordViewModel ¶
func NewAuthFlowForgotPasswordViewModel( r *http.Request, initialScreen *webapp.AuthflowScreenWithFlowResponse, selectDestinationScreen *webapp.AuthflowScreenWithFlowResponse) AuthFlowForgotPasswordViewModel
type AuthenticationBeginNode ¶
type AuthenticationBeginNode interface { GetAuthenticationEdges() ([]interaction.Edge, error) GetAuthenticationStage() authn.AuthenticationStage }
type AuthflowAccountStatusHandler ¶
type AuthflowAccountStatusHandler struct { BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowAccountStatusHandler) ServeHTTP ¶
func (h *AuthflowAccountStatusHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowChangePasswordHandler ¶
type AuthflowChangePasswordHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler ChangePasswordViewModel *viewmodels.ChangePasswordViewModeler Renderer Renderer }
func (*AuthflowChangePasswordHandler) GetData ¶
func (h *AuthflowChangePasswordHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowChangePasswordHandler) ServeHTTP ¶
func (h *AuthflowChangePasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowController ¶
type AuthflowController struct { Logger AuthflowControllerLogger TesterEndpointsProvider tester.EndpointsProvider TrustProxy config.TrustProxy Clock clock.Clock Cookies AuthflowControllerCookieManager Sessions AuthflowControllerSessionStore SessionCookie webapp.SessionCookieDef SignedUpCookie webapp.SignedUpCookieDef Authflows AuthflowControllerAuthflowService OAuthSessions AuthflowControllerOAuthSessionService SAMLSessions AuthflowControllerSAMLSessionService UIInfoResolver AuthflowControllerUIInfoResolver UIConfig *config.UIConfig OAuthClientResolver AuthflowControllerOAuthClientResolver ErrorRenderer *ErrorRenderer }
func (*AuthflowController) AdvanceDirectly ¶
func (c *AuthflowController) AdvanceDirectly( route string, screen *webapp.AuthflowScreenWithFlowResponse, query url.Values, ) *webapp.Result
func (*AuthflowController) AdvanceToDelayedScreen ¶
func (*AuthflowController) AdvanceWithInput ¶
func (c *AuthflowController) AdvanceWithInput( ctx context.Context, r *http.Request, s *webapp.Session, screen0 *webapp.AuthflowScreenWithFlowResponse, input map[string]interface{}, options *AdvanceOptions, ) (result *webapp.Result, err error)
AdvanceWithInput is same as AdvanceWithInputs but only allow one input.
func (*AuthflowController) AdvanceWithInputs ¶
func (c *AuthflowController) AdvanceWithInputs( ctx context.Context, r *http.Request, s *webapp.Session, screen0 *webapp.AuthflowScreenWithFlowResponse, inputs []map[string]interface{}, options *AdvanceOptions, ) (*webapp.Result, error)
AdvanceWithInputs is for feeding multiple inputs that would advance the flow.
func (*AuthflowController) DelayScreen ¶
func (c *AuthflowController) DelayScreen(ctx context.Context, r *http.Request, s *webapp.Session, sourceScreen *webapp.AuthflowScreen, targetResult *webapp.Result, ) (*webapp.AuthflowScreen, error)
func (*AuthflowController) FeedInputWithoutNavigate ¶
func (c *AuthflowController) FeedInputWithoutNavigate(ctx context.Context, stateToken string, input interface{}) (*authflow.ServiceOutput, error)
func (*AuthflowController) GetScreen ¶
func (c *AuthflowController) GetScreen(ctx context.Context, s *webapp.Session, xStep string) (*webapp.AuthflowScreenWithFlowResponse, error)
func (*AuthflowController) HandleOAuthCallback ¶
func (c *AuthflowController) HandleOAuthCallback(ctx context.Context, w http.ResponseWriter, r *http.Request, callbackResponse AuthflowOAuthCallbackResponse)
func (*AuthflowController) HandleResumeOfFlow ¶
func (c *AuthflowController) HandleResumeOfFlow( ctx context.Context, w http.ResponseWriter, r *http.Request, opts webapp.SessionOptions, handlers *AuthflowControllerHandlers, input map[string]interface{}, errorHandler *AuthflowControllerErrorHandler, )
func (*AuthflowController) HandleStartOfFlow ¶
func (c *AuthflowController) HandleStartOfFlow( ctx context.Context, w http.ResponseWriter, r *http.Request, opts webapp.SessionOptions, flowType authflow.FlowType, handlers *AuthflowControllerHandlers, input interface{})
func (*AuthflowController) HandleStep ¶
func (c *AuthflowController) HandleStep(ctx context.Context, w http.ResponseWriter, r *http.Request, handlers *AuthflowControllerHandlers)
func (*AuthflowController) HandleWithoutFlow ¶
func (c *AuthflowController) HandleWithoutFlow(ctx context.Context, w http.ResponseWriter, r *http.Request, handlers *AuthflowControllerHandlers)
func (*AuthflowController) RedirectURI ¶
func (c *AuthflowController) RedirectURI(r *http.Request) string
func (*AuthflowController) ReplaceScreen ¶
func (c *AuthflowController) ReplaceScreen(ctx context.Context, r *http.Request, s *webapp.Session, flowType authflow.FlowType, input map[string]interface{}) (result *webapp.Result, err error)
ReplaceScreen is for switching flow.
func (*AuthflowController) UpdateWithInput ¶
func (c *AuthflowController) UpdateWithInput(ctx context.Context, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, input map[string]interface{}) (result *webapp.Result, err error)
UpdateWithInput is for feeding an input that would just update the current node. One application is resend.
type AuthflowControllerAuthflowService ¶
type AuthflowControllerAuthflowService interface { CreateNewFlow(ctx context.Context, intent authflow.PublicFlow, sessionOptions *authflow.SessionOptions) (*authflow.ServiceOutput, error) Get(ctx context.Context, stateToken string) (*authflow.ServiceOutput, error) FeedInput(ctx context.Context, stateToken string, rawMessage json.RawMessage) (*authflow.ServiceOutput, error) }
type AuthflowControllerHandlers ¶
type AuthflowControllerHandlers struct { GetHandler AuthflowControllerHandler PostHandlers map[string]AuthflowControllerHandler InlinePreviewHandler AuthflowControllerInlinePreviewHandler }
func (*AuthflowControllerHandlers) Get ¶
func (h *AuthflowControllerHandlers) Get(f AuthflowControllerHandler)
func (*AuthflowControllerHandlers) InlinePreview ¶
func (h *AuthflowControllerHandlers) InlinePreview(f AuthflowControllerInlinePreviewHandler)
func (*AuthflowControllerHandlers) PostAction ¶
func (h *AuthflowControllerHandlers) PostAction(action string, f AuthflowControllerHandler)
type AuthflowControllerLogger ¶
func NewAuthflowControllerLogger ¶
func NewAuthflowControllerLogger(lf *log.Factory) AuthflowControllerLogger
type AuthflowControllerOAuthClientResolver ¶
type AuthflowControllerOAuthClientResolver interface {
ResolveClient(clientID string) *config.OAuthClientConfig
}
type AuthflowControllerSAMLSessionService ¶
type AuthflowControllerSAMLSessionService interface {
Get(ctx context.Context, entryID string) (*samlsession.SAMLSession, error)
}
type AuthflowCreatePasswordHandler ¶
type AuthflowCreatePasswordHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowCreatePasswordHandler) GetData ¶
func (h *AuthflowCreatePasswordHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowCreatePasswordHandler) ServeHTTP ¶
func (h *AuthflowCreatePasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowEnterOOBOTPHandler ¶
type AuthflowEnterOOBOTPHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer FlashMessage FlashMessage Clock clock.Clock }
func (*AuthflowEnterOOBOTPHandler) GetData ¶
func (h *AuthflowEnterOOBOTPHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowEnterOOBOTPHandler) ServeHTTP ¶
func (h *AuthflowEnterOOBOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowEnterOOBOTPViewModel ¶
type AuthflowEnterOOBOTPViewModel struct { FlowActionType string Channel string MaskedClaimValue string CodeLength int FailedAttemptRateLimitExceeded bool ResendCooldown int }
func NewAuthflowEnterOOBOTPViewModel ¶
func NewAuthflowEnterOOBOTPViewModel(s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, now time.Time) AuthflowEnterOOBOTPViewModel
type AuthflowEnterPasswordHandler ¶
type AuthflowEnterPasswordHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowEnterPasswordHandler) GetData ¶
func (h *AuthflowEnterPasswordHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowEnterPasswordHandler) ServeHTTP ¶
func (h *AuthflowEnterPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowEnterPasswordViewModel ¶
type AuthflowEnterPasswordViewModel struct { AuthenticationStage string PasswordManagerUsername string ForgotPasswordInputType string ForgotPasswordLoginID string }
func NewAuthflowEnterPasswordViewModel ¶
func NewAuthflowEnterPasswordViewModel(s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) AuthflowEnterPasswordViewModel
type AuthflowEnterRecoveryCodeHandler ¶
type AuthflowEnterRecoveryCodeHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowEnterRecoveryCodeHandler) GetData ¶
func (h *AuthflowEnterRecoveryCodeHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowEnterRecoveryCodeHandler) ServeHTTP ¶
func (h *AuthflowEnterRecoveryCodeHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowEnterTOTPHandler ¶
type AuthflowEnterTOTPHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowEnterTOTPHandler) GetData ¶
func (h *AuthflowEnterTOTPHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowEnterTOTPHandler) ServeHTTP ¶
func (h *AuthflowEnterTOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowFinishFlowHandler ¶
type AuthflowFinishFlowHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowFinishFlowHandler) ServeHTTP ¶
func (h *AuthflowFinishFlowHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowForgotPasswordHandler ¶
type AuthflowForgotPasswordHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowForgotPasswordHandler) GetData ¶
func (h *AuthflowForgotPasswordHandler) GetData( w http.ResponseWriter, r *http.Request, s *webapp.Session, initialScreen *webapp.AuthflowScreenWithFlowResponse, selectDestinationScreen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowForgotPasswordHandler) ServeHTTP ¶
func (h *AuthflowForgotPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowForgotPasswordOTPAlternativeChannel ¶
type AuthflowForgotPasswordOTPAlternativeChannel struct { Index int Channel declarative.AccountRecoveryChannel }
type AuthflowForgotPasswordOTPHandler ¶
type AuthflowForgotPasswordOTPHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer FlashMessage FlashMessage Clock clock.Clock }
func (*AuthflowForgotPasswordOTPHandler) ServeHTTP ¶
func (h *AuthflowForgotPasswordOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowForgotPasswordOTPViewModel ¶
type AuthflowForgotPasswordOTPViewModel struct { Channel declarative.AccountRecoveryChannel MaskedClaimValue string CodeLength int FailedAttemptRateLimitExceeded bool ResendCooldown int AlternativeChannels []AuthflowForgotPasswordOTPAlternativeChannel }
func NewAuthflowForgotPasswordOTPViewModel ¶
func NewAuthflowForgotPasswordOTPViewModel( ctx context.Context, c *AuthflowController, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, now time.Time) (*AuthflowForgotPasswordOTPViewModel, error)
type AuthflowForgotPasswordSuccessHandler ¶
type AuthflowForgotPasswordSuccessHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowForgotPasswordSuccessHandler) GetData ¶
func (h *AuthflowForgotPasswordSuccessHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowForgotPasswordSuccessHandler) ServeHTTP ¶
func (h *AuthflowForgotPasswordSuccessHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowLoginHandler ¶
type AuthflowLoginHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler AuthflowViewModel *viewmodels.AuthflowViewModeler Renderer Renderer MeterService MeterService TutorialCookie TutorialCookie ErrorService ErrorService Endpoints AuthflowLoginEndpointsProvider }
func (*AuthflowLoginHandler) GetData ¶
func (h *AuthflowLoginHandler) GetData( w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, allowLoginOnly bool, ) (map[string]interface{}, error)
func (*AuthflowLoginHandler) ServeHTTP ¶
func (h *AuthflowLoginHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowLoginViewModel ¶
type AuthflowLoginViewModel struct {
AllowLoginOnly bool
}
func NewAuthflowLoginViewModel ¶
func NewAuthflowLoginViewModel(allowLoginOnly bool) AuthflowLoginViewModel
type AuthflowNavigator ¶
type AuthflowNavigator interface {}
type AuthflowNoAuthenticatorHandler ¶
type AuthflowNoAuthenticatorHandler struct { BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowNoAuthenticatorHandler) ServeHTTP ¶
func (h *AuthflowNoAuthenticatorHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowOAuthCallbackResponse ¶
type AuthflowOAuthCallbackResponse struct { Query string State *webappoauth.WebappOAuthState }
type AuthflowOOBOTPLinkHandler ¶
type AuthflowOOBOTPLinkHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer FlashMessage FlashMessage Clock clock.Clock }
func (*AuthflowOOBOTPLinkHandler) GetData ¶
func (h *AuthflowOOBOTPLinkHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowOOBOTPLinkHandler) ServeHTTP ¶
func (h *AuthflowOOBOTPLinkHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowOOBOTPLinkViewModel ¶
type AuthflowOOBOTPLinkViewModel struct { WebsocketURL htmltemplate.URL StateToken string StateQuery LoginLinkOTPPageQueryState MaskedClaimValue string ResendCooldown int }
func NewAuthflowOOBOTPLinkViewModel ¶
func NewAuthflowOOBOTPLinkViewModel(s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, now time.Time) AuthflowOOBOTPLinkViewModel
type AuthflowPromoteHandler ¶
type AuthflowPromoteHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler AuthflowViewModel *viewmodels.AuthflowViewModeler Renderer Renderer Endpoints AuthflowPromoteEndpointsProvider }
func (*AuthflowPromoteHandler) GetData ¶
func (h *AuthflowPromoteHandler) GetData( w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, ) (map[string]interface{}, error)
func (*AuthflowPromoteHandler) ServeHTTP ¶
func (h *AuthflowPromoteHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowPromptCreatePasskeyHandler ¶
type AuthflowPromptCreatePasskeyHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowPromptCreatePasskeyHandler) GetData ¶
func (h *AuthflowPromptCreatePasskeyHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowPromptCreatePasskeyHandler) ServeHTTP ¶
func (h *AuthflowPromptCreatePasskeyHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowPromptCreatePasskeyViewModel ¶
type AuthflowPromptCreatePasskeyViewModel struct {
CreationOptionsJSON string
}
type AuthflowReauthHandler ¶
type AuthflowReauthHandler struct { Controller *AuthflowController }
func (*AuthflowReauthHandler) ServeHTTP ¶
func (h *AuthflowReauthHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowResetPasswordHandler ¶
type AuthflowResetPasswordHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowResetPasswordHandler) GetData ¶
func (h *AuthflowResetPasswordHandler) GetData(w http.ResponseWriter, r *http.Request, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowResetPasswordHandler) GetErrorData ¶
func (h *AuthflowResetPasswordHandler) GetErrorData(w http.ResponseWriter, r *http.Request, err error) (map[string]interface{}, error)
func (*AuthflowResetPasswordHandler) ServeHTTP ¶
func (h *AuthflowResetPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowResetPasswordSuccessHandler ¶
type AuthflowResetPasswordSuccessHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowResetPasswordSuccessHandler) GetData ¶
func (h *AuthflowResetPasswordSuccessHandler) GetData(w http.ResponseWriter, r *http.Request) (map[string]interface{}, error)
func (*AuthflowResetPasswordSuccessHandler) ServeHTTP ¶
func (h *AuthflowResetPasswordSuccessHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowResetPasswordSuccessViewModel ¶
type AuthflowResetPasswordSuccessViewModel struct {
CanBackToSignIn bool
}
type AuthflowSetupOOBOTPHandler ¶
type AuthflowSetupOOBOTPHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowSetupOOBOTPHandler) GetData ¶
func (h *AuthflowSetupOOBOTPHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowSetupOOBOTPHandler) ServeHTTP ¶
func (h *AuthflowSetupOOBOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowSetupOOBOTPViewModel ¶
type AuthflowSetupOOBOTPViewModel struct { OOBAuthenticatorType model.AuthenticatorType Channel model.AuthenticatorOOBChannel }
type AuthflowSetupTOTPHandler ¶
type AuthflowSetupTOTPHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowSetupTOTPHandler) GetData ¶
func (h *AuthflowSetupTOTPHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowSetupTOTPHandler) ServeHTTP ¶
func (h *AuthflowSetupTOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowSetupTOTPViewModel ¶
type AuthflowSetupTOTPViewModel struct { Secret string ImageURI htmltemplate.URL }
type AuthflowSignupHandler ¶
type AuthflowSignupHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler AuthflowViewModel *viewmodels.AuthflowViewModeler Renderer Renderer MeterService MeterService TutorialCookie TutorialCookie Endpoints AuthflowSignupEndpointsProvider }
func (*AuthflowSignupHandler) GetData ¶
func (h *AuthflowSignupHandler) GetData( w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, ) (map[string]interface{}, error)
func (*AuthflowSignupHandler) ServeHTTP ¶
func (h *AuthflowSignupHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowTerminateOtherSessionsHandler ¶
type AuthflowTerminateOtherSessionsHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowTerminateOtherSessionsHandler) GetData ¶
func (h *AuthflowTerminateOtherSessionsHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowTerminateOtherSessionsHandler) ServeHTTP ¶
func (h *AuthflowTerminateOtherSessionsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowUsePasskeyHandler ¶
type AuthflowUsePasskeyHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowUsePasskeyHandler) GetData ¶
func (h *AuthflowUsePasskeyHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowUsePasskeyHandler) ServeHTTP ¶
func (h *AuthflowUsePasskeyHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowUsePasskeyViewModel ¶
type AuthflowUsePasskeyViewModel struct {
PasskeyRequestOptionsJSON string
}
func NewAuthflowUsePasskeyViewModel ¶
func NewAuthflowUsePasskeyViewModel(s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (*AuthflowUsePasskeyViewModel, error)
type AuthflowViewRecoveryCodeHandler ¶
type AuthflowViewRecoveryCodeHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*AuthflowViewRecoveryCodeHandler) GetData ¶
func (h *AuthflowViewRecoveryCodeHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowViewRecoveryCodeHandler) ServeHTTP ¶
func (h *AuthflowViewRecoveryCodeHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowViewRecoveryCodeViewModel ¶
type AuthflowViewRecoveryCodeViewModel struct {
RecoveryCodes []string
}
type AuthflowWechatHandler ¶
type AuthflowWechatHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer OAuthStateStore AuthflowWechatHandlerOAuthStateStore }
func (*AuthflowWechatHandler) GetData ¶
func (h *AuthflowWechatHandler) GetData(ctx context.Context, w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowWechatHandler) ServeHTTP ¶
func (h *AuthflowWechatHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowWechatHandlerOAuthStateStore ¶
type AuthflowWechatHandlerOAuthStateStore interface {
GenerateState(ctx context.Context, state *webappoauth.WebappOAuthState) (stateToken string, err error)
}
type AuthflowWechatViewModel ¶
type AuthflowWechatViewModel struct { ImageURI htmltemplate.URL WechatRedirectURI htmltemplate.URL }
type AuthflowWhatsappOTPHandler ¶
type AuthflowWhatsappOTPHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer FlashMessage FlashMessage Clock clock.Clock }
func (*AuthflowWhatsappOTPHandler) GetData ¶
func (h *AuthflowWhatsappOTPHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*AuthflowWhatsappOTPHandler) ServeHTTP ¶
func (h *AuthflowWhatsappOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type AuthflowWhatsappOTPViewModel ¶
type AuthflowWhatsappOTPViewModel struct { MaskedClaimValue string CodeLength int FailedAttemptRateLimitExceeded bool ResendCooldown int }
func NewAuthflowWhatsappOTPViewModel ¶
func NewAuthflowWhatsappOTPViewModel(s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse, now time.Time) AuthflowWhatsappOTPViewModel
type Authorization ¶
type BiometricIdentity ¶
type CSRFErrorInstructionHandler ¶
type CSRFErrorInstructionHandler struct { Controller *AuthflowController BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*CSRFErrorInstructionHandler) GetData ¶
func (h *CSRFErrorInstructionHandler) GetData(w http.ResponseWriter, r *http.Request, s *webapp.Session, screen *webapp.AuthflowScreenWithFlowResponse) (map[string]interface{}, error)
func (*CSRFErrorInstructionHandler) ServeHTTP ¶
func (h *CSRFErrorInstructionHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type CSRFMiddleware ¶
type CSRFMiddleware struct { Secret *config.CSRFKeyMaterials TrustProxy config.TrustProxy Cookies CookieManager Logger CSRFMiddlewareLogger BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer UIImplementationService CSRFMiddlewareUIImplementationService EnvironmentConfig *config.EnvironmentConfig }
type CSRFMiddlewareLogger ¶
func NewCSRFMiddlewareLogger ¶
func NewCSRFMiddlewareLogger(lf *log.Factory) CSRFMiddlewareLogger
type CSRFMiddlewareUIImplementationService ¶
type CSRFMiddlewareUIImplementationService interface {
GetUIImplementation() config.UIImplementation
}
type ChangePasswordViewModel ¶
type ChangePasswordViewModel struct {
Force bool
}
type ConfirmTerminateOtherSessionsHandler ¶
type ConfirmTerminateOtherSessionsHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Endpoints ConfirmTerminateOtherSessionsEndpointsProvider }
func (*ConfirmTerminateOtherSessionsHandler) GetData ¶
func (h *ConfirmTerminateOtherSessionsHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*ConfirmTerminateOtherSessionsHandler) ServeHTTP ¶
func (h *ConfirmTerminateOtherSessionsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ConnectWeb3AccountHandler ¶
type ConnectWeb3AccountHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer AuthenticationConfig *config.AuthenticationConfig }
func (*ConnectWeb3AccountHandler) GetData ¶
func (h *ConnectWeb3AccountHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*ConnectWeb3AccountHandler) ServeHTTP ¶
func (h *ConnectWeb3AccountHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ConnectWeb3AccountViewModel ¶
type ConnectWeb3AccountViewModel struct {
Provider string
}
type Controller ¶
type Controller struct { Log *log.Logger ControllerDeps // contains filtered or unexported fields }
func (*Controller) BeforeHandle ¶
func (c *Controller) BeforeHandle(fn func(ctx context.Context) error)
func (*Controller) DeleteSession ¶
func (c *Controller) DeleteSession(ctx context.Context, id string) error
func (*Controller) EntryPointGet ¶
func (c *Controller) EntryPointGet( ctx context.Context, opts webapp.SessionOptions, intent interaction.Intent, ) (*interaction.Graph, error)
func (*Controller) EntryPointPost ¶
func (c *Controller) EntryPointPost( ctx context.Context, opts webapp.SessionOptions, intent interaction.Intent, inputFn func() (interface{}, error), ) (*webapp.Result, error)
func (*Controller) EntryPointSession ¶
func (c *Controller) EntryPointSession(ctx context.Context, opts webapp.SessionOptions) *webapp.Session
func (*Controller) GetSession ¶
func (*Controller) InteractionGet ¶
func (c *Controller) InteractionGet(ctx context.Context) (*interaction.Graph, error)
func (*Controller) InteractionGetWithSession ¶
func (c *Controller) InteractionGetWithSession(ctx context.Context, s *webapp.Session) (*interaction.Graph, error)
func (*Controller) InteractionOAuthCallback ¶
func (c *Controller) InteractionOAuthCallback(ctx context.Context, oauthInput InputOAuthCallback, oauthState *webappoauth.WebappOAuthState) (*webapp.Result, error)
func (*Controller) InteractionPost ¶
func (*Controller) InteractionSession ¶
func (*Controller) PostAction ¶
func (c *Controller) PostAction(action string, fn func(ctx context.Context) error)
func (*Controller) RedirectURI ¶
func (c *Controller) RedirectURI() string
func (*Controller) RequireUserID ¶
func (c *Controller) RequireUserID(ctx context.Context) string
func (*Controller) ServeWithDBTx ¶
func (c *Controller) ServeWithDBTx(ctx context.Context)
func (*Controller) ServeWithoutDBTx ¶
func (c *Controller) ServeWithoutDBTx(ctx context.Context)
func (*Controller) UpdateSession ¶
type ControllerDeps ¶
type ControllerDeps struct { Database *appdb.Handle RedisHandle *appredis.Handle AppID config.AppID Page PageService BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Publisher *Publisher Clock clock.Clock TesterEndpointsProvider tester.EndpointsProvider ErrorRenderer *ErrorRenderer TrustProxy config.TrustProxy }
type ControllerFactory ¶
type ControllerFactory struct { LoggerFactory *log.Factory ControllerDeps }
func (*ControllerFactory) New ¶
func (f *ControllerFactory) New(r *http.Request, rw http.ResponseWriter) (*Controller, error)
type CookieManager ¶
type CreateAuthenticatorBeginNode ¶
type CreateAuthenticatorBeginNode interface { GetCreateAuthenticatorEdges() ([]interaction.Edge, error) GetCreateAuthenticatorStage() authn.AuthenticationStage }
type CreateAuthenticatorPhoneOTPNode ¶
type CreateAuthenticatorPhoneOTPNode interface { GetCreateAuthenticatorStage() authn.AuthenticationStage GetSelectedPhoneNumberForPhoneOTP() string }
type CreatePasskeyHandler ¶
type CreatePasskeyHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*CreatePasskeyHandler) GetData ¶
func (h *CreatePasskeyHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*CreatePasskeyHandler) ServeHTTP ¶
func (h *CreatePasskeyHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type CreatePasswordHandler ¶
type CreatePasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer PasswordPolicy PasswordPolicy }
func (*CreatePasswordHandler) GetData ¶
func (h *CreatePasswordHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*CreatePasswordHandler) ServeHTTP ¶
func (h *CreatePasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type CreatePasswordViewModel ¶
type CreatePasswordViewModel struct {
IdentityDisplayID string
}
type EnterLoginIDHandler ¶
type EnterLoginIDHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler Renderer Renderer Identities EnterLoginIDService IdentityConfig *config.IdentityConfig }
func (*EnterLoginIDHandler) GetData ¶
func (h *EnterLoginIDHandler) GetData(ctx context.Context, userID string, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*EnterLoginIDHandler) ServeHTTP ¶
func (h *EnterLoginIDHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type EnterLoginIDService ¶
type EnterLoginIDViewModel ¶
type EnterLoginIDViewModel struct { LoginIDKey string LoginIDType string LoginIDInputType string IdentityID string DisplayID string UpdateDisabled bool DeleteDisabled bool }
func NewEnterLoginIDViewModel ¶
func NewEnterLoginIDViewModel(r *http.Request, cfg *config.IdentityConfig, info *identity.Info) EnterLoginIDViewModel
type EnterOOBOTPHandler ¶
type EnterOOBOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer FlashMessage FlashMessage OTPCodeService OTPCodeService Clock clock.Clock Config *config.AppConfig }
func (*EnterOOBOTPHandler) GetData ¶
func (h *EnterOOBOTPHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*EnterOOBOTPHandler) ServeHTTP ¶
func (h *EnterOOBOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type EnterOOBOTPNode ¶
type EnterOOBOTPNode interface { GetOOBOTPTarget() string GetOOBOTPChannel() string GetOOBOTPCodeLength() int GetOOBOTPOOBType() interaction.OOBType }
type EnterOOBOTPViewModel ¶
type EnterPasswordHandler ¶
type EnterPasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*EnterPasswordHandler) GetData ¶
func (h *EnterPasswordHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*EnterPasswordHandler) ServeHTTP ¶
func (h *EnterPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type EnterPasswordViewModel ¶
type EnterPasswordViewModel struct { IdentityDisplayID string // ForgotPasswordInputType is either phone or email ForgotPasswordInputType string ForgotPasswordLoginID string Variant EnterPasswordViewVariant }
type EnterPasswordViewVariant ¶
type EnterPasswordViewVariant string
const ( EnterPasswordViewVariantDefault EnterPasswordViewVariant = "default" EnterPasswordViewVariantReAuth EnterPasswordViewVariant = "reauth" )
type EnterRecoveryCodeHandler ¶
type EnterRecoveryCodeHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*EnterRecoveryCodeHandler) GetData ¶
func (h *EnterRecoveryCodeHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*EnterRecoveryCodeHandler) ServeHTTP ¶
func (h *EnterRecoveryCodeHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type EnterTOTPHandler ¶
type EnterTOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*EnterTOTPHandler) GetData ¶
func (h *EnterTOTPHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*EnterTOTPHandler) ServeHTTP ¶
func (h *EnterTOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ErrorHandler ¶
type ErrorHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*ErrorHandler) GetData ¶
func (h *ErrorHandler) GetData(r *http.Request, w http.ResponseWriter) (map[string]interface{}, error)
func (*ErrorHandler) ServeHTTP ¶
func (h *ErrorHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ErrorRenderer ¶
type ErrorRenderer struct { ErrorService *webapp.ErrorService UIImplementationService ErrorRendererUIImplementationService }
func (*ErrorRenderer) MakeAuthflowErrorResult ¶
func (*ErrorRenderer) RenderError ¶
func (s *ErrorRenderer) RenderError(ctx context.Context, w http.ResponseWriter, r *http.Request, err error)
type ErrorRendererAuthflowV2Navigator ¶
type ErrorRendererAuthflowV2Navigator interface {
}type ErrorRendererUIImplementationService ¶
type ErrorRendererUIImplementationService interface {
GetUIImplementation() config.UIImplementation
}
type ErrorService ¶
type FeatureDisabledHandler ¶
type FeatureDisabledHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*FeatureDisabledHandler) GetData ¶
func (h *FeatureDisabledHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*FeatureDisabledHandler) ServeHTTP ¶
func (h *FeatureDisabledHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type FlashMessage ¶
type FlashMessage interface {
Flash(rw http.ResponseWriter, messageType string)
}
type ForceChangePasswordHandler ¶
type ForceChangePasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler ChangePasswordViewModel *viewmodels.ChangePasswordViewModeler Renderer Renderer PasswordPolicy PasswordPolicy }
func (*ForceChangePasswordHandler) GetData ¶
func (h *ForceChangePasswordHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*ForceChangePasswordHandler) ServeHTTP ¶
func (h *ForceChangePasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ForceChangeSecondaryPasswordHandler ¶
type ForceChangeSecondaryPasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler ChangePasswordViewModel viewmodels.ChangePasswordViewModeler Renderer Renderer PasswordPolicy PasswordPolicy }
func (*ForceChangeSecondaryPasswordHandler) GetData ¶
func (h *ForceChangeSecondaryPasswordHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*ForceChangeSecondaryPasswordHandler) ServeHTTP ¶
func (h *ForceChangeSecondaryPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ForgotPasswordHandler ¶
type ForgotPasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler FormPrefiller *FormPrefiller Renderer Renderer }
func (*ForgotPasswordHandler) GetData ¶
func (h *ForgotPasswordHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*ForgotPasswordHandler) ServeHTTP ¶
func (h *ForgotPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ForgotPasswordLoginIDInputType ¶
type ForgotPasswordLoginIDInputType string
const ( ForgotPasswordLoginIDInputTypeEmail ForgotPasswordLoginIDInputType = "email" ForgotPasswordLoginIDInputTypePhone ForgotPasswordLoginIDInputType = "phone" )
func (ForgotPasswordLoginIDInputType) IsValid ¶
func (t ForgotPasswordLoginIDInputType) IsValid() bool
type ForgotPasswordSuccessHandler ¶
type ForgotPasswordSuccessHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*ForgotPasswordSuccessHandler) GetData ¶
func (h *ForgotPasswordSuccessHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session) (map[string]interface{}, error)
func (*ForgotPasswordSuccessHandler) ServeHTTP ¶
func (h *ForgotPasswordSuccessHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ForgotPasswordSuccessNode ¶
type ForgotPasswordSuccessNode interface {
GetLoginID() string
}
type ForgotPasswordSuccessViewModel ¶
type ForgotPasswordSuccessViewModel struct {
GivenLoginID string
}
type ForgotPasswordViewModel ¶
func NewForgotPasswordViewModel ¶
func NewForgotPasswordViewModel(r *http.Request) ForgotPasswordViewModel
type FormPrefiller ¶
type FormPrefiller struct { LoginID *config.LoginIDConfig UI *config.UIConfig }
func (*FormPrefiller) Prefill ¶
func (p *FormPrefiller) Prefill(form url.Values)
type GeneratedStaticAssetsHandler ¶
type GeneratedStaticAssetsHandler struct {
EmbeddedResources GlobalEmbeddedResourceManager
}
func (*GeneratedStaticAssetsHandler) ServeHTTP ¶
func (h *GeneratedStaticAssetsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type GlobalSessionService ¶
type GlobalSessionService struct { SessionStore SessionStore Publisher *Publisher Clock clock.Clock }
func (*GlobalSessionService) GetSession ¶
func (*GlobalSessionService) UpdateSession ¶
type GlobalSessionServiceFactory ¶
func (*GlobalSessionServiceFactory) NewGlobalSessionService ¶
func (f *GlobalSessionServiceFactory) NewGlobalSessionService(appID config.AppID) *GlobalSessionService
type ImplementationSwitcherHandler ¶
func (*ImplementationSwitcherHandler) ServeHTTP ¶
func (h *ImplementationSwitcherHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ImplementationSwitcherMiddleware ¶
type ImplementationSwitcherMiddleware struct {
UIImplementationService ImplementationSwitcherMiddlewareUIImplementationService
}
type ImplementationSwitcherMiddlewareUIImplementationService ¶
type ImplementationSwitcherMiddlewareUIImplementationService interface {
GetUIImplementation() config.UIImplementation
}
type InputAuthOOB ¶
func (*InputAuthOOB) CreateDeviceToken ¶
func (i *InputAuthOOB) CreateDeviceToken() bool
func (*InputAuthOOB) GetOOBOTP ¶
func (i *InputAuthOOB) GetOOBOTP() string
type InputAuthPassword ¶
func (*InputAuthPassword) CreateDeviceToken ¶
func (i *InputAuthPassword) CreateDeviceToken() bool
func (*InputAuthPassword) GetAuthenticationStage ¶
func (i *InputAuthPassword) GetAuthenticationStage() authn.AuthenticationStage
func (*InputAuthPassword) GetPassword ¶
func (i *InputAuthPassword) GetPassword() string
type InputAuthRecoveryCode ¶
func (*InputAuthRecoveryCode) CreateDeviceToken ¶
func (i *InputAuthRecoveryCode) CreateDeviceToken() bool
func (*InputAuthRecoveryCode) GetRecoveryCode ¶
func (i *InputAuthRecoveryCode) GetRecoveryCode() string
type InputAuthTOTP ¶
func (*InputAuthTOTP) CreateDeviceToken ¶
func (i *InputAuthTOTP) CreateDeviceToken() bool
func (*InputAuthTOTP) GetTOTP ¶
func (i *InputAuthTOTP) GetTOTP() string
type InputChangePassword ¶
type InputChangePassword struct { AuthenticationStage authn.AuthenticationStage OldPassword string NewPassword string }
func (*InputChangePassword) GetAuthenticationStage ¶
func (i *InputChangePassword) GetAuthenticationStage() authn.AuthenticationStage
func (*InputChangePassword) GetNewPassword ¶
func (i *InputChangePassword) GetNewPassword() string
func (*InputChangePassword) GetOldPassword ¶
func (i *InputChangePassword) GetOldPassword() string
type InputConfirmTerminateOtherSessions ¶
type InputConfirmTerminateOtherSessions struct {
IsConfirm bool
}
func (*InputConfirmTerminateOtherSessions) GetIsConfirmed ¶
func (i *InputConfirmTerminateOtherSessions) GetIsConfirmed() bool
type InputConfirmWeb3AccountRequest ¶
func (*InputConfirmWeb3AccountRequest) GetMessage ¶
func (i *InputConfirmWeb3AccountRequest) GetMessage() string
func (*InputConfirmWeb3AccountRequest) GetSignature ¶
func (i *InputConfirmWeb3AccountRequest) GetSignature() string
type InputCreateAuthenticator ¶
type InputCreateAuthenticator struct{}
func (*InputCreateAuthenticator) RequestedByUser ¶
func (i *InputCreateAuthenticator) RequestedByUser() bool
type InputNewLoginID ¶
func (*InputNewLoginID) GetLoginID ¶
func (i *InputNewLoginID) GetLoginID() string
func (*InputNewLoginID) GetLoginIDKey ¶
func (i *InputNewLoginID) GetLoginIDKey() string
type InputOAuthCallback ¶
func (*InputOAuthCallback) GetProviderAlias ¶
func (i *InputOAuthCallback) GetProviderAlias() string
func (*InputOAuthCallback) GetQuery ¶
func (i *InputOAuthCallback) GetQuery() string
type InputPasskeyAssertionResponse ¶
func (*InputPasskeyAssertionResponse) GetAssertionResponse ¶
func (i *InputPasskeyAssertionResponse) GetAssertionResponse() []byte
func (*InputPasskeyAssertionResponse) GetAuthenticationStage ¶
func (i *InputPasskeyAssertionResponse) GetAuthenticationStage() authn.AuthenticationStage
type InputPasskeyAttestationResponse ¶
func (*InputPasskeyAttestationResponse) GetAttestationResponse ¶
func (i *InputPasskeyAttestationResponse) GetAttestationResponse() []byte
func (*InputPasskeyAttestationResponse) GetAuthenticationStage ¶
func (i *InputPasskeyAttestationResponse) GetAuthenticationStage() authn.AuthenticationStage
type InputPromptCreatePasskeyAttestationResponse ¶
func (*InputPromptCreatePasskeyAttestationResponse) GetAttestationResponse ¶
func (i *InputPromptCreatePasskeyAttestationResponse) GetAttestationResponse() []byte
func (*InputPromptCreatePasskeyAttestationResponse) IsSkipped ¶
func (i *InputPromptCreatePasskeyAttestationResponse) IsSkipped() bool
type InputRemoveAuthenticator ¶
type InputRemoveAuthenticator struct { Type model.AuthenticatorType ID string }
func (*InputRemoveAuthenticator) GetAuthenticatorID ¶
func (i *InputRemoveAuthenticator) GetAuthenticatorID() string
func (*InputRemoveAuthenticator) GetAuthenticatorType ¶
func (i *InputRemoveAuthenticator) GetAuthenticatorType() model.AuthenticatorType
type InputRemoveIdentity ¶
type InputRemoveIdentity struct { Type model.IdentityType ID string }
func (*InputRemoveIdentity) GetIdentityID ¶
func (i *InputRemoveIdentity) GetIdentityID() string
func (*InputRemoveIdentity) GetIdentityType ¶
func (i *InputRemoveIdentity) GetIdentityType() model.IdentityType
type InputResendCode ¶
type InputResendCode struct{}
func (*InputResendCode) DoResend ¶
func (i *InputResendCode) DoResend()
type InputResetPassword ¶
func (*InputResetPassword) GetCode ¶
func (i *InputResetPassword) GetCode() string
func (*InputResetPassword) GetNewPassword ¶
func (i *InputResetPassword) GetNewPassword() string
type InputSelectLoginLink ¶
type InputSelectLoginLink struct{}
func (*InputSelectLoginLink) SetupPrimaryAuthenticatorLoginLinkOTP ¶
func (i *InputSelectLoginLink) SetupPrimaryAuthenticatorLoginLinkOTP()
type InputSelectOOB ¶
type InputSelectOOB struct{}
func (*InputSelectOOB) SetupPrimaryAuthenticatorOOB ¶
func (i *InputSelectOOB) SetupPrimaryAuthenticatorOOB()
type InputSelectTOTP ¶
type InputSelectTOTP struct{}
func (*InputSelectTOTP) SetupTOTP ¶
func (i *InputSelectTOTP) SetupTOTP()
type InputSelectVerifyIdentityViaOOBOTP ¶
type InputSelectVerifyIdentityViaOOBOTP struct{}
func (*InputSelectVerifyIdentityViaOOBOTP) SelectVerifyIdentityViaOOBOTP ¶
func (i *InputSelectVerifyIdentityViaOOBOTP) SelectVerifyIdentityViaOOBOTP()
type InputSelectVerifyIdentityViaWhatsapp ¶
type InputSelectVerifyIdentityViaWhatsapp struct{}
func (*InputSelectVerifyIdentityViaWhatsapp) SelectVerifyIdentityViaWhatsapp ¶
func (i *InputSelectVerifyIdentityViaWhatsapp) SelectVerifyIdentityViaWhatsapp()
type InputSelectWhatsappOTP ¶
type InputSelectWhatsappOTP struct{}
func (*InputSelectWhatsappOTP) SetupPrimaryAuthenticatorWhatsappOTP ¶
func (i *InputSelectWhatsappOTP) SetupPrimaryAuthenticatorWhatsappOTP()
type InputSetupLoginLinkOTP ¶
func (*InputSetupLoginLinkOTP) GetLoginLinkOTPTarget ¶
func (i *InputSetupLoginLinkOTP) GetLoginLinkOTPTarget() string
type InputSetupOOB ¶
func (*InputSetupOOB) GetOOBChannel ¶
func (i *InputSetupOOB) GetOOBChannel() model.AuthenticatorOOBChannel
func (*InputSetupOOB) GetOOBTarget ¶
func (i *InputSetupOOB) GetOOBTarget() string
type InputSetupPassword ¶
func (*InputSetupPassword) GetAuthenticationStage ¶
func (i *InputSetupPassword) GetAuthenticationStage() authn.AuthenticationStage
func (*InputSetupPassword) GetPassword ¶
func (i *InputSetupPassword) GetPassword() string
type InputSetupRecoveryCode ¶
type InputSetupRecoveryCode struct{}
func (*InputSetupRecoveryCode) ViewedRecoveryCodes ¶
func (i *InputSetupRecoveryCode) ViewedRecoveryCodes()
type InputSetupTOTP ¶
func (*InputSetupTOTP) GetTOTP ¶
func (i *InputSetupTOTP) GetTOTP() string
func (*InputSetupTOTP) GetTOTPDisplayName ¶
func (i *InputSetupTOTP) GetTOTPDisplayName() string
type InputSetupWhatsappOTP ¶
type InputSetupWhatsappOTP struct {
Phone string
}
func (*InputSetupWhatsappOTP) GetWhatsappPhone ¶
func (i *InputSetupWhatsappOTP) GetWhatsappPhone() string
type InputTriggerLoginLink ¶
type InputTriggerLoginLink struct {
AuthenticatorIndex int
}
func (*InputTriggerLoginLink) GetLoginLinkAuthenticatorIndex ¶
func (i *InputTriggerLoginLink) GetLoginLinkAuthenticatorIndex() int
type InputTriggerOOB ¶
func (*InputTriggerOOB) GetOOBAuthenticatorIndex ¶
func (i *InputTriggerOOB) GetOOBAuthenticatorIndex() int
func (*InputTriggerOOB) GetOOBAuthenticatorType ¶
func (i *InputTriggerOOB) GetOOBAuthenticatorType() string
type InputTriggerWhatsApp ¶
type InputTriggerWhatsApp struct {
AuthenticatorIndex int
}
func (*InputTriggerWhatsApp) GetWhatsappAuthenticatorIndex ¶
func (i *InputTriggerWhatsApp) GetWhatsappAuthenticatorIndex() int
type InputUseLoginID ¶
func (*InputUseLoginID) GetLoginID ¶
func (i *InputUseLoginID) GetLoginID() string
func (*InputUseLoginID) GetLoginIDKey ¶
func (i *InputUseLoginID) GetLoginIDKey() string
type InputUseOAuth ¶
func (*InputUseOAuth) GetErrorRedirectURI ¶
func (i *InputUseOAuth) GetErrorRedirectURI() string
func (*InputUseOAuth) GetPrompt ¶
func (i *InputUseOAuth) GetPrompt() []string
func (*InputUseOAuth) GetProviderAlias ¶
func (i *InputUseOAuth) GetProviderAlias() string
type InputVerificationCode ¶
type InputVerificationCode struct {
Code string
}
func (*InputVerificationCode) GetVerificationCode ¶
func (i *InputVerificationCode) GetVerificationCode() string
type InputVerifyLoginLinkOTP ¶
type InputVerifyLoginLinkOTP struct {
DeviceToken bool
}
func (*InputVerifyLoginLinkOTP) CreateDeviceToken ¶
func (i *InputVerifyLoginLinkOTP) CreateDeviceToken() bool
func (*InputVerifyLoginLinkOTP) VerifyLoginLink ¶
func (i *InputVerifyLoginLinkOTP) VerifyLoginLink()
type InputVerifyWhatsappOTP ¶
func (*InputVerifyWhatsappOTP) CreateDeviceToken ¶
func (i *InputVerifyWhatsappOTP) CreateDeviceToken() bool
func (*InputVerifyWhatsappOTP) GetWhatsappOTP ¶
func (i *InputVerifyWhatsappOTP) GetWhatsappOTP() string
type JSONResponseWriter ¶
type JSONResponseWriter interface {
WriteResponse(rw http.ResponseWriter, resp *api.Response)
}
type LoginHandler ¶
type LoginHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler FormPrefiller *FormPrefiller Renderer Renderer MeterService MeterService TutorialCookie TutorialCookie ErrorService ErrorService }
func (*LoginHandler) GetData ¶
func (h *LoginHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph, allowLoginOnly bool) (map[string]interface{}, error)
func (*LoginHandler) ServeHTTP ¶
func (h *LoginHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type LoginLinkOTPHandler ¶
type LoginLinkOTPHandler struct { Clock clock.Clock LoginLinkOTPCodeService OTPCodeService ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer FlashMessage FlashMessage Config *config.AppConfig }
func (*LoginLinkOTPHandler) GetData ¶
func (h *LoginLinkOTPHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*LoginLinkOTPHandler) ServeHTTP ¶
func (h *LoginLinkOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type LoginLinkOTPNode ¶
type LoginLinkOTPNode interface { GetLoginLinkOTPTarget() string GetLoginLinkOTPChannel() string GetLoginLinkOTPOOBType() interaction.OOBType }
type LoginLinkOTPPageQueryState ¶
type LoginLinkOTPPageQueryState string
const ( LoginLinkOTPPageQueryStateInitial LoginLinkOTPPageQueryState = "" LoginLinkOTPPageQueryStateInvalidCode LoginLinkOTPPageQueryState = "invalid_code" LoginLinkOTPPageQueryStateMatched LoginLinkOTPPageQueryState = "matched" )
func GetLoginLinkStateFromQuery ¶
func GetLoginLinkStateFromQuery(r *http.Request) LoginLinkOTPPageQueryState
func (*LoginLinkOTPPageQueryState) IsValid ¶
func (s *LoginLinkOTPPageQueryState) IsValid() bool
type LoginLinkOTPViewModel ¶
type LoginLinkOTPViewModel struct { Target string OTPCodeSendCooldown int StateQuery LoginLinkOTPPageQueryState }
type LoginViewModel ¶
func NewLoginViewModel ¶
func NewLoginViewModel(allowLoginOnly bool, r *http.Request) LoginViewModel
type LogoutHandler ¶
type LogoutHandler struct { ControllerFactory ControllerFactory Database *appdb.Handle TrustProxy config.TrustProxy OAuth *config.OAuthConfig UIConfig *config.UIConfig SAMLConfig *config.SAMLConfig SessionManager LogoutSessionManager BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer OAuthClientResolver WebappOAuthClientResolver SAMLSLOSessionService SAMLSLOSessionService SAMLSLOService SAMLSLOService }
func (*LogoutHandler) ServeHTTP ¶
func (h *LogoutHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type LogoutSessionManager ¶
type LogoutSessionManager interface {
Logout(ctx context.Context, s session.SessionBase, w http.ResponseWriter) ([]session.ListableSession, error)
}
type MeterService ¶
type NotFoundHandler ¶
type NotFoundHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*NotFoundHandler) GetData ¶
func (h *NotFoundHandler) GetData(r *http.Request, w http.ResponseWriter) (map[string]interface{}, error)
func (*NotFoundHandler) ServeHTTP ¶
func (h *NotFoundHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type OAuthEntrypointHandler ¶
type OAuthEntrypointHandler struct {
Endpoints OAuthEntrypointEndpointsProvider
}
func (*OAuthEntrypointHandler) ServeHTTP ¶
func (h *OAuthEntrypointHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type OTPCodeService ¶
type OTPCodeService interface { VerifyOTP(ctx context.Context, kind otp.Kind, target string, otp string, opts *otp.VerifyOptions) error InspectState(ctx context.Context, kind otp.Kind, target string) (*otp.State, error) LookupCode(ctx context.Context, purpose otp.Purpose, code string) (target string, err error) SetSubmittedCode(ctx context.Context, kind otp.Kind, target string, code string) (*otp.State, error) }
type PageService ¶
type PageService interface { UpdateSession(ctx context.Context, session *webapp.Session) error DeleteSession(ctx context.Context, id string) error PeekUncommittedChanges(ctx context.Context, session *webapp.Session, fn func(graph *interaction.Graph) error) error Get(ctx context.Context, session *webapp.Session) (*interaction.Graph, error) GetSession(ctx context.Context, id string) (*webapp.Session, error) GetWithIntent(ctx context.Context, session *webapp.Session, intent interaction.Intent) (*interaction.Graph, error) PostWithIntent( ctx context.Context, session *webapp.Session, intent interaction.Intent, inputFn func() (interface{}, error), ) (result *webapp.Result, err error) PostWithInput( ctx context.Context, session *webapp.Session, inputFn func() (interface{}, error), ) (result *webapp.Result, err error) }
type PanicMiddleware ¶
type PanicMiddleware struct { ErrorService *webapp.ErrorService Logger PanicMiddlewareLogger BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Endpoints PanicMiddlewareEndpointsProvider UIImplementationService PanicMiddlewareUIImplementationService }
type PanicMiddlewareLogger ¶
func NewPanicMiddlewareLogger ¶
func NewPanicMiddlewareLogger(lf *log.Factory) PanicMiddlewareLogger
type PanicMiddlewareUIImplementationService ¶
type PanicMiddlewareUIImplementationService interface {
GetUIImplementation() config.UIImplementation
}
type PasskeyCreationOptionsHandler ¶
type PasskeyCreationOptionsHandler struct { Page PageService Database *appdb.Handle JSON JSONResponseWriter Passkey PasskeyCreationOptionsService }
func (*PasskeyCreationOptionsHandler) ServeHTTP ¶
func (h *PasskeyCreationOptionsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type PasskeyRequestOptionsHandler ¶
type PasskeyRequestOptionsHandler struct { Page PageService Database *appdb.Handle JSON JSONResponseWriter Passkey PasskeyRequestOptionsService }
func (*PasskeyRequestOptionsHandler) ServeHTTP ¶
func (h *PasskeyRequestOptionsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type PasskeyRequestOptionsService ¶
type PasskeyRequestOptionsService interface { MakeConditionalRequestOptions(ctx context.Context) (*model.WebAuthnRequestOptions, error) MakeModalRequestOptions(ctx context.Context) (*model.WebAuthnRequestOptions, error) MakeModalRequestOptionsWithUser(ctx context.Context, userID string) (*model.WebAuthnRequestOptions, error) }
type PasswordPolicy ¶
type PromoteHandler ¶
type PromoteHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler FormPrefiller *FormPrefiller Renderer Renderer AnonymousUserPromotionService AnonymousUserPromotionService }
func (*PromoteHandler) GetData ¶
func (h *PromoteHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*PromoteHandler) ServeHTTP ¶
func (h *PromoteHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type PromoteInputLoginID ¶
type PromoteInputLoginID struct { *webapp.AnonymousTokenInput *InputNewLoginID }
type PromoteInputOAuth ¶
type PromoteInputOAuth struct { *webapp.AnonymousTokenInput *InputUseOAuth }
type PromoteViewModel ¶
type PromoteViewModel struct {
LoginIDKey string
}
func NewPromoteViewModel ¶
func NewPromoteViewModel(r *http.Request) PromoteViewModel
type PromptCreatePasskeyHandler ¶
type PromptCreatePasskeyHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*PromptCreatePasskeyHandler) GetData ¶
func (h *PromptCreatePasskeyHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*PromptCreatePasskeyHandler) ServeHTTP ¶
func (h *PromptCreatePasskeyHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type Publisher ¶
type ReauthHandler ¶
type ReauthHandler struct {
ControllerFactory ControllerFactory
}
func (*ReauthHandler) ServeHTTP ¶
func (h *ReauthHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type Renderer ¶
type Renderer interface { // Render renders the template into response body. Render(w http.ResponseWriter, r *http.Request, tpl template.Resource, data interface{}) // RenderHTML is a shorthand of Render that renders HTML. RenderHTML(w http.ResponseWriter, r *http.Request, tpl *template.HTML, data interface{}) RenderStatus(w http.ResponseWriter, req *http.Request, status int, tpl template.Resource, data interface{}) RenderHTMLStatus(w http.ResponseWriter, r *http.Request, status int, tpl *template.HTML, data interface{}) }
type ResetPasswordHandler ¶
type ResetPasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer PasswordPolicy PasswordPolicy ResetPassword ResetPasswordService }
func (*ResetPasswordHandler) GetData ¶
func (h *ResetPasswordHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*ResetPasswordHandler) ServeHTTP ¶
func (h *ResetPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ResetPasswordService ¶
type ResetPasswordSuccessHandler ¶
type ResetPasswordSuccessHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*ResetPasswordSuccessHandler) GetData ¶
func (h *ResetPasswordSuccessHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*ResetPasswordSuccessHandler) ServeHTTP ¶
func (h *ResetPasswordSuccessHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ResourceManager ¶
type ResourceManager interface { Read(desc resource.Descriptor, view resource.View) (interface{}, error) Resolve(path string) (resource.Descriptor, bool) }
type ResponseRenderer ¶
func (*ResponseRenderer) Render ¶
func (r *ResponseRenderer) Render(w http.ResponseWriter, req *http.Request, tpl template.Resource, data interface{})
func (*ResponseRenderer) RenderHTML ¶
func (r *ResponseRenderer) RenderHTML(w http.ResponseWriter, req *http.Request, tpl *template.HTML, data interface{})
func (*ResponseRenderer) RenderHTMLStatus ¶
func (r *ResponseRenderer) RenderHTMLStatus(w http.ResponseWriter, req *http.Request, status int, tpl *template.HTML, data interface{})
func (*ResponseRenderer) RenderStatus ¶
func (r *ResponseRenderer) RenderStatus(w http.ResponseWriter, req *http.Request, status int, tpl template.Resource, data interface{})
type ResponseWriter ¶
type ResponseWriter struct { JSONResponseWriter JSONResponseWriter Renderer Renderer }
func (*ResponseWriter) PrepareData ¶
func (w *ResponseWriter) PrepareData(err error) map[string]interface{}
func (*ResponseWriter) WriteResponse ¶
func (w *ResponseWriter) WriteResponse(rw http.ResponseWriter, req *http.Request, resp *api.Response)
type ReturnHandler ¶
type ReturnHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*ReturnHandler) GetData ¶
func (h *ReturnHandler) GetData(r *http.Request, w http.ResponseWriter) (map[string]interface{}, error)
func (*ReturnHandler) ServeHTTP ¶
func (h *ReturnHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type RootHandler ¶
type RootHandler struct { AuthenticationConfig *config.AuthenticationConfig Cookies CookieManager SignedUpCookie webapp.SignedUpCookieDef }
func (*RootHandler) ServeHTTP ¶
func (h *RootHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SAMLSLOService ¶
type SAMLSLOService interface { SendSLORequest( ctx context.Context, rw http.ResponseWriter, r *http.Request, sloSession *samlslosession.SAMLSLOSession, sp *config.SAMLServiceProviderConfig, ) error }
type SAMLSLOSessionService ¶
type SAMLSLOSessionService interface { Get(ctx context.Context, sessionID string) (entry *samlslosession.SAMLSLOSession, err error) Save(ctx context.Context, session *samlslosession.SAMLSLOSession) (err error) }
type SSOCallbackHandler ¶
type SSOCallbackHandler struct { AuthflowController *AuthflowController ControllerFactory ControllerFactory ErrorRenderer *ErrorRenderer OAuthStateStore SSOCallbackHandlerOAuthStateStore AccountManagement *accountmanagement.Service }
func (*SSOCallbackHandler) ServeHTTP ¶
func (h *SSOCallbackHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SSOCallbackHandlerOAuthStateStore ¶
type SSOCallbackHandlerOAuthStateStore interface {
PopAndRecoverState(ctx context.Context, stateToken string) (state *webappoauth.WebappOAuthState, err error)
}
type SelectAccountAuthenticationInfoService ¶
type SelectAccountAuthenticationInfoService interface {
Save(ctx context.Context, entry *authenticationinfo.Entry) error
}
type SelectAccountHandler ¶
type SelectAccountHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer AuthenticationConfig *config.AuthenticationConfig SignedUpCookie webapp.SignedUpCookieDef Users SelectAccountUserService UserFacade SelectAccountUserFacade Identities SelectAccountIdentityService AuthenticationInfoService SelectAccountAuthenticationInfoService UIInfoResolver SelectAccountUIInfoResolver Cookies CookieManager OAuthConfig *config.OAuthConfig UIConfig *config.UIConfig OAuthClientResolver WebappOAuthClientResolver }
func (*SelectAccountHandler) GetData ¶
func (h *SelectAccountHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter, userID string) (map[string]interface{}, error)
func (*SelectAccountHandler) ServeHTTP ¶
func (h *SelectAccountHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
nolint: gocognit
type SelectAccountUIInfoResolver ¶
type SelectAccountUIInfoResolver interface {
SetAuthenticationInfoInQuery(redirectURI string, e *authenticationinfo.Entry) string
}
type SelectAccountUserFacade ¶
type SelectAccountViewModel ¶
type SelectAccountViewModel struct { IdentityDisplayName string UserProfile UserProfile }
type SessionStore ¶
type SettingsAuthenticatorService ¶
type SettingsAuthenticatorService interface {
List(ctx context.Context, userID string, filters ...authenticator.Filter) ([]*authenticator.Info, error)
}
type SettingsAuthorizationService ¶
type SettingsAuthorizationService interface { GetByID(ctx context.Context, id string) (*oauth.Authorization, error) ListByUser(ctx context.Context, userID string, filters ...oauth.AuthorizationFilter) ([]*oauth.Authorization, error) Delete(ctx context.Context, a *oauth.Authorization) error }
type SettingsBiometricHandler ¶
type SettingsBiometricHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Identities SettingsIdentityService }
func (*SettingsBiometricHandler) GetData ¶
func (h *SettingsBiometricHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsBiometricHandler) ServeHTTP ¶
func (h *SettingsBiometricHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsBiometricViewModel ¶
type SettingsBiometricViewModel struct {
BiometricIdentities []*BiometricIdentity
}
type SettingsChangePasswordHandler ¶
type SettingsChangePasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer PasswordPolicy PasswordPolicy }
func (*SettingsChangePasswordHandler) GetData ¶
func (h *SettingsChangePasswordHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsChangePasswordHandler) ServeHTTP ¶
func (h *SettingsChangePasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsChangeSecondaryPasswordHandler ¶
type SettingsChangeSecondaryPasswordHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer PasswordPolicy PasswordPolicy }
func (*SettingsChangeSecondaryPasswordHandler) GetData ¶
func (h *SettingsChangeSecondaryPasswordHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsChangeSecondaryPasswordHandler) ServeHTTP ¶
func (h *SettingsChangeSecondaryPasswordHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsDeleteAccountAuthenticationInfoService ¶
type SettingsDeleteAccountAuthenticationInfoService interface {
Save(ctx context.Context, entry *authenticationinfo.Entry) (err error)
}
type SettingsDeleteAccountHandler ¶
type SettingsDeleteAccountHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer AccountDeletion *config.AccountDeletionConfig Clock clock.Clock Users SettingsDeleteAccountUserService Cookies CookieManager OAuthSessions SettingsDeleteAccountOAuthSessionService Sessions SettingsDeleteAccountSessionStore SessionCookie webapp.SessionCookieDef AuthenticationInfoService SettingsDeleteAccountAuthenticationInfoService }
func (*SettingsDeleteAccountHandler) GetData ¶
func (h *SettingsDeleteAccountHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsDeleteAccountHandler) ServeHTTP ¶
func (h *SettingsDeleteAccountHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsDeleteAccountSuccessHandler ¶
type SettingsDeleteAccountSuccessHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer AccountDeletion *config.AccountDeletionConfig Clock clock.Clock UIInfoResolver SettingsDeleteAccountSuccessUIInfoResolver AuthenticationInfoService SettingsDeleteAccountSuccessAuthenticationInfoService }
func (*SettingsDeleteAccountSuccessHandler) GetData ¶
func (h *SettingsDeleteAccountSuccessHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsDeleteAccountSuccessHandler) ServeHTTP ¶
func (h *SettingsDeleteAccountSuccessHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsDeleteAccountSuccessUIInfoResolver ¶
type SettingsDeleteAccountSuccessUIInfoResolver interface {
SetAuthenticationInfoInQuery(redirectURI string, e *authenticationinfo.Entry) string
}
type SettingsHandler ¶
type SettingsHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler SettingsViewModel *viewmodels.SettingsViewModeler SettingsProfileViewModel *viewmodels.SettingsProfileViewModeler Renderer Renderer Identities SettingsIdentityService Verification SettingsVerificationService AccountDeletion *config.AccountDeletionConfig AccountAnonymization *config.AccountAnonymizationConfig TutorialCookie TutorialCookie }
func (*SettingsHandler) GetData ¶
func (h *SettingsHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsHandler) ServeHTTP ¶
func (h *SettingsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsIdentityHandler ¶
type SettingsIdentityHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler Renderer Renderer Identities SettingsIdentityService Verification SettingsVerificationService AccountDeletion *config.AccountDeletionConfig }
func (*SettingsIdentityHandler) GetData ¶
func (h *SettingsIdentityHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsIdentityHandler) ServeHTTP ¶
func (h *SettingsIdentityHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsIdentityService ¶
type SettingsIdentityViewModel ¶
type SettingsIdentityViewModel struct { VerificationStatuses map[string][]verification.ClaimStatus AccountDeletionAllowed bool }
type SettingsImplementationSwitcherHandler ¶
func (*SettingsImplementationSwitcherHandler) ServeHTTP ¶
func (h *SettingsImplementationSwitcherHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsImplementationSwitcherMiddleware ¶
type SettingsImplementationSwitcherMiddleware struct {
UIImplementationService SettingsImplementationSwitcherMiddlewareUIImplementationService
}
type SettingsImplementationSwitcherMiddlewareUIImplementationService ¶
type SettingsImplementationSwitcherMiddlewareUIImplementationService interface {
GetSettingsUIImplementation() config.SettingsUIImplementation
}
type SettingsMFAHandler ¶
type SettingsMFAHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler SettingsViewModel *viewmodels.SettingsViewModeler Renderer Renderer MFA SettingsMFAService }
func (*SettingsMFAHandler) ServeHTTP ¶
func (h *SettingsMFAHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsMFAService ¶
type SettingsOAuthStateStore ¶
type SettingsOAuthStateStore interface {
GenerateState(ctx context.Context, state *webappoauth.WebappOAuthState) (stateToken string, err error)
}
type SettingsOOBOTPHandler ¶
type SettingsOOBOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Authenticators SettingsAuthenticatorService }
func (*SettingsOOBOTPHandler) GetData ¶
func (h *SettingsOOBOTPHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsOOBOTPHandler) ServeHTTP ¶
func (h *SettingsOOBOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsOOBOTPViewModel ¶
type SettingsOOBOTPViewModel struct { OOBAuthenticatorType model.AuthenticatorType Authenticators []*authenticator.Info }
type SettingsPasskeyHandler ¶
type SettingsPasskeyHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Identities SettingsIdentityService }
func (*SettingsPasskeyHandler) GetData ¶
func (h *SettingsPasskeyHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsPasskeyHandler) ServeHTTP ¶
func (h *SettingsPasskeyHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsProfileEditHandler ¶
type SettingsProfileEditHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler SettingsProfileViewModel *viewmodels.SettingsProfileViewModeler Renderer Renderer Users SettingsProfileEditUserService StdAttrs SettingsProfileEditStdAttrsService CustomAttrs SettingsProfileEditCustomAttrsService }
func (*SettingsProfileEditHandler) GetData ¶
func (h *SettingsProfileEditHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsProfileEditHandler) ServeHTTP ¶
func (h *SettingsProfileEditHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsProfileHandler ¶
type SettingsProfileHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler SettingsProfileViewModel *viewmodels.SettingsProfileViewModeler Renderer Renderer }
func (*SettingsProfileHandler) ServeHTTP ¶
func (h *SettingsProfileHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsRecoveryCodeHandler ¶
type SettingsRecoveryCodeHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Authentication *config.AuthenticationConfig MFA SettingsMFAService }
func (*SettingsRecoveryCodeHandler) GetData ¶
func (h *SettingsRecoveryCodeHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsRecoveryCodeHandler) ServeHTTP ¶
func (h *SettingsRecoveryCodeHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsRecoveryCodeViewModel ¶
type SettingsRecoveryCodeViewModel struct {
RecoveryCodes []string
}
type SettingsSessionListingService ¶
type SettingsSessionListingService interface {
FilterForDisplay(ctx context.Context, sessions []session.ListableSession, currentSession session.ResolvedSession) ([]*sessionlisting.Session, error)
}
type SettingsSessionManager ¶
type SettingsSessionManager interface { List(ctx context.Context, userID string) ([]session.ListableSession, error) Get(ctx context.Context, id string) (session.ListableSession, error) RevokeWithEvent(ctx context.Context, s session.SessionBase, isTermination bool, isAdminAPI bool) error TerminateAllExcept(ctx context.Context, userID string, currentSession session.ResolvedSession, isAdminAPI bool) error }
type SettingsSessionsHandler ¶
type SettingsSessionsHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Sessions SettingsSessionManager Authorizations SettingsAuthorizationService OAuthConfig *config.OAuthConfig SessionListing SettingsSessionListingService }
func (*SettingsSessionsHandler) GetData ¶
func (h *SettingsSessionsHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter, s session.ResolvedSession) (map[string]interface{}, error)
func (*SettingsSessionsHandler) ServeHTTP ¶
func (h *SettingsSessionsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsSessionsViewModel ¶
type SettingsSessionsViewModel struct { CurrentSessionID string Sessions []*sessionlisting.Session Authorizations []Authorization }
type SettingsTOTPHandler ¶
type SettingsTOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer Authenticators SettingsAuthenticatorService }
func (*SettingsTOTPHandler) GetData ¶
func (h *SettingsTOTPHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*SettingsTOTPHandler) ServeHTTP ¶
func (h *SettingsTOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SettingsTOTPViewModel ¶
type SettingsTOTPViewModel struct {
Authenticators []*authenticator.Info
}
type SettingsVerificationService ¶
type SettingsVerificationService interface {
GetVerificationStatuses(ctx context.Context, is []*identity.Info) (map[string][]verification.ClaimStatus, error)
}
type SetupLoginLinkOTPHandler ¶
type SetupLoginLinkOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*SetupLoginLinkOTPHandler) GetData ¶
func (h *SetupLoginLinkOTPHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*SetupLoginLinkOTPHandler) ServeHTTP ¶
func (h *SetupLoginLinkOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SetupLoginLinkOTPNode ¶
type SetupLoginLinkOTPNode interface { }
type SetupOOBOTPHandler ¶
type SetupOOBOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*SetupOOBOTPHandler) GetData ¶
func (h *SetupOOBOTPHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph, oobAuthenticatorType model.AuthenticatorType) (map[string]interface{}, error)
func (*SetupOOBOTPHandler) ServeHTTP ¶
func (h *SetupOOBOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SetupOOBOTPNode ¶
type SetupOOBOTPNode interface {
IsOOBAuthenticatorTypeAllowed(oobAuthenticatorType model.AuthenticatorType) (bool, error)
}
type SetupOOBOTPViewModel ¶
type SetupOOBOTPViewModel struct { // OOBAuthenticatorType is either AuthenticatorTypeOOBSMS or AuthenticatorTypeOOBEmail. OOBAuthenticatorType model.AuthenticatorType AlternativeSteps []viewmodels.AlternativeStep }
func NewSetupOOBOTPViewModel ¶
func NewSetupOOBOTPViewModel(session *webapp.Session, graph *interaction.Graph, oobAuthenticatorType model.AuthenticatorType, alternatives *viewmodels.AlternativeStepsViewModel) (*SetupOOBOTPViewModel, error)
type SetupRecoveryCodeHandler ¶
type SetupRecoveryCodeHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*SetupRecoveryCodeHandler) GetData ¶
func (h *SetupRecoveryCodeHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*SetupRecoveryCodeHandler) MakeViewModel ¶
func (h *SetupRecoveryCodeHandler) MakeViewModel(graph *interaction.Graph) SetupRecoveryCodeViewModel
func (*SetupRecoveryCodeHandler) ServeHTTP ¶
func (h *SetupRecoveryCodeHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SetupRecoveryCodeNode ¶
type SetupRecoveryCodeNode interface {
GetRecoveryCodes() []string
}
type SetupRecoveryCodeViewModel ¶
type SetupRecoveryCodeViewModel struct {
RecoveryCodes []string
}
type SetupTOTPHandler ¶
type SetupTOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer Clock clock.Clock Endpoints SetupTOTPEndpointsProvider }
func (*SetupTOTPHandler) GetData ¶
func (h *SetupTOTPHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*SetupTOTPHandler) MakeViewModel ¶
func (h *SetupTOTPHandler) MakeViewModel(session *webapp.Session, graph *interaction.Graph) (*SetupTOTPViewModel, error)
func (*SetupTOTPHandler) ServeHTTP ¶
func (h *SetupTOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SetupTOTPNode ¶
type SetupTOTPNode interface {
GetTOTPAuthenticator() *authenticator.Info
}
type SetupTOTPViewModel ¶
type SetupTOTPViewModel struct { ImageURI htmltemplate.URL Secret string AlternativeSteps []viewmodels.AlternativeStep }
type SetupWhatsappOTPHandler ¶
type SetupWhatsappOTPHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*SetupWhatsappOTPHandler) GetData ¶
func (h *SetupWhatsappOTPHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*SetupWhatsappOTPHandler) ServeHTTP ¶
func (h *SetupWhatsappOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SignupHandler ¶
type SignupHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler FormPrefiller *FormPrefiller Renderer Renderer MeterService MeterService TutorialCookie TutorialCookie }
func (*SignupHandler) GetData ¶
func (h *SignupHandler) GetData(r *http.Request, rw http.ResponseWriter, graph *interaction.Graph) (map[string]interface{}, error)
func (*SignupHandler) ServeHTTP ¶
func (h *SignupHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type SignupViewModel ¶
func NewSignupViewModel ¶
func NewSignupViewModel(r *http.Request) SignupViewModel
type TesterAuthTokensIssuer ¶
type TesterAuthTokensIssuer interface { IssueTokensForAuthorizationCode( ctx context.Context, client *config.OAuthClientConfig, r protocol.TokenRequest, ) (protocol.TokenResponse, error) IssueAppSessionToken(ctx context.Context, refreshToken string) (string, *oauth.AppSessionToken, error) }
type TesterCookieManager ¶
type TesterHandler ¶
type TesterHandler struct { AppID config.AppID ControllerFactory ControllerFactory OauthEndpointsProvider oauth.EndpointsProvider TesterEndpointsProvider tester.EndpointsProvider TesterService TesterService TesterTokenIssuer TesterAuthTokensIssuer OAuthClientResolver *oauthclient.Resolver AppSessionTokenService TesterAppSessionTokenService CookieManager TesterCookieManager Renderer Renderer BaseViewModel *viewmodels.BaseViewModeler UserInfoProvider TesterUserInfoProvider OfflineGrants TesterOfflineGrantService }
func (*TesterHandler) ServeHTTP ¶
func (h *TesterHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type TesterService ¶
type TesterService interface { GetToken( ctx context.Context, appID config.AppID, tokenID string, consume bool, ) (*tester.TesterToken, error) CreateResult( ctx context.Context, appID config.AppID, result *tester.TesterResult, ) (*tester.TesterResult, error) GetResult( ctx context.Context, appID config.AppID, resultID string, ) (*tester.TesterResult, error) }
type TesterState ¶
type TesterState struct {
Token string `json:"token"`
}
type TesterUserInfoProvider ¶
type TesterViewModel ¶
type TutorialCookie ¶
type TutorialCookie interface {
Pop(r *http.Request, rw http.ResponseWriter, name httputil.TutorialCookieName) bool
}
type UsePasskeyHandler ¶
type UsePasskeyHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer }
func (*UsePasskeyHandler) GetData ¶
func (h *UsePasskeyHandler) GetData(r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*UsePasskeyHandler) ServeHTTP ¶
func (h *UsePasskeyHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type UserProfile ¶
type UserProfile map[string]interface{}
func GetUserProfile ¶
func GetUserProfile(user *model.User) UserProfile
type VerifyIdentityHandler ¶
type VerifyIdentityHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer FlashMessage FlashMessage OTPCodeService OTPCodeService Clock clock.Clock Config *config.AppConfig }
func (*VerifyIdentityHandler) GetData ¶
func (h *VerifyIdentityHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter, action string, maybeSession *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*VerifyIdentityHandler) GetErrorData ¶
func (h *VerifyIdentityHandler) GetErrorData(r *http.Request, rw http.ResponseWriter, err error) (map[string]interface{}, error)
func (*VerifyIdentityHandler) ServeHTTP ¶
func (h *VerifyIdentityHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type VerifyIdentityNode ¶
type VerifyIdentitySuccessHandler ¶
type VerifyIdentitySuccessHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*VerifyIdentitySuccessHandler) GetData ¶
func (h *VerifyIdentitySuccessHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*VerifyIdentitySuccessHandler) ServeHTTP ¶
func (h *VerifyIdentitySuccessHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type VerifyIdentityViewModel ¶
type VerifyLoginLinkOTPHandler ¶
type VerifyLoginLinkOTPHandler struct { LoginLinkOTPCodeService OTPCodeService GlobalSessionServiceFactory *GlobalSessionServiceFactory ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AuthenticationViewModel *viewmodels.AuthenticationViewModeler Renderer Renderer WorkflowEvents WorkflowWebsocketEventStore AuthenticationFlowEvents AuthenticationFlowWebsocketEventStore Config *config.AppConfig }
func (*VerifyLoginLinkOTPHandler) GetData ¶
func (h *VerifyLoginLinkOTPHandler) GetData(r *http.Request, rw http.ResponseWriter) (map[string]interface{}, error)
func (*VerifyLoginLinkOTPHandler) ServeHTTP ¶
func (h *VerifyLoginLinkOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type VerifyLoginLinkOTPViewModel ¶
type VerifyLoginLinkOTPViewModel struct { Code string StateQuery LoginLinkOTPPageQueryState }
func NewVerifyLoginLinkOTPViewModel ¶
func NewVerifyLoginLinkOTPViewModel(r *http.Request) VerifyLoginLinkOTPViewModel
type WeChatAuthViewModel ¶
type WeChatAuthViewModel struct { ImageURI htmltemplate.URL WeChatRedirectURI htmltemplate.URL }
type WebappOAuthClientResolver ¶
type WebappOAuthClientResolver interface {
ResolveClient(clientID string) *config.OAuthClientConfig
}
type WebsocketHandler ¶
type WebsocketHandler struct { AppID config.AppID LoggerFactory *log.Factory RedisHandle *appredis.Handle Publisher *Publisher }
func (*WebsocketHandler) Accept ¶
func (h *WebsocketHandler) Accept(r *http.Request) (channelName string, err error)
func (*WebsocketHandler) OnRedisSubscribe ¶
func (h *WebsocketHandler) OnRedisSubscribe(r *http.Request) error
func (*WebsocketHandler) ServeHTTP ¶
func (h *WebsocketHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type WebsocketMessage ¶
type WebsocketMessage struct {
Kind WebsocketMessageKind `json:"kind"`
}
type WebsocketMessageKind ¶
type WebsocketMessageKind string
type WechatAuthHandler ¶
type WechatAuthHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler Renderer Renderer }
func (*WechatAuthHandler) GetData ¶
func (h *WechatAuthHandler) GetData(ctx context.Context, r *http.Request, w http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*WechatAuthHandler) ServeHTTP ¶
func (h *WechatAuthHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type WechatCallbackHandler ¶
type WechatCallbackHandler struct { ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler JSON JSONResponseWriter OAuthStateStore WechatCallbackHandlerOAuthStateStore }
WechatCallbackHandler receives WeChat authorization result (code or error) and set it into the web session. Refreshing original auth ui WeChat auth page (/sso/wechat/auth/:alias) will get and consume the result from the web session.
In web, user will use their WeChat app to scan the qr code in auth ui WeChat auth page, then they will complete authorization in their WeChat app and redirect to this endpoint through WeChat. This endpoint will set the result in web session and instruct user go back to the original auth ui. The original auth ui will refresh and proceed.
In native app, the app will receive delegate function call when user click login in with WeChat. Developer needs to implement and obtain WeChat authorization code through native WeChat SDK. After obtaining the code, developer needs to call this endpoint with code through Authgear SDK. At this moment, user can click the proceed button in auth ui WeChat auth page to continue.
func (*WechatCallbackHandler) ServeHTTP ¶
func (h *WechatCallbackHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type WechatCallbackHandlerOAuthStateStore ¶
type WechatCallbackHandlerOAuthStateStore interface {
PopAndRecoverState(ctx context.Context, stateToken string) (state *webappoauth.WebappOAuthState, err error)
}
type WhatsappOTPAuthnNode ¶
type WhatsappOTPAuthnNode interface {
GetAuthenticatorIndex() int
}
type WhatsappOTPHandler ¶
type WhatsappOTPHandler struct { Config *config.AppConfig Clock clock.Clock ControllerFactory ControllerFactory BaseViewModel *viewmodels.BaseViewModeler AlternativeStepsViewModel *viewmodels.AlternativeStepsViewModeler Renderer Renderer OTPCodeService OTPCodeService FlashMessage FlashMessage }
func (*WhatsappOTPHandler) GetData ¶
func (h *WhatsappOTPHandler) GetData(ctx context.Context, r *http.Request, rw http.ResponseWriter, session *webapp.Session, graph *interaction.Graph) (map[string]interface{}, error)
func (*WhatsappOTPHandler) ServeHTTP ¶
func (h *WhatsappOTPHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type WhatsappOTPNode ¶
type WhatsappOTPNode interface { GetWhatsappOTPLength() int GetPhone() string GetOTPKindFactory() otp.DeprecatedKindFactory }
type WhatsappOTPViewModel ¶
Source Files ¶
- account_status.go
- alternatives.go
- app_static_assets.go
- auth_entry_point_middleware.go
- authflow_account_status.go
- authflow_change_password.go
- authflow_controller.go
- authflow_create_password.go
- authflow_enter_oob_otp.go
- authflow_enter_password.go
- authflow_enter_recovery_code.go
- authflow_enter_totp.go
- authflow_fallback.go
- authflow_finish_flow.go
- authflow_forgot_password.go
- authflow_forgot_password_otp.go
- authflow_forgot_password_success.go
- authflow_login.go
- authflow_no_authenticator.go
- authflow_oob_otp_link.go
- authflow_promote.go
- authflow_prompt_create_passkey.go
- authflow_reauth.go
- authflow_reset_password.go
- authflow_reset_password_success.go
- authflow_setup_oob_otp.go
- authflow_setup_totp.go
- authflow_signup.go
- authflow_terminate_other_sessions.go
- authflow_use_passkey.go
- authflow_view_recovery_code.go
- authflow_wechat.go
- authflow_whatsapp_otp.go
- bot_protection.go
- change_password.go
- change_secondary_password.go
- client.go
- confirm_terminate_other_sessions.go
- confirm_web3_account.go
- consent.go
- controller.go
- cookie.go
- create_passkey.go
- create_password.go
- csrf_error_instruction.go
- csrf_middleware.go
- deps.go
- enter_login_id.go
- enter_oob_otp.go
- enter_password.go
- enter_recovery_code.go
- enter_totp.go
- error.go
- error_feature_disabled.go
- error_renderer.go
- forgot_password.go
- forgot_password_success.go
- generated_static_assets.go
- global_session_service.go
- identity.go
- implementation_switcher.go
- interaction.go
- login.go
- login_link.go
- login_link_otp.go
- logout.go
- not_found.go
- oauth_entrypoint.go
- otp.go
- panic_middleware.go
- passkey_creation_options.go
- passkey_request_options.go
- promote.go
- prompt_create_passkey.go
- publisher.go
- reauth.go
- renderer.go
- reset_password.go
- reset_password_success.go
- return.go
- root.go
- select_account.go
- setting_implementation_switcher.go
- settings.go
- settings_biometric.go
- settings_change_password.go
- settings_change_secondary_password.go
- settings_delete_account.go
- settings_delete_account_success.go
- settings_identity.go
- settings_mfa.go
- settings_oob_otp.go
- settings_passkey.go
- settings_profile.go
- settings_profile_edit.go
- settings_recovery_code.go
- settings_sessions.go
- settings_totp.go
- setup_login_link_otp.go
- setup_oob_otp.go
- setup_recovery_code.go
- setup_totp.go
- setup_whatsapp_otp.go
- signup.go
- sso_callback.go
- template.go
- tester.go
- turbo_response_writer.go
- use_passkey.go
- user_profile.go
- util.go
- verify_identity.go
- verify_identity_success.go
- verify_login_link.go
- websocket.go
- wechat_auth.go
- wechat_callback.go
- whatsapp_otp.go
- wire_gen.go