123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package auth
- import (
- "github.com/aws/smithy-go/auth"
- smithyhttp "github.com/aws/smithy-go/transport/http"
- )
- // HTTPAuthScheme is the SDK's internal implementation of smithyhttp.AuthScheme
- // for pre-existing implementations where the signer was added to client
- // config. SDK clients will key off of this type and ensure per-operation
- // updates to those signers persist on the scheme itself.
- type HTTPAuthScheme struct {
- schemeID string
- signer smithyhttp.Signer
- }
- var _ smithyhttp.AuthScheme = (*HTTPAuthScheme)(nil)
- // NewHTTPAuthScheme returns an auth scheme instance with the given config.
- func NewHTTPAuthScheme(schemeID string, signer smithyhttp.Signer) *HTTPAuthScheme {
- return &HTTPAuthScheme{
- schemeID: schemeID,
- signer: signer,
- }
- }
- // SchemeID identifies the auth scheme.
- func (s *HTTPAuthScheme) SchemeID() string {
- return s.schemeID
- }
- // IdentityResolver gets the identity resolver for the auth scheme.
- func (s *HTTPAuthScheme) IdentityResolver(o auth.IdentityResolverOptions) auth.IdentityResolver {
- return o.GetIdentityResolver(s.schemeID)
- }
- // Signer gets the signer for the auth scheme.
- func (s *HTTPAuthScheme) Signer() smithyhttp.Signer {
- return s.signer
- }
- // WithSigner returns a new instance of the auth scheme with the updated signer.
- func (s *HTTPAuthScheme) WithSigner(signer smithyhttp.Signer) *HTTPAuthScheme {
- return NewHTTPAuthScheme(s.schemeID, signer)
- }
|