Versions in this module Expand all Collapse all v1 v1.4.0 Aug 15, 2026 v1.3.0 Jul 22, 2026 v1.2.0 Jun 28, 2026 v1.1.2 Jun 28, 2026 Changes in this version + const BurstRateType + const IntervalRateType + func FindPublicKeyByKid(kid string, config *JWTConfiguration) (any, error) + func GetSigningAlg(k jwk.Key) jwt.SigningMethod + func GetSigningJwk(config *JWTConfiguration) (jwk.Key, error) + func GetSigningKey(k jwk.Key) (any, error) + func LoadDirectory(configDir string) error + func LoadFile(filename string) error + type APIConfiguration struct + Endpoint string + ExternalURL string + Host string + MaxRequestDuration time.Duration + Port string + RequestIDHeader string + func (a *APIConfiguration) Validate() error + type AnonymousProviderConfiguration struct + Enabled bool + type AuditLogConfiguration struct + DisablePostgres bool + type CORSConfiguration struct + AllowedHeaders []string + func (c *CORSConfiguration) AllAllowedHeaders(defaults []string) []string + type CaptchaConfiguration struct + Enabled bool + Provider string + Secret string + func (c *CaptchaConfiguration) Validate() error + type CustomOAuthConfiguration struct + Enabled bool + MaxProviders int + type DBAdvisorConfiguration struct + Enabled bool + ObservationInterval time.Duration + SamplingInterval time.Duration + type DBConfiguration struct + Advisor DBAdvisorConfiguration + CleanupEnabled bool + ConnMaxIdleTime time.Duration + ConnMaxLifetime time.Duration + ConnPercentage int + Driver string + HealthCheckPeriod time.Duration + MaxIdlePoolSize int + MaxPoolSize int + MigrationsPath string + Namespace string + URL string + func (c *DBConfiguration) Validate() error + type DatabaseEncryptionConfiguration struct + DecryptionKeys map[string]string + Encrypt bool + EncryptionKey string + EncryptionKeyID string + func (c *DatabaseEncryptionConfiguration) Validate() error + type EmailContentConfiguration struct + Confirmation string + EmailChange string + EmailChangedNotification string + IdentityLinkedNotification string + IdentityUnlinkedNotification string + Invite string + MFAFactorEnrolledNotification string + MFAFactorUnenrolledNotification string + MagicLink string + PasswordChangedNotification string + PhoneChangedNotification string + Reauthentication string + Recovery string + type EmailProviderConfiguration struct + AuthorizedAddresses []string + Enabled bool + MagicLinkEnabled bool + type EthereumConfiguration struct + Enabled bool + MaximumValidityDuration time.Duration + type ExperimentalConfiguration struct + ProvidersWithOwnLinkingDomain []string + type ExtensibilityPointConfiguration struct + Enabled bool + HTTPHookSecrets HTTPHookSecrets + HookName string + URI string + func (e *ExtensibilityPointConfiguration) PopulateExtensibilityPoint() error + func (e *ExtensibilityPointConfiguration) ValidateExtensibilityPoint() error + type GlobalConfiguration struct + API APIConfiguration + AuditLog AuditLogConfiguration + CORS CORSConfiguration + CustomOAuth CustomOAuthConfiguration + DB DBConfiguration + DisableSignup bool + Experimental ExperimentalConfiguration + External ProviderConfiguration + Hook HookConfiguration + IndexWorker IndexWorkerConfiguration + JWT JWTConfiguration + Logging LoggingConfig + MFA MFAConfiguration + Mailer MailerConfiguration + Metrics MetricsConfig + OAuthServer OAuthServerConfiguration + OperatorToken string + Passkey PasskeyConfiguration + Password PasswordConfiguration + Profiler ProfilerConfig + RateLimitAnonymousUsers float64 + RateLimitEmailSent Rate + RateLimitHeader string + RateLimitOAuthDynamicClientRegister float64 + RateLimitOtp float64 + RateLimitSmsSent Rate + RateLimitSso float64 + RateLimitTokenRefresh float64 + RateLimitVerify float64 + RateLimitWeb3 float64 + Reloading ReloadingConfiguration + SAML SAMLConfiguration + SMTP SMTPConfiguration + Security SecurityConfiguration + Sessions SessionsConfiguration + SiteURL string + Sms SmsProviderConfiguration + Tracing TracingConfig + URIAllowList []string + URIAllowListMap map[string]glob.Glob + WebAuthn WebAuthnConfiguration + func LoadGlobal(filename string) (*GlobalConfiguration, error) + func LoadGlobalFromEnv() (*GlobalConfiguration, error) + func (c *GlobalConfiguration) Validate() error + func (config *GlobalConfiguration) ApplyDefaults() error + type HIBPBloomConfiguration struct + Enabled bool + FalsePositives float64 + Items uint + type HIBPConfiguration struct + Bloom HIBPBloomConfiguration + Enabled bool + FailClosed bool + UserAgent string + type HTTPHookSecrets []string + func (h *HTTPHookSecrets) Decode(value string) error + type HookConfiguration struct + AfterUserCreated ExtensibilityPointConfiguration + BeforeUserCreated ExtensibilityPointConfiguration + CustomAccessToken ExtensibilityPointConfiguration + MFAVerificationAttempt ExtensibilityPointConfiguration + PasswordVerificationAttempt ExtensibilityPointConfiguration + SendEmail ExtensibilityPointConfiguration + SendSMS ExtensibilityPointConfiguration + func (h *HookConfiguration) Validate() error + type IndexWorkerConfiguration struct + EnsureUserSearchIndexesExist bool + MaxUsersThreshold int64 + type JWTConfiguration struct + AdminGroupName string + AdminRoles []string + Aud string + DefaultGroupName string + Exp int + Issuer string + KeyID string + Keys JwtKeysDecoder + Secret string + ValidMethods []string + type JwkInfo struct + PrivateKey jwk.Key + PublicKey jwk.Key + type JwtKeysDecoder map[string]JwkInfo + func (j *JwtKeysDecoder) Decode(value string) error + func (j *JwtKeysDecoder) Validate() error + type LoggingConfig struct + DisableColors bool + Fields map[string]interface{} + File string + Level string + QuoteEmptyFields bool + SQL string + TSFormat string + type MFAConfiguration struct + ChallengeExpiryDuration float64 + FactorExpiryDuration time.Duration + MaxEnrolledFactors float64 + MaxVerifiedFactors int + Phone PhoneFactorTypeConfiguration + RateLimitChallengeAndVerify float64 + TOTP TOTPFactorTypeConfiguration + WebAuthn MFAFactorTypeConfiguration + type MFAFactorTypeConfiguration struct + EnrollEnabled bool + VerifyEnabled bool + type MailerConfiguration struct + AllowUnverifiedEmailSignIns bool + Autoconfirm bool + EmailBackgroundSending bool + EmailValidationBlockedMX string + EmailValidationExtended bool + EmailValidationServiceHeaders string + EmailValidationServiceURL string + ExternalHosts []string + MailerProvider string + Notifications NotificationsConfiguration + OtpExp uint + OtpLength int + SecureEmailChangeEnabled bool + Subjects EmailContentConfiguration + TemplateMaxAge time.Duration + TemplateMaxSize int + TemplateReloadingEnabled bool + TemplateReloadingMaxIdle time.Duration + TemplateRetryInterval time.Duration + Templates EmailContentConfiguration + URLPaths EmailContentConfiguration + func (c *MailerConfiguration) GetEmailValidationBlockedMXRecords() map[string]bool + func (c *MailerConfiguration) GetEmailValidationServiceHeaders() map[string][]string + func (c *MailerConfiguration) Validate() error + type MessagebirdProviderConfiguration struct + AccessKey string + Originator string + func (t *MessagebirdProviderConfiguration) Validate() error + type MetricsConfig struct + Enabled bool + Exporter MetricsExporter + ExporterProtocol string + PrometheusListenHost string + PrometheusListenPort string + func (mc MetricsConfig) Validate() error + type MetricsExporter = string + const OpenTelemetryMetrics + const Prometheus + type NotificationsConfiguration struct + EmailChangedEnabled bool + IdentityLinkedEnabled bool + IdentityUnlinkedEnabled bool + MFAFactorEnrolledEnabled bool + MFAFactorUnenrolledEnabled bool + PasswordChangedEnabled bool + PhoneChangedEnabled bool + type OAuthProviderConfiguration struct + ApiURL string + ClientID []string + EmailOptional bool + Enabled bool + RedirectURI string + Secret string + SkipNonceCheck bool + URL string + func (o *OAuthProviderConfiguration) ValidateOAuth() error + type OAuthServerConfiguration struct + AllowDynamicRegistration bool + AuthorizationPath string + AuthorizationTTL time.Duration + DefaultScope string + Enabled bool + type PasskeyConfiguration struct + Enabled bool + MaxPasskeysPerUser int + type PasswordConfiguration struct + HIBP HIBPConfiguration + MinLength int + RequiredCharacters PasswordRequiredCharacters + type PasswordRequiredCharacters []string + func (v *PasswordRequiredCharacters) Decode(value string) error + type PhoneFactorTypeConfiguration struct + MaxFrequency time.Duration + OtpLength int + SMSTemplate *template.Template + Template string + type PhoneProviderConfiguration struct + Enabled bool + type ProfilerConfig struct + Enabled bool + Host string + Port string + type ProviderConfiguration struct + AllowedIdTokenIssuers []string + AnonymousUsers AnonymousProviderConfiguration + Apple OAuthProviderConfiguration + Azure OAuthProviderConfiguration + Bitbucket OAuthProviderConfiguration + Discord OAuthProviderConfiguration + Email EmailProviderConfiguration + Facebook OAuthProviderConfiguration + Figma OAuthProviderConfiguration + FlowStateExpiryDuration time.Duration + Fly OAuthProviderConfiguration + Github OAuthProviderConfiguration + Gitlab OAuthProviderConfiguration + Google OAuthProviderConfiguration + IosBundleId string + Kakao OAuthProviderConfiguration + Keycloak OAuthProviderConfiguration + Linkedin OAuthProviderConfiguration + LinkedinOIDC OAuthProviderConfiguration + Notion OAuthProviderConfiguration + OIDCProviderCacheTTL time.Duration + Phone PhoneProviderConfiguration + RedirectURL string + Slack OAuthProviderConfiguration + SlackOIDC OAuthProviderConfiguration + Snapchat OAuthProviderConfiguration + Spotify OAuthProviderConfiguration + Twitch OAuthProviderConfiguration + Twitter OAuthProviderConfiguration + VercelMarketplace OAuthProviderConfiguration + Web3Ethereum EthereumConfiguration + Web3Solana SolanaConfiguration + WorkOS OAuthProviderConfiguration + X OAuthProviderConfiguration + Zoom OAuthProviderConfiguration + type Rate struct + Events float64 + OverTime time.Duration + func (r *Rate) Decode(value string) error + func (r *Rate) GetRateType() string + func (r *Rate) String() string + type ReloadingConfiguration struct + GracePeriodInterval time.Duration + NotifyEnabled bool + PollerEnabled bool + PollerInterval time.Duration + SignalEnabled bool + SignalNumber int + type SAMLConfiguration struct + AllowEncryptedAssertions bool + Certificate *x509.Certificate + Enabled bool + ExternalURL string + PrivateKey string + RSAPrivateKey *rsa.PrivateKey + RSAPublicKey *rsa.PublicKey + RateLimitAssertion float64 + RelayStateValidityPeriod time.Duration + func (c *SAMLConfiguration) GoString() string + func (c *SAMLConfiguration) PopulateFields(externalURL string) error + func (c *SAMLConfiguration) String() string + func (c *SAMLConfiguration) Validate() error + type SMTPConfiguration struct + AdminEmail string + Headers string + Host string + LoggingEnabled bool + MaxFrequency time.Duration + Pass string + Port int + SenderName string + User string + func (c *SMTPConfiguration) FromAddress() string + func (c *SMTPConfiguration) NormalizedHeaders() map[string][]string + func (c *SMTPConfiguration) Validate() error + type SecurityConfiguration struct + Captcha CaptchaConfiguration + DBEncryption DatabaseEncryptionConfiguration + ManualLinkingEnabled bool + RefreshTokenAlgorithmVersion int + RefreshTokenAllowReuse bool + RefreshTokenReuseInterval int + RefreshTokenRotationEnabled bool + RefreshTokenUpgradePercentage int + SbForwardedForEnabled bool + UpdatePasswordRequireCurrentPassword bool + UpdatePasswordRequireReauthentication bool + func (c *SecurityConfiguration) Validate() error + type SessionsConfiguration struct + AllowLowAAL *time.Duration + InactivityTimeout *time.Duration + SinglePerUser bool + Tags []string + Timebox *time.Duration + func (c *SessionsConfiguration) Validate() error + type SmsProviderConfiguration struct + Autoconfirm bool + MaxFrequency time.Duration + Messagebird MessagebirdProviderConfiguration + OtpExp uint + OtpLength int + Provider string + SMSTemplate *template.Template + Template string + TestOTP map[string]string + TestOTPValidUntil Time + Textlocal TextlocalProviderConfiguration + Twilio TwilioProviderConfiguration + TwilioVerify TwilioVerifyProviderConfiguration + Vonage VonageProviderConfiguration + func (c *SmsProviderConfiguration) GetTestOTP(phone string, now time.Time) (string, bool) + func (t *SmsProviderConfiguration) IsTwilioVerifyProvider() bool + type SolanaConfiguration struct + Enabled bool + MaximumValidityDuration time.Duration + type TOTPFactorTypeConfiguration struct + EnrollEnabled bool + VerifyEnabled bool + type TextlocalProviderConfiguration struct + ApiKey string + Sender string + func (t *TextlocalProviderConfiguration) Validate() error + type Time struct + func (t *Time) UnmarshalText(text []byte) error + type TracingConfig struct + Enabled bool + Exporter TracingExporter + ExporterProtocol string + Host string + Port string + ServiceName string + Tags map[string]string + func (tc *TracingConfig) Validate() error + type TracingExporter = string + const OpenTelemetryTracing + type TwilioProviderConfiguration struct + AccountSid string + AuthToken string + ContentSid string + MessageServiceSid string + func (t *TwilioProviderConfiguration) Validate() error + type TwilioVerifyProviderConfiguration struct + AccountSid string + AuthToken string + MessageServiceSid string + func (t *TwilioVerifyProviderConfiguration) Validate() error + type VonageProviderConfiguration struct + ApiKey string + ApiSecret string + From string + func (t *VonageProviderConfiguration) Validate() error + type WebAuthnConfiguration struct + ChallengeExpiryDuration time.Duration + RPDisplayName string + RPID string + RPOrigins []string + func (w *WebAuthnConfiguration) Validate() error