Documentation
¶
Index ¶
- func DecryptNotification(keys goauth.KeyRing, envelope goauth.EncryptedEnvelope) (goauth.Notification, error)
- type EventSink
- func (s *EventSink) DeleteEncrypted(ctx context.Context, eventID string) error
- func (s *EventSink) DeleteExpiredEncrypted(ctx context.Context, before time.Time) (int64, error)
- func (s *EventSink) EnqueueEncrypted(ctx context.Context, event goauth.EncryptedEvent) error
- func (s *EventSink) Events() []goauth.EncryptedEvent
- type Fixture
- type RuntimeOption
- type Store
- func (s *Store) ChallengeAttempts(subjectID goauth.SubjectID, purpose goauth.EmailChallengePurpose) int
- func (s *Store) ChangePassword(ctx context.Context, request goauth.PasswordChangeStoreRequest) (goauth.PasswordChangeStoreResult, error)
- func (s *Store) ConsumePasswordReset(ctx context.Context, request goauth.PasswordResetConsumeRequest) (goauth.PasswordResetConsumeResult, error)
- func (s *Store) ConsumePasswordResetWithPreparation(ctx context.Context, request goauth.PasswordResetConsumeRequest, ...) (goauth.PasswordResetConsumeResult, error)
- func (s *Store) CreateLocalAccount(ctx context.Context, record goauth.LocalAccountRecord) (goauth.Account, error)
- func (s *Store) CreateLocalIdentity(ctx context.Context, record goauth.LocalIdentityRecord) (goauth.Account, error)
- func (s *Store) CreatePasswordReset(ctx context.Context, record goauth.PasswordResetRecord) error
- func (s *Store) CreatePasswordResetForSubject(ctx context.Context, record goauth.PasswordResetRecord) error
- func (s *Store) CreateSSOAccount(ctx context.Context, record goauth.SSOAccountRecord) (goauth.Account, goauth.IdentityLink, error)
- func (s *Store) CreateSession(ctx context.Context, record goauth.SessionRecord) error
- func (s *Store) FindAccount(ctx context.Context, identifier goauth.IdentifierInput) (goauth.Account, error)
- func (s *Store) FindLocalAccount(ctx context.Context, identifier goauth.IdentifierInput) (goauth.LocalAccountRecord, error)
- func (s *Store) GetAccount(ctx context.Context, subjectID goauth.SubjectID) (goauth.Account, error)
- func (s *Store) GetLocalAccount(ctx context.Context, subjectID goauth.SubjectID) (goauth.LocalAccountRecord, error)
- func (s *Store) GetLocalIdentifier(ctx context.Context, subjectID goauth.SubjectID, ...) (goauth.Identifier, error)
- func (s *Store) GetPendingEmailChange(ctx context.Context, subjectID goauth.SubjectID, now time.Time) (goauth.PendingEmailChange, error)
- func (s *Store) GetSubjectLifecycle(ctx context.Context, id goauth.SubjectID) (goauth.SubjectLifecycleView, error)
- func (s *Store) InAuthTransaction(ctx context.Context, fn func(context.Context) error) error
- func (s *Store) IntrospectSession(ctx context.Context, sessionID string) (goauth.SessionSecurity, error)
- func (s *Store) InvalidatePasswordResets(ctx context.Context, subjectID goauth.SubjectID, now time.Time) error
- func (s *Store) IssueEmailChallenge(ctx context.Context, record goauth.EmailChallengeRecord, ...) (goauth.EmailChallengeIssueResult, error)
- func (s *Store) IssueEmailChange(ctx context.Context, record goauth.EmailChangeRecord, ...) (goauth.EmailChangeIssueResult, error)
- func (s *Store) LinkIdentity(ctx context.Context, link goauth.IdentityLink) (goauth.IdentityLink, error)
- func (s *Store) LockAccount(ctx context.Context, id goauth.SubjectID) (goauth.Account, error)
- func (s *Store) PeekRefresh(ctx context.Context, request goauth.RefreshRotationRequest) (goauth.RefreshRotationResult, error)
- func (s *Store) RecordSecurityEvent(ctx context.Context, event goauth.SecurityEvent) error
- func (s *Store) RenameLocalIdentity(ctx context.Context, request goauth.RenameLocalIdentityStoreRequest) (goauth.LocalIdentityView, error)
- func (s *Store) ResolveIdentityLink(ctx context.Context, issuer string, externalSubject string) (goauth.Account, goauth.IdentityLink, error)
- func (s *Store) RetireLocalIdentity(ctx context.Context, request goauth.RetireLocalIdentityStoreRequest) (goauth.SubjectLifecycleView, error)
- func (s *Store) RevokeSession(ctx context.Context, subjectID goauth.SubjectID, sessionID string, ...) (bool, error)
- func (s *Store) RevokeSubjectSessions(ctx context.Context, subjectID goauth.SubjectID, now time.Time) (int64, error)
- func (s *Store) RotateRefresh(ctx context.Context, request goauth.RefreshRotationRequest) (goauth.RefreshRotationResult, error)
- func (s *Store) SetSubjectStatus(ctx context.Context, subjectID goauth.SubjectID, status goauth.SubjectStatus, ...) (goauth.Subject, error)
- func (s *Store) SetTrustedLocalPassword(ctx context.Context, request goauth.TrustedLocalPasswordStoreRequest) (goauth.Account, error)
- func (s *Store) TakeRateLimit(ctx context.Context, request goauth.RateLimitRequest) (goauth.RateLimitResult, error)
- func (s *Store) UpdateBasicProfile(ctx context.Context, subjectID goauth.SubjectID, profile goauth.BasicProfile, ...) (goauth.Account, error)
- func (s *Store) VerifyEmailChallenge(ctx context.Context, request goauth.EmailChallengeVerifyRequest) (goauth.EmailChallengeVerifyResult, error)
- func (s *Store) VerifyEmailChange(ctx context.Context, request goauth.EmailChangeVerifyRequest) (goauth.EmailChangeVerifyResult, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DecryptNotification ¶
func DecryptNotification(keys goauth.KeyRing, envelope goauth.EncryptedEnvelope) (goauth.Notification, error)
Types ¶
type EventSink ¶
type EventSink struct {
// contains filtered or unexported fields
}
func (*EventSink) DeleteEncrypted ¶
func (*EventSink) DeleteExpiredEncrypted ¶
func (*EventSink) EnqueueEncrypted ¶
func (*EventSink) Events ¶
func (s *EventSink) Events() []goauth.EncryptedEvent
type Fixture ¶
type Fixture struct {
Runtime *goauth.Runtime
Store *Store
Events *EventSink
SigningKeys goauth.KeyRing
TokenKeys goauth.KeyRing
EnvelopeKeys goauth.KeyRing
}
func NewRuntime ¶
func NewRuntime(options ...RuntimeOption) (*Fixture, error)
type RuntimeOption ¶
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
func (*Store) ChallengeAttempts ¶
func (*Store) ChangePassword ¶
func (s *Store) ChangePassword( ctx context.Context, request goauth.PasswordChangeStoreRequest, ) (goauth.PasswordChangeStoreResult, error)
func (*Store) ConsumePasswordReset ¶
func (s *Store) ConsumePasswordReset( ctx context.Context, request goauth.PasswordResetConsumeRequest, ) (goauth.PasswordResetConsumeResult, error)
func (*Store) ConsumePasswordResetWithPreparation ¶ added in v0.7.0
func (s *Store) ConsumePasswordResetWithPreparation( ctx context.Context, request goauth.PasswordResetConsumeRequest, prepare func(context.Context, goauth.Account) (string, error), ) (goauth.PasswordResetConsumeResult, error)
ConsumePasswordResetWithPreparation serializes the entire authenticated preparation and mutation while allowing resolver reads through the same scope.
func (*Store) CreateLocalAccount ¶
func (*Store) CreateLocalIdentity ¶ added in v0.6.0
func (*Store) CreatePasswordReset ¶
func (*Store) CreatePasswordResetForSubject ¶ added in v0.7.0
func (*Store) CreateSSOAccount ¶
func (s *Store) CreateSSOAccount( ctx context.Context, record goauth.SSOAccountRecord, ) (goauth.Account, goauth.IdentityLink, error)
func (*Store) CreateSession ¶
func (*Store) FindAccount ¶
func (*Store) FindLocalAccount ¶
func (s *Store) FindLocalAccount( ctx context.Context, identifier goauth.IdentifierInput, ) (goauth.LocalAccountRecord, error)
func (*Store) GetAccount ¶
func (*Store) GetLocalAccount ¶
func (*Store) GetLocalIdentifier ¶ added in v0.6.0
func (s *Store) GetLocalIdentifier( ctx context.Context, subjectID goauth.SubjectID, scheme goauth.IdentifierScheme, ) (goauth.Identifier, error)
func (*Store) GetPendingEmailChange ¶
func (*Store) GetSubjectLifecycle ¶ added in v0.6.0
func (*Store) InAuthTransaction ¶ added in v0.5.0
InAuthTransaction serializes store operations and publishes a private snapshot only on success. The fixture additionally enlists its encrypted event sink.
func (*Store) IntrospectSession ¶
func (*Store) InvalidatePasswordResets ¶ added in v0.7.0
func (s *Store) InvalidatePasswordResets(ctx context.Context, subjectID goauth.SubjectID, now time.Time) error
InvalidatePasswordResets mirrors the managed PostgreSQL helper for fixture hosts. Call it with the same transaction context as the alias mutation.
func (*Store) IssueEmailChallenge ¶
func (s *Store) IssueEmailChallenge( ctx context.Context, record goauth.EmailChallengeRecord, limits goauth.EmailChallengeLimits, ) (goauth.EmailChallengeIssueResult, error)
func (*Store) IssueEmailChange ¶
func (s *Store) IssueEmailChange( ctx context.Context, record goauth.EmailChangeRecord, limits goauth.EmailChallengeLimits, ) (goauth.EmailChangeIssueResult, error)
func (*Store) LinkIdentity ¶
func (s *Store) LinkIdentity(ctx context.Context, link goauth.IdentityLink) (goauth.IdentityLink, error)
func (*Store) LockAccount ¶ added in v0.5.0
func (*Store) PeekRefresh ¶ added in v0.5.0
func (s *Store) PeekRefresh(ctx context.Context, request goauth.RefreshRotationRequest) (goauth.RefreshRotationResult, error)
func (*Store) RecordSecurityEvent ¶ added in v0.5.0
func (*Store) RenameLocalIdentity ¶ added in v0.6.0
func (s *Store) RenameLocalIdentity( ctx context.Context, request goauth.RenameLocalIdentityStoreRequest, ) (goauth.LocalIdentityView, error)
func (*Store) ResolveIdentityLink ¶
func (*Store) RetireLocalIdentity ¶ added in v0.6.0
func (s *Store) RetireLocalIdentity( ctx context.Context, request goauth.RetireLocalIdentityStoreRequest, ) (goauth.SubjectLifecycleView, error)
func (*Store) RevokeSession ¶
func (*Store) RevokeSubjectSessions ¶
func (*Store) RotateRefresh ¶
func (s *Store) RotateRefresh(ctx context.Context, request goauth.RefreshRotationRequest) (goauth.RefreshRotationResult, error)
func (*Store) SetSubjectStatus ¶
func (*Store) SetTrustedLocalPassword ¶ added in v0.6.0
func (*Store) TakeRateLimit ¶
func (s *Store) TakeRateLimit( ctx context.Context, request goauth.RateLimitRequest, ) (goauth.RateLimitResult, error)
TakeRateLimit admits an attempt outside any managed auth transaction. Auth writes may roll back; attempt accounting must not roll back with them.
func (*Store) UpdateBasicProfile ¶
func (*Store) VerifyEmailChallenge ¶
func (s *Store) VerifyEmailChallenge( ctx context.Context, request goauth.EmailChallengeVerifyRequest, ) (goauth.EmailChallengeVerifyResult, error)
func (*Store) VerifyEmailChange ¶
func (s *Store) VerifyEmailChange( ctx context.Context, request goauth.EmailChangeVerifyRequest, ) (goauth.EmailChangeVerifyResult, error)
Click to show internal directories.
Click to hide internal directories.