Documentation
¶
Overview ¶
Package credentials is the framework-owned boundary shared by S3, R2 and SES. Applications can use static settings, the AWS chain or a rotating Provider without importing an SDK. Credentials are never logged or stored in reports.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Provider ¶
type Provider interface {
// Retrieve retrieves cloud credentials for the supplied context.
Retrieve(context.Context) (Value, error)
}
Provider implementations own refresh and must honor cancellation. Retrieve returns an immutable snapshot; callers never retry ambiguous delivery.
type ProviderFunc ¶
ProviderFunc adapts a function to Provider.
type Settings ¶
Settings selects a reusable source. Chain preserves standard AWS discovery; R2 configuration requires an explicitly selected non-chain source.
func DefaultSettings ¶
func DefaultSettings() Settings
DefaultSettings returns credential settings using the AWS provider chain.
type SettingsConfigKeySet ¶
type SettingsConfigKeySet struct {
// Mode selects mode. Set accepts Mode.
Mode config.Key[Settings, Mode]
// Profile selects profile. Set accepts string.
Profile config.Key[Settings, string]
// AccessKey selects access_key. Set accepts secret.String.
AccessKey config.Key[Settings, secret.String]
// SecretKey selects secret_key. Set accepts secret.String.
SecretKey config.Key[Settings, secret.String]
// SessionToken selects session_token. Set accepts secret.String.
SessionToken config.Key[Settings, secret.String]
}
SettingsConfigKeySet exposes compiler-checked configuration overrides.
func SettingsConfigKeys ¶
func SettingsConfigKeys() SettingsConfigKeySet
SettingsConfigKeys derives keys from the handwritten settings declaration.
type Source ¶
type Source struct {
// contains filtered or unexported fields
}
Source owns the chain's transport. Prepare is pure; Start loads chain settings at boot. Retrieval/refresh occurs on demand through the existing AWS SDK.
func Prepare ¶
Prepare validates settings and creates a credential source that must be started before retrieval.
func (*Source) Close ¶
Close marks the source closed and closes idle transport connections. A nil source is harmless.