Documentation
¶
Index ¶
- Variables
- type CreateBackupCodesBatchResults
- type CreateBackupCodesParams
- type CreateMFASettingsParams
- type CreateOIDCLinkParams
- type CreateOIDCProviderParams
- type CreateOIDCSessionParams
- type CreatePasswordResetTokenParams
- type CreateRefreshTokenParams
- type CreateRoleParams
- type CreateRoleRow
- type CreateTrustedDeviceParams
- type CreateUserParams
- type CreateVerificationTokenParams
- type DBTX
- type DeleteOIDCLinkParams
- type GetDirectPermissionsRow
- type GetOIDCLinkByProviderParams
- type GetOIDCLinkByUserParams
- type GetRecentFailedAttemptsParams
- type GetRoleByIDRow
- type GetRolePermissionsRow
- type GetUserPermissionsRow
- type GetUserRolesRow
- type InsertDirectPermissionsParams
- type InsertLoginAttemptParams
- type InsertRolePermissionsParams
- type InsertUserRolesParams
- type ListRolesRow
- type LoginAttempt
- type MfaBackupCode
- type MfaSetting
- type NullOidcProviderType
- type NullOidcRegistrationMethod
- type NullPermissionEffect
- type NullUserStatus
- type OidcLink
- type OidcProvider
- type OidcProviderType
- type OidcRegistrationMethod
- type OidcSession
- type PasswordResetToken
- type Permission
- type PermissionEffect
- type Queries
- func (q *Queries) CountUnusedBackupCodes(ctx context.Context, userID uuid.UUID) (int64, error)
- func (q *Queries) CreateBackupCodes(ctx context.Context, arg []CreateBackupCodesParams) *CreateBackupCodesBatchResults
- func (q *Queries) CreateMFASettings(ctx context.Context, arg CreateMFASettingsParams) (MfaSetting, error)
- func (q *Queries) CreateOIDCLink(ctx context.Context, arg CreateOIDCLinkParams) (OidcLink, error)
- func (q *Queries) CreateOIDCProvider(ctx context.Context, arg CreateOIDCProviderParams) (OidcProvider, error)
- func (q *Queries) CreateOIDCSession(ctx context.Context, arg CreateOIDCSessionParams) (OidcSession, error)
- func (q *Queries) CreatePasswordResetToken(ctx context.Context, arg CreatePasswordResetTokenParams) (PasswordResetToken, error)
- func (q *Queries) CreateRefreshToken(ctx context.Context, arg CreateRefreshTokenParams) (RefreshToken, error)
- func (q *Queries) CreateRole(ctx context.Context, arg CreateRoleParams) (CreateRoleRow, error)
- func (q *Queries) CreateTenant(ctx context.Context, id uuid.UUID) (Tenant, error)
- func (q *Queries) CreateTrustedDevice(ctx context.Context, arg CreateTrustedDeviceParams) (TrustedDevice, error)
- func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (User, error)
- func (q *Queries) CreateVerificationToken(ctx context.Context, arg CreateVerificationTokenParams) (VerificationToken, error)
- func (q *Queries) DeleteAllDirectPermissions(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) DeleteAllRolePermissions(ctx context.Context, roleID uuid.UUID) error
- func (q *Queries) DeleteAllUserRoles(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) DeleteBackupCodesByUserID(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) DeleteExpiredOIDCSessions(ctx context.Context) error
- func (q *Queries) DeleteExpiredPasswordResetTokens(ctx context.Context) error
- func (q *Queries) DeleteExpiredRefreshTokens(ctx context.Context) error
- func (q *Queries) DeleteExpiredTrustedDevices(ctx context.Context) error
- func (q *Queries) DeleteExpiredVerificationTokens(ctx context.Context) error
- func (q *Queries) DeleteLoginAttempts(ctx context.Context, userID *uuid.UUID) error
- func (q *Queries) DeleteMFASettings(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) DeleteOIDCLink(ctx context.Context, arg DeleteOIDCLinkParams) error
- func (q *Queries) DeleteOIDCProvider(ctx context.Context, id uuid.UUID) error
- func (q *Queries) DeleteOIDCSession(ctx context.Context, id uuid.UUID) error
- func (q *Queries) DeleteOldUnverifiedUsers(ctx context.Context, days int32) error
- func (q *Queries) DeletePasswordResetToken(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) DeleteRole(ctx context.Context, id uuid.UUID) error
- func (q *Queries) DeleteTenant(ctx context.Context, id uuid.UUID) error
- func (q *Queries) DeleteUser(ctx context.Context, id uuid.UUID) error
- func (q *Queries) DeleteVerificationToken(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) GetDirectPermissions(ctx context.Context, userID uuid.UUID) ([]GetDirectPermissionsRow, error)
- func (q *Queries) GetMFASettingsByUserID(ctx context.Context, userID uuid.UUID) (MfaSetting, error)
- func (q *Queries) GetMostRecentLockout(ctx context.Context, email string) (*time.Time, error)
- func (q *Queries) GetOIDCLinkByProvider(ctx context.Context, arg GetOIDCLinkByProviderParams) (OidcLink, error)
- func (q *Queries) GetOIDCLinkByUser(ctx context.Context, arg GetOIDCLinkByUserParams) (OidcLink, error)
- func (q *Queries) GetOIDCProvider(ctx context.Context, id uuid.UUID) (OidcProvider, error)
- func (q *Queries) GetOIDCProvidersByDomain(ctx context.Context, domain string) ([]OidcProvider, error)
- func (q *Queries) GetOIDCSessionByState(ctx context.Context, state string) (OidcSession, error)
- func (q *Queries) GetPasswordResetToken(ctx context.Context, token string) (PasswordResetToken, error)
- func (q *Queries) GetPermissionByID(ctx context.Context, id uuid.UUID) (Permission, error)
- func (q *Queries) GetRecentFailedAttempts(ctx context.Context, arg GetRecentFailedAttemptsParams) (int64, error)
- func (q *Queries) GetRefreshTokenByHash(ctx context.Context, tokenHash string) (RefreshToken, error)
- func (q *Queries) GetRefreshTokenByHashIncludingRevoked(ctx context.Context, tokenHash string) (RefreshToken, error)
- func (q *Queries) GetRoleByID(ctx context.Context, id uuid.UUID) (GetRoleByIDRow, error)
- func (q *Queries) GetRolePermissions(ctx context.Context, roleID uuid.UUID) ([]GetRolePermissionsRow, error)
- func (q *Queries) GetTenant(ctx context.Context, id uuid.UUID) (Tenant, error)
- func (q *Queries) GetTrustedDeviceByTokenHash(ctx context.Context, tokenHash string) (TrustedDevice, error)
- func (q *Queries) GetUnusedBackupCodesByUserID(ctx context.Context, userID uuid.UUID) ([]MfaBackupCode, error)
- func (q *Queries) GetUser(ctx context.Context, id uuid.UUID) (User, error)
- func (q *Queries) GetUserByEmail(ctx context.Context, email string) (User, error)
- func (q *Queries) GetUserPermissions(ctx context.Context, userID uuid.UUID) ([]GetUserPermissionsRow, error)
- func (q *Queries) GetUserRoles(ctx context.Context, userID uuid.UUID) ([]GetUserRolesRow, error)
- func (q *Queries) GetVerificationToken(ctx context.Context, token string) (VerificationToken, error)
- func (q *Queries) InsertDirectPermissions(ctx context.Context, arg InsertDirectPermissionsParams) error
- func (q *Queries) InsertLoginAttempt(ctx context.Context, arg InsertLoginAttemptParams) (LoginAttempt, error)
- func (q *Queries) InsertRolePermissions(ctx context.Context, arg InsertRolePermissionsParams) error
- func (q *Queries) InsertUserRoles(ctx context.Context, arg InsertUserRolesParams) error
- func (q *Queries) ListOIDCLinksByUser(ctx context.Context, userID uuid.UUID) ([]OidcLink, error)
- func (q *Queries) ListOIDCProviders(ctx context.Context, tenantID uuid.UUID) ([]OidcProvider, error)
- func (q *Queries) ListPermissions(ctx context.Context) ([]Permission, error)
- func (q *Queries) ListRoles(ctx context.Context) ([]ListRolesRow, error)
- func (q *Queries) ListUserRefreshTokens(ctx context.Context, userID uuid.UUID) ([]RefreshToken, error)
- func (q *Queries) MarkBackupCodeUsed(ctx context.Context, id uuid.UUID) error
- func (q *Queries) RevokeAllUserRefreshTokens(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) RevokeAllUserTrustedDevices(ctx context.Context, userID uuid.UUID) error
- func (q *Queries) RevokeRefreshToken(ctx context.Context, id uuid.UUID) error
- func (q *Queries) RevokeRefreshTokenByHash(ctx context.Context, tokenHash string) error
- func (q *Queries) RevokeRefreshTokenFamily(ctx context.Context, familyID uuid.UUID) error
- func (q *Queries) UpdateLastLogin(ctx context.Context, id uuid.UUID) error
- func (q *Queries) UpdateMFASettings(ctx context.Context, arg UpdateMFASettingsParams) error
- func (q *Queries) UpdateOIDCLinkLastUsed(ctx context.Context, id uuid.UUID) error
- func (q *Queries) UpdateOIDCProvider(ctx context.Context, arg UpdateOIDCProviderParams) (OidcProvider, error)
- func (q *Queries) UpdateRefreshTokenLastUsed(ctx context.Context, id uuid.UUID) error
- func (q *Queries) UpdateRole(ctx context.Context, arg UpdateRoleParams) (UpdateRoleRow, error)
- func (q *Queries) UpdateTrustedDeviceLastUsed(ctx context.Context, arg UpdateTrustedDeviceLastUsedParams) error
- func (q *Queries) UpdateUser(ctx context.Context, arg UpdateUserParams) (User, error)
- func (q *Queries) WithTx(tx pgx.Tx) *Queries
- type RefreshToken
- type Role
- type RolePermission
- type Tenant
- type TrustedDevice
- type UpdateMFASettingsParams
- type UpdateOIDCProviderParams
- type UpdateRoleParams
- type UpdateRoleRow
- type UpdateTrustedDeviceLastUsedParams
- type UpdateUserParams
- type User
- type UserPermission
- type UserRole
- type UserStatus
- type VerificationToken
Constants ¶
This section is empty.
Variables ¶
var (
ErrBatchAlreadyClosed = errors.New("batch already closed")
)
Functions ¶
This section is empty.
Types ¶
type CreateBackupCodesBatchResults ¶
type CreateBackupCodesBatchResults struct {
// contains filtered or unexported fields
}
func (*CreateBackupCodesBatchResults) Close ¶
func (b *CreateBackupCodesBatchResults) Close() error
func (*CreateBackupCodesBatchResults) Exec ¶
func (b *CreateBackupCodesBatchResults) Exec(f func(int, error))
type CreateBackupCodesParams ¶
type CreateMFASettingsParams ¶
type CreateOIDCLinkParams ¶
type CreateOIDCProviderParams ¶
type CreateOIDCProviderParams struct {
TenantID uuid.UUID `json:"tenant_id"`
ProviderName string `json:"provider_name"`
IssuerUrl string `json:"issuer_url"`
ClientID string `json:"client_id"`
ClientSecret string `json:"client_secret"`
Scopes []string `json:"scopes"`
Enabled bool `json:"enabled"`
AllowedDomains []string `json:"allowed_domains"`
AutoCreateUsers bool `json:"auto_create_users"`
RequireEmailVerification bool `json:"require_email_verification"`
RegistrationAccessToken string `json:"registration_access_token"`
RegistrationClientUri string `json:"registration_client_uri"`
ClientIDIssuedAt *time.Time `json:"client_id_issued_at"`
ClientSecretExpiresAt *time.Time `json:"client_secret_expires_at"`
RegistrationMethod sdk.OIDCRegistrationMethod `json:"registration_method"`
}
type CreateOIDCSessionParams ¶
type CreateOIDCSessionParams struct {
State string `json:"state"`
CodeVerifier string `json:"code_verifier"`
OidcProviderID *uuid.UUID `json:"oidc_provider_id"`
ProviderType *sdk.OIDCProviderType `json:"provider_type"`
RedirectUri string `json:"redirect_uri"`
TenantID *uuid.UUID `json:"tenant_id"`
ExpiresAt time.Time `json:"expires_at"`
}
type CreateRefreshTokenParams ¶
type CreateRefreshTokenParams struct {
UserID uuid.UUID `json:"user_id"`
TenantID uuid.UUID `json:"tenant_id"`
TokenHash string `json:"token_hash"`
FamilyID uuid.UUID `json:"family_id"`
UserAgent string `json:"user_agent"`
IpAddress string `json:"ip_address"`
ExpiresAt time.Time `json:"expires_at"`
}
type CreateRoleParams ¶
type CreateRoleRow ¶
type CreateUserParams ¶
type DeleteOIDCLinkParams ¶
type GetDirectPermissionsRow ¶
type GetOIDCLinkByUserParams ¶
type GetRoleByIDRow ¶
type GetRolePermissionsRow ¶
type GetUserPermissionsRow ¶
type GetUserRolesRow ¶
type InsertUserRolesParams ¶
type ListRolesRow ¶
type LoginAttempt ¶
type MfaBackupCode ¶
type MfaSetting ¶
type NullOidcProviderType ¶
type NullOidcProviderType struct {
OidcProviderType OidcProviderType `json:"oidc_provider_type"`
Valid bool `json:"valid"` // Valid is true if OidcProviderType is not NULL
}
func (*NullOidcProviderType) Scan ¶
func (ns *NullOidcProviderType) Scan(value interface{}) error
Scan implements the Scanner interface.
type NullOidcRegistrationMethod ¶
type NullOidcRegistrationMethod struct {
OidcRegistrationMethod OidcRegistrationMethod `json:"oidc_registration_method"`
Valid bool `json:"valid"` // Valid is true if OidcRegistrationMethod is not NULL
}
func (*NullOidcRegistrationMethod) Scan ¶
func (ns *NullOidcRegistrationMethod) Scan(value interface{}) error
Scan implements the Scanner interface.
type NullPermissionEffect ¶
type NullPermissionEffect struct {
PermissionEffect PermissionEffect `json:"permission_effect"`
Valid bool `json:"valid"` // Valid is true if PermissionEffect is not NULL
}
func (*NullPermissionEffect) Scan ¶
func (ns *NullPermissionEffect) Scan(value interface{}) error
Scan implements the Scanner interface.
type NullUserStatus ¶
type NullUserStatus struct {
UserStatus UserStatus `json:"user_status"`
Valid bool `json:"valid"` // Valid is true if UserStatus is not NULL
}
func (*NullUserStatus) Scan ¶
func (ns *NullUserStatus) Scan(value interface{}) error
Scan implements the Scanner interface.
type OidcLink ¶
type OidcLink struct {
ID uuid.UUID `json:"id"`
UserID uuid.UUID `json:"user_id"`
OidcProviderID uuid.UUID `json:"oidc_provider_id"`
ProviderUserID string `json:"provider_user_id"`
ProviderEmail string `json:"provider_email"`
ProviderMetadata []byte `json:"provider_metadata"`
LinkedAt time.Time `json:"linked_at"`
LastUsedAt *time.Time `json:"last_used_at"`
}
type OidcProvider ¶
type OidcProvider struct {
ID uuid.UUID `json:"id"`
TenantID uuid.UUID `json:"tenant_id"`
ProviderName string `json:"provider_name"`
IssuerUrl string `json:"issuer_url"`
ClientID string `json:"client_id"`
ClientSecret string `json:"client_secret"`
Scopes []string `json:"scopes"`
Enabled bool `json:"enabled"`
AllowedDomains []string `json:"allowed_domains"`
AutoCreateUsers bool `json:"auto_create_users"`
RequireEmailVerification bool `json:"require_email_verification"`
RegistrationAccessToken string `json:"registration_access_token"`
RegistrationClientUri string `json:"registration_client_uri"`
ClientIDIssuedAt *time.Time `json:"client_id_issued_at"`
ClientSecretExpiresAt *time.Time `json:"client_secret_expires_at"`
RegistrationMethod sdk.OIDCRegistrationMethod `json:"registration_method"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type OidcProviderType ¶
type OidcProviderType string
const ( OidcProviderTypeGoogle OidcProviderType = "google" OidcProviderTypeMicrosoft OidcProviderType = "microsoft" OidcProviderTypeGithub OidcProviderType = "github" OidcProviderTypeOkta OidcProviderType = "okta" )
func (*OidcProviderType) Scan ¶
func (e *OidcProviderType) Scan(src interface{}) error
type OidcRegistrationMethod ¶
type OidcRegistrationMethod string
const ( OidcRegistrationMethodManual OidcRegistrationMethod = "manual" OidcRegistrationMethodDynamic OidcRegistrationMethod = "dynamic" )
func (*OidcRegistrationMethod) Scan ¶
func (e *OidcRegistrationMethod) Scan(src interface{}) error
type OidcSession ¶
type OidcSession struct {
ID uuid.UUID `json:"id"`
State string `json:"state"`
CodeVerifier string `json:"code_verifier"`
OidcProviderID *uuid.UUID `json:"oidc_provider_id"`
ProviderType *sdk.OIDCProviderType `json:"provider_type"`
RedirectUri string `json:"redirect_uri"`
TenantID *uuid.UUID `json:"tenant_id"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
}
type PasswordResetToken ¶
type Permission ¶
type PermissionEffect ¶
type PermissionEffect string
const ( PermissionEffectAllow PermissionEffect = "allow" PermissionEffectDeny PermissionEffect = "deny" )
func (*PermissionEffect) Scan ¶
func (e *PermissionEffect) Scan(src interface{}) error
type Queries ¶
type Queries struct {
// contains filtered or unexported fields
}
func (*Queries) CountUnusedBackupCodes ¶
func (*Queries) CreateBackupCodes ¶
func (q *Queries) CreateBackupCodes(ctx context.Context, arg []CreateBackupCodesParams) *CreateBackupCodesBatchResults
func (*Queries) CreateMFASettings ¶
func (q *Queries) CreateMFASettings(ctx context.Context, arg CreateMFASettingsParams) (MfaSetting, error)
func (*Queries) CreateOIDCLink ¶
func (*Queries) CreateOIDCProvider ¶
func (q *Queries) CreateOIDCProvider(ctx context.Context, arg CreateOIDCProviderParams) (OidcProvider, error)
func (*Queries) CreateOIDCSession ¶
func (q *Queries) CreateOIDCSession(ctx context.Context, arg CreateOIDCSessionParams) (OidcSession, error)
func (*Queries) CreatePasswordResetToken ¶
func (q *Queries) CreatePasswordResetToken(ctx context.Context, arg CreatePasswordResetTokenParams) (PasswordResetToken, error)
func (*Queries) CreateRefreshToken ¶
func (q *Queries) CreateRefreshToken(ctx context.Context, arg CreateRefreshTokenParams) (RefreshToken, error)
func (*Queries) CreateRole ¶
func (q *Queries) CreateRole(ctx context.Context, arg CreateRoleParams) (CreateRoleRow, error)
func (*Queries) CreateTenant ¶
func (*Queries) CreateTrustedDevice ¶
func (q *Queries) CreateTrustedDevice(ctx context.Context, arg CreateTrustedDeviceParams) (TrustedDevice, error)
func (*Queries) CreateUser ¶
func (*Queries) CreateVerificationToken ¶
func (q *Queries) CreateVerificationToken(ctx context.Context, arg CreateVerificationTokenParams) (VerificationToken, error)
func (*Queries) DeleteAllDirectPermissions ¶
Replace all direct permissions for a user (used for bulk updates) Note: This should be called in a transaction with InsertDirectPermissions
func (*Queries) DeleteAllRolePermissions ¶
Replace all permissions for a role (used for bulk updates) First delete all existing permissions, then insert new ones Note: This should be called in a transaction with InsertRolePermissions
func (*Queries) DeleteAllUserRoles ¶
Replace all roles for a user (used for bulk updates) Note: This should be called in a transaction with InsertUserRoles
func (*Queries) DeleteBackupCodesByUserID ¶
func (*Queries) DeleteExpiredOIDCSessions ¶
func (*Queries) DeleteExpiredPasswordResetTokens ¶
func (*Queries) DeleteExpiredRefreshTokens ¶
func (*Queries) DeleteExpiredTrustedDevices ¶
func (*Queries) DeleteExpiredVerificationTokens ¶
func (*Queries) DeleteLoginAttempts ¶
Delete all login attempts for a user after successful login Failed attempts are no longer relevant once the user has authenticated
func (*Queries) DeleteMFASettings ¶
func (*Queries) DeleteOIDCLink ¶
func (q *Queries) DeleteOIDCLink(ctx context.Context, arg DeleteOIDCLinkParams) error
func (*Queries) DeleteOIDCProvider ¶
func (*Queries) DeleteOIDCSession ¶
func (*Queries) DeleteOldUnverifiedUsers ¶
func (*Queries) DeletePasswordResetToken ¶
func (*Queries) DeleteTenant ¶
func (*Queries) DeleteVerificationToken ¶
func (*Queries) GetDirectPermissions ¶
func (q *Queries) GetDirectPermissions(ctx context.Context, userID uuid.UUID) ([]GetDirectPermissionsRow, error)
Get direct permissions assigned to user (not from roles)
func (*Queries) GetMFASettingsByUserID ¶
func (*Queries) GetMostRecentLockout ¶
Gets the most recent non-null locked_until for checking active lockouts
func (*Queries) GetOIDCLinkByProvider ¶
func (*Queries) GetOIDCLinkByUser ¶
func (*Queries) GetOIDCProvider ¶
func (*Queries) GetOIDCProvidersByDomain ¶
func (q *Queries) GetOIDCProvidersByDomain(ctx context.Context, domain string) ([]OidcProvider, error)
Find all OAuth providers configured for an email domain (cross-tenant, for SSO discovery) This query bypasses RLS to search across all tenants
func (*Queries) GetOIDCSessionByState ¶
func (*Queries) GetPasswordResetToken ¶
func (*Queries) GetPermissionByID ¶
func (*Queries) GetRecentFailedAttempts ¶
func (*Queries) GetRefreshTokenByHash ¶
func (*Queries) GetRefreshTokenByHashIncludingRevoked ¶
func (q *Queries) GetRefreshTokenByHashIncludingRevoked(ctx context.Context, tokenHash string) (RefreshToken, error)
Used for token rotation reuse detection - returns token even if revoked
func (*Queries) GetRoleByID ¶
func (*Queries) GetRolePermissions ¶
func (*Queries) GetTrustedDeviceByTokenHash ¶
func (*Queries) GetUnusedBackupCodesByUserID ¶
func (*Queries) GetUserByEmail ¶
func (*Queries) GetUserPermissions ¶
func (q *Queries) GetUserPermissions(ctx context.Context, userID uuid.UUID) ([]GetUserPermissionsRow, error)
Get all permissions for a user (from roles + direct permissions) Includes effect from direct permissions for deny logic
func (*Queries) GetUserRoles ¶
func (*Queries) GetVerificationToken ¶
func (*Queries) InsertDirectPermissions ¶
func (q *Queries) InsertDirectPermissions(ctx context.Context, arg InsertDirectPermissionsParams) error
Insert multiple direct permissions for a user (called after SetDirectPermissions in transaction) Parameters: user_id, permission_ids array, effects array (strings cast to permission_effect)
func (*Queries) InsertLoginAttempt ¶
func (q *Queries) InsertLoginAttempt(ctx context.Context, arg InsertLoginAttemptParams) (LoginAttempt, error)
func (*Queries) InsertRolePermissions ¶
func (q *Queries) InsertRolePermissions(ctx context.Context, arg InsertRolePermissionsParams) error
Insert multiple permissions for a role (called after SetRolePermissions in transaction)
func (*Queries) InsertUserRoles ¶
func (q *Queries) InsertUserRoles(ctx context.Context, arg InsertUserRolesParams) error
Insert multiple roles for a user (called after SetUserRoles in transaction) Parameters: user_id, role_ids array
func (*Queries) ListOIDCLinksByUser ¶
func (*Queries) ListOIDCProviders ¶
func (*Queries) ListPermissions ¶
func (q *Queries) ListPermissions(ctx context.Context) ([]Permission, error)
func (*Queries) ListRoles ¶
func (q *Queries) ListRoles(ctx context.Context) ([]ListRolesRow, error)
func (*Queries) ListUserRefreshTokens ¶
func (*Queries) MarkBackupCodeUsed ¶
func (*Queries) RevokeAllUserRefreshTokens ¶
func (*Queries) RevokeAllUserTrustedDevices ¶
func (*Queries) RevokeRefreshToken ¶
func (*Queries) RevokeRefreshTokenByHash ¶
func (*Queries) RevokeRefreshTokenFamily ¶
Revokes all tokens in a family (used when token reuse is detected)
func (*Queries) UpdateLastLogin ¶
func (*Queries) UpdateMFASettings ¶
func (q *Queries) UpdateMFASettings(ctx context.Context, arg UpdateMFASettingsParams) error
func (*Queries) UpdateOIDCLinkLastUsed ¶
func (*Queries) UpdateOIDCProvider ¶
func (q *Queries) UpdateOIDCProvider(ctx context.Context, arg UpdateOIDCProviderParams) (OidcProvider, error)
Allows updating configuration and credentials
func (*Queries) UpdateRefreshTokenLastUsed ¶
func (*Queries) UpdateRole ¶
func (q *Queries) UpdateRole(ctx context.Context, arg UpdateRoleParams) (UpdateRoleRow, error)
func (*Queries) UpdateTrustedDeviceLastUsed ¶
func (q *Queries) UpdateTrustedDeviceLastUsed(ctx context.Context, arg UpdateTrustedDeviceLastUsedParams) error
func (*Queries) UpdateUser ¶
type RefreshToken ¶
type RefreshToken struct {
ID uuid.UUID `json:"id"`
UserID uuid.UUID `json:"user_id"`
TenantID uuid.UUID `json:"tenant_id"`
TokenHash string `json:"token_hash"`
FamilyID uuid.UUID `json:"family_id"`
UserAgent string `json:"user_agent"`
IpAddress string `json:"ip_address"`
CreatedAt time.Time `json:"created_at"`
LastUsedAt time.Time `json:"last_used_at"`
ExpiresAt time.Time `json:"expires_at"`
RevokedAt *time.Time `json:"revoked_at"`
}
type RolePermission ¶
type TrustedDevice ¶
type TrustedDevice struct {
ID uuid.UUID `json:"id"`
UserID uuid.UUID `json:"user_id"`
TenantID uuid.UUID `json:"tenant_id"`
TokenHash string `json:"token_hash"`
UserAgent string `json:"user_agent"`
IpAddress string `json:"ip_address"`
CreatedAt time.Time `json:"created_at"`
LastUsedAt time.Time `json:"last_used_at"`
ExpiresAt time.Time `json:"expires_at"`
RevokedAt *time.Time `json:"revoked_at"`
}
type UpdateMFASettingsParams ¶
type UpdateOIDCProviderParams ¶
type UpdateOIDCProviderParams struct {
ProviderName *string `json:"provider_name"`
ClientSecret *string `json:"client_secret"`
Scopes []string `json:"scopes"`
Enabled *bool `json:"enabled"`
AllowedDomains []string `json:"allowed_domains"`
AutoCreateUsers *bool `json:"auto_create_users"`
RequireEmailVerification *bool `json:"require_email_verification"`
ID uuid.UUID `json:"id"`
}
type UpdateRoleParams ¶
type UpdateRoleRow ¶
type UpdateUserParams ¶
type UpdateUserParams struct {
PasswordHash *string `json:"password_hash"`
Status *iam.UserStatus `json:"status"`
ID uuid.UUID `json:"id"`
}
type User ¶
type User struct {
ID uuid.UUID `json:"id"`
TenantID uuid.UUID `json:"tenant_id"`
Email string `json:"email"`
PasswordHash string `json:"password_hash"`
FirstName string `json:"first_name"`
LastName string `json:"last_name"`
Status iam.UserStatus `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
LastLoginAt *time.Time `json:"last_login_at"`
}
type UserPermission ¶
type UserStatus ¶
type UserStatus string
const ( UserStatusUnverified UserStatus = "unverified" UserStatusActive UserStatus = "active" UserStatusSuspended UserStatus = "suspended" UserStatusInactive UserStatus = "inactive" )
func (*UserStatus) Scan ¶
func (e *UserStatus) Scan(src interface{}) error
Source Files
¶
- batch.go
- db.go
- login_attempts.sql.go
- mfa_backup_codes.sql.go
- mfa_settings.sql.go
- models.go
- oidc_links.sql.go
- oidc_providers.sql.go
- oidc_sessions.sql.go
- password_reset_tokens.sql.go
- permissions.sql.go
- refresh_tokens.sql.go
- role_permissions.sql.go
- roles.sql.go
- tenants.sql.go
- trusted_devices.sql.go
- user_permissions.sql.go
- user_roles.sql.go
- users.sql.go
- verification_tokens.sql.go