Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Generate ¶
func Generate(params CreateParams) (database.InsertAPIKeyParams, string, error)
Generate generates an API key, returning the key as a string as well as the database representation. It is the responsibility of the caller to insert it into the database.
func GenerateSecret ¶ added in v2.28.0
func HashSecret ¶ added in v2.28.0
HashSecret is the single function used to hash API key secrets. Use this to ensure a consistent hashing algorithm.
func ValidateHash ¶ added in v2.28.0
ValidateHash compares a secret against an expected hashed secret.
Types ¶
type CreateParams ¶
type CreateParams struct {
UserID uuid.UUID
LoginType database.LoginType
// DefaultLifetime is configured in DeploymentValues.
// It is used if both ExpiresAt and LifetimeSeconds are not set.
DefaultLifetime time.Duration
// Optional.
ExpiresAt time.Time
LifetimeSeconds int64
// Scope is legacy single-scope input kept for backward compatibility.
//
// Deprecated: use Scopes instead.
Scope database.APIKeyScope
// Scopes is the full list of scopes to attach to the key.
Scopes database.APIKeyScopes
TokenName string
RemoteAddr string
// AllowList is an optional, normalized allow-list
// of resource type and uuid entries. If empty, defaults to wildcard.
AllowList database.AllowList
}
Click to show internal directories.
Click to hide internal directories.