Documentation
¶
Index ¶
- type ApiToken
- type ApplyTOTPPendingParams
- type BumpCredentialsEpochParams
- type CountOtherActiveTenantAdminsParams
- type DBTX
- type DbInfo
- type DeleteExpiredSessionsParams
- type DeleteOtherUserSessionsParams
- type DeletePasskeyParams
- type DeleteRoleBindingParams
- type DeleteTokenParams
- type EnsureTenantParams
- type GetInstanceRow
- type GetTenantRow
- type GetTenantSettingsRow
- type InsertInstanceParams
- type InsertPasskeyParams
- type InsertRecoveryCodeParams
- type InsertSessionParams
- type InsertTokenParams
- type InsertUnsealSlotParams
- type InsertUserParams
- type Instance
- type ListTenantsRow
- type Outbox
- type Queries
- func (q *Queries) ApplyTOTPPending(ctx context.Context, arg ApplyTOTPPendingParams) (int64, error)
- func (q *Queries) BumpCredentialsEpoch(ctx context.Context, arg BumpCredentialsEpochParams) error
- func (q *Queries) CountOtherActiveInstanceAdmins(ctx context.Context, id string) (int64, error)
- func (q *Queries) CountOtherActiveTenantAdmins(ctx context.Context, arg CountOtherActiveTenantAdminsParams) (int64, error)
- func (q *Queries) CountPasskeys(ctx context.Context, userID string) (int64, error)
- func (q *Queries) CountTokens(ctx context.Context, userID string) (int64, error)
- func (q *Queries) CountUnsealSlots(ctx context.Context) (int64, error)
- func (q *Queries) CountUnusedRecoveryCodes(ctx context.Context, userID string) (int64, error)
- func (q *Queries) CountUsers(ctx context.Context) (int64, error)
- func (q *Queries) DeleteExpiredSessions(ctx context.Context, arg DeleteExpiredSessionsParams) (int64, error)
- func (q *Queries) DeleteOtherUserSessions(ctx context.Context, arg DeleteOtherUserSessionsParams) (int64, error)
- func (q *Queries) DeletePasskey(ctx context.Context, arg DeletePasskeyParams) (int64, error)
- func (q *Queries) DeleteRecoveryCodes(ctx context.Context, userID string) error
- func (q *Queries) DeleteRoleBinding(ctx context.Context, arg DeleteRoleBindingParams) (int64, error)
- func (q *Queries) DeleteSession(ctx context.Context, idHash string) error
- func (q *Queries) DeleteToken(ctx context.Context, arg DeleteTokenParams) (int64, error)
- func (q *Queries) DeleteUserPasskeys(ctx context.Context, userID string) (int64, error)
- func (q *Queries) DeleteUserSessions(ctx context.Context, userID string) (int64, error)
- func (q *Queries) DeleteUserTokens(ctx context.Context, userID string) (int64, error)
- func (q *Queries) EnsureTenant(ctx context.Context, arg EnsureTenantParams) error
- func (q *Queries) GetAgentEnrollment(ctx context.Context, id string) (string, error)
- func (q *Queries) GetInstance(ctx context.Context) (GetInstanceRow, error)
- func (q *Queries) GetSession(ctx context.Context, idHash string) (Session, error)
- func (q *Queries) GetStepUpMinutes(ctx context.Context, id string) (int64, error)
- func (q *Queries) GetTenant(ctx context.Context, id string) (GetTenantRow, error)
- func (q *Queries) GetTenantSettings(ctx context.Context, id string) (GetTenantSettingsRow, error)
- func (q *Queries) GetTokenByHash(ctx context.Context, tokenHash string) (ApiToken, error)
- func (q *Queries) GetTrustPage(ctx context.Context, id string) (int64, error)
- func (q *Queries) GetUnsealSlot(ctx context.Context, slot string) (Unseal, error)
- func (q *Queries) GetUser(ctx context.Context, id string) (User, error)
- func (q *Queries) GetUserByName(ctx context.Context, username string) (User, error)
- func (q *Queries) InsertInstance(ctx context.Context, arg InsertInstanceParams) error
- func (q *Queries) InsertPasskey(ctx context.Context, arg InsertPasskeyParams) error
- func (q *Queries) InsertRecoveryCode(ctx context.Context, arg InsertRecoveryCodeParams) error
- func (q *Queries) InsertSession(ctx context.Context, arg InsertSessionParams) error
- func (q *Queries) InsertToken(ctx context.Context, arg InsertTokenParams) error
- func (q *Queries) InsertUnsealSlot(ctx context.Context, arg InsertUnsealSlotParams) error
- func (q *Queries) InsertUser(ctx context.Context, arg InsertUserParams) error
- func (q *Queries) ListPasskeys(ctx context.Context, userID string) ([]WebauthnCredential, error)
- func (q *Queries) ListRoleBindings(ctx context.Context, userID string) ([]RoleBinding, error)
- func (q *Queries) ListTenants(ctx context.Context) ([]ListTenantsRow, error)
- func (q *Queries) ListTokens(ctx context.Context, userID string) ([]ApiToken, error)
- func (q *Queries) ListUsers(ctx context.Context) ([]User, error)
- func (q *Queries) RehashPassword(ctx context.Context, arg RehashPasswordParams) error
- func (q *Queries) ResetTOTP(ctx context.Context, arg ResetTOTPParams) error
- func (q *Queries) SetDisabled(ctx context.Context, arg SetDisabledParams) error
- func (q *Queries) SetLoginFailures(ctx context.Context, arg SetLoginFailuresParams) error
- func (q *Queries) SetPassword(ctx context.Context, arg SetPasswordParams) error
- func (q *Queries) SetRoleBinding(ctx context.Context, arg SetRoleBindingParams) error
- func (q *Queries) SetStepUp(ctx context.Context, arg SetStepUpParams) error
- func (q *Queries) SetTOTPPending(ctx context.Context, arg SetTOTPPendingParams) error
- func (q *Queries) SetTenantSettings(ctx context.Context, arg SetTenantSettingsParams) (int64, error)
- func (q *Queries) TouchSession(ctx context.Context, arg TouchSessionParams) error
- func (q *Queries) TouchToken(ctx context.Context, arg TouchTokenParams) error
- func (q *Queries) UpdateUnsealSlot(ctx context.Context, arg UpdateUnsealSlotParams) (int64, error)
- func (q *Queries) UsePasskey(ctx context.Context, arg UsePasskeyParams) (int64, error)
- func (q *Queries) UseRecoveryCode(ctx context.Context, arg UseRecoveryCodeParams) (int64, error)
- func (q *Queries) UseTOTPStep(ctx context.Context, arg UseTOTPStepParams) (int64, error)
- func (q *Queries) WithTx(tx *sql.Tx) *Queries
- type RecoveryCode
- type RehashPasswordParams
- type ResetTOTPParams
- type RoleBinding
- type Session
- type SetDisabledParams
- type SetLoginFailuresParams
- type SetPasswordParams
- type SetRoleBindingParams
- type SetStepUpParams
- type SetTOTPPendingParams
- type SetTenantSettingsParams
- type Tenant
- type TouchSessionParams
- type TouchTokenParams
- type Unseal
- type UpdateUnsealSlotParams
- type UsePasskeyParams
- type UseRecoveryCodeParams
- type UseTOTPStepParams
- type User
- type WebauthnCredential
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ApplyTOTPPendingParams ¶
type ApplyTOTPPendingParams struct {
TotpConfirmedAt sql.NullString
TotpLastStep int64
UpdatedAt string
ID string
}
type DeletePasskeyParams ¶
type DeleteRoleBindingParams ¶
type DeleteTokenParams ¶
type EnsureTenantParams ¶
type GetInstanceRow ¶
type GetTenantRow ¶
type GetTenantSettingsRow ¶
type GetTenantSettingsRow struct {
ID string
AllowServerKeygen int64
SubjectO string
SubjectOu string
SubjectL string
SubjectSt string
SubjectC string
AcmeOrdersPerHour int64
AcmeFailedPerName int64
AcmeAccountsPerIp int64
TrustPage int64
AgentEnrollment string
StepUpMinutes int64
AgentPredecessorChoice string
AgentPredecessorDays int64
OtherPredecessorChoice string
OtherPredecessorDays int64
}
type InsertInstanceParams ¶
type InsertPasskeyParams ¶
type InsertSessionParams ¶
type InsertTokenParams ¶
type InsertUnsealSlotParams ¶
type InsertUserParams ¶
type ListTenantsRow ¶
type Queries ¶
type Queries struct {
// contains filtered or unexported fields
}
func (*Queries) ApplyTOTPPending ¶
func (*Queries) BumpCredentialsEpoch ¶
func (q *Queries) BumpCredentialsEpoch(ctx context.Context, arg BumpCredentialsEpochParams) error
myownpki user unlock: device cookies issued before are void.
func (*Queries) CountOtherActiveInstanceAdmins ¶
The last active instance admin and the last active tenant-wide admin of a tenant can't be disabled or lose that role: count the others.
func (*Queries) CountOtherActiveTenantAdmins ¶
func (*Queries) CountPasskeys ¶
func (*Queries) CountTokens ¶
func (*Queries) CountUnsealSlots ¶
func (*Queries) CountUnusedRecoveryCodes ¶
func (*Queries) DeleteExpiredSessions ¶
func (*Queries) DeleteOtherUserSessions ¶
func (*Queries) DeletePasskey ¶
func (*Queries) DeleteRecoveryCodes ¶
func (*Queries) DeleteRoleBinding ¶
func (*Queries) DeleteSession ¶
func (*Queries) DeleteToken ¶
func (*Queries) DeleteUserPasskeys ¶
func (*Queries) DeleteUserSessions ¶
func (*Queries) DeleteUserTokens ¶
func (*Queries) EnsureTenant ¶
func (q *Queries) EnsureTenant(ctx context.Context, arg EnsureTenantParams) error
Tenants (PHASE1 section 1.2). The id is also the directory name below <data>/tenants/ and is validated by store.Layout before it gets here.
Query files must be ASCII only: sqlc 1.31.1 miscounts positions after a multi-byte character in SQLite query files and cuts statements short.
func (*Queries) GetAgentEnrollment ¶ added in v0.3.0
The agent listener asks this for every enrollment (v0.3.0).
func (*Queries) GetInstance ¶
func (q *Queries) GetInstance(ctx context.Context) (GetInstanceRow, error)
func (*Queries) GetSession ¶
func (*Queries) GetStepUpMinutes ¶ added in v0.3.1
Authentication snapshots this whenever it records a new second-factor proof.
func (*Queries) GetTenantSettings ¶
Settings of a tenant (step 18): server key generation and subject defaults.
func (*Queries) GetTokenByHash ¶
func (*Queries) GetTrustPage ¶ added in v0.2.2
The public listener asks this for every request to / (v0.2.2).
func (*Queries) GetUnsealSlot ¶
Unseal slots (ASCII only, see tenants.sql).
func (*Queries) GetUserByName ¶
func (*Queries) InsertInstance ¶
func (q *Queries) InsertInstance(ctx context.Context, arg InsertInstanceParams) error
The instance row (PHASE1 step 11). ASCII only, see tenants.sql.
func (*Queries) InsertPasskey ¶
func (q *Queries) InsertPasskey(ctx context.Context, arg InsertPasskeyParams) error
Passkeys (step 17).
func (*Queries) InsertRecoveryCode ¶
func (q *Queries) InsertRecoveryCode(ctx context.Context, arg InsertRecoveryCodeParams) error
func (*Queries) InsertSession ¶
func (q *Queries) InsertSession(ctx context.Context, arg InsertSessionParams) error
func (*Queries) InsertToken ¶
func (q *Queries) InsertToken(ctx context.Context, arg InsertTokenParams) error
API tokens (step 18).
func (*Queries) InsertUnsealSlot ¶
func (q *Queries) InsertUnsealSlot(ctx context.Context, arg InsertUnsealSlotParams) error
func (*Queries) InsertUser ¶
func (q *Queries) InsertUser(ctx context.Context, arg InsertUserParams) error
Users, roles and sessions (PHASE1 step 10). ASCII only, see tenants.sql.
func (*Queries) ListPasskeys ¶
func (*Queries) ListRoleBindings ¶
func (*Queries) ListTenants ¶
func (q *Queries) ListTenants(ctx context.Context) ([]ListTenantsRow, error)
func (*Queries) ListTokens ¶
func (*Queries) RehashPassword ¶
func (q *Queries) RehashPassword(ctx context.Context, arg RehashPasswordParams) error
The same password with new hash parameters: device cookies stay valid.
func (*Queries) ResetTOTP ¶
func (q *Queries) ResetTOTP(ctx context.Context, arg ResetTOTPParams) error
A new secret set by an admin: confirmed by the first valid code.
func (*Queries) SetDisabled ¶
func (q *Queries) SetDisabled(ctx context.Context, arg SetDisabledParams) error
func (*Queries) SetLoginFailures ¶
func (q *Queries) SetLoginFailures(ctx context.Context, arg SetLoginFailuresParams) error
func (*Queries) SetPassword ¶
func (q *Queries) SetPassword(ctx context.Context, arg SetPasswordParams) error
func (*Queries) SetRoleBinding ¶
func (q *Queries) SetRoleBinding(ctx context.Context, arg SetRoleBindingParams) error
func (*Queries) SetStepUp ¶
func (q *Queries) SetStepUp(ctx context.Context, arg SetStepUpParams) error
func (*Queries) SetTOTPPending ¶
func (q *Queries) SetTOTPPending(ctx context.Context, arg SetTOTPPendingParams) error
func (*Queries) SetTenantSettings ¶
func (*Queries) TouchSession ¶
func (q *Queries) TouchSession(ctx context.Context, arg TouchSessionParams) error
func (*Queries) TouchToken ¶
func (q *Queries) TouchToken(ctx context.Context, arg TouchTokenParams) error
func (*Queries) UpdateUnsealSlot ¶
func (*Queries) UsePasskey ¶
A sign-in with a passkey: the counter only moves forward, or stays 0 for authenticators that never count (synced passkeys). The WHERE makes a race between two sign-ins safe.
func (*Queries) UseRecoveryCode ¶
0 rows = unknown or used code.
func (*Queries) UseTOTPStep ¶
Takes a time step only if it is newer than the last one: a TOTP code is valid once, also when two requests race. 0 rows = replayed code.
type RecoveryCode ¶
type RecoveryCode struct {
UserID string
CodeHash string
UsedAt sql.NullString
CreatedAt string
}
type RehashPasswordParams ¶
type ResetTOTPParams ¶
type RoleBinding ¶
type SetDisabledParams ¶
type SetDisabledParams struct {
DisabledAt sql.NullString
UpdatedAt string
ID string
}
type SetLoginFailuresParams ¶
type SetLoginFailuresParams struct {
FailedLogins int64
LockedUntil sql.NullString
UpdatedAt string
ID string
}
type SetPasswordParams ¶
type SetRoleBindingParams ¶
type SetStepUpParams ¶
type SetStepUpParams struct {
StepupAt sql.NullString
StepupMinutes int64
IDHash string
}
type SetTOTPPendingParams ¶
type SetTenantSettingsParams ¶
type SetTenantSettingsParams struct {
AllowServerKeygen int64
SubjectO string
SubjectOu string
SubjectL string
SubjectSt string
SubjectC string
AcmeOrdersPerHour int64
AcmeFailedPerName int64
AcmeAccountsPerIp int64
TrustPage int64
AgentEnrollment string
StepUpMinutes int64
AgentPredecessorChoice string
AgentPredecessorDays int64
OtherPredecessorChoice string
OtherPredecessorDays int64
ID string
}
type Tenant ¶
type Tenant struct {
ID string
Name string
AllowServerKeygen int64
CreatedAt string
SubjectO string
SubjectOu string
SubjectL string
SubjectSt string
SubjectC string
AcmeOrdersPerHour int64
AcmeFailedPerName int64
AcmeAccountsPerIp int64
TrustPage int64
AgentEnrollment string
StepUpMinutes int64
AgentPredecessorChoice string
AgentPredecessorDays int64
OtherPredecessorChoice string
OtherPredecessorDays int64
}
type TouchSessionParams ¶
type TouchTokenParams ¶
type TouchTokenParams struct {
LastUsedAt sql.NullString
ID string
}
type UpdateUnsealSlotParams ¶
type UsePasskeyParams ¶
type UsePasskeyParams struct {
Credential string
SignCount int64
LastUsedAt sql.NullString
ID string
}
type UseRecoveryCodeParams ¶
type UseRecoveryCodeParams struct {
UsedAt sql.NullString
UserID string
CodeHash string
}
type UseTOTPStepParams ¶
type User ¶
type User struct {
ID string
Username string
PasswordHash string
PasswordChangedAt string
TotpSecret []byte
TotpConfirmedAt sql.NullString
TotpLastStep int64
TotpPending []byte
InstanceAdmin int64
DisabledAt sql.NullString
FailedLogins int64
LockedUntil sql.NullString
CreatedAt string
UpdatedAt string
CredentialsEpoch int64
}