auth.go raw

   1  package http
   2  
   3  import (
   4  	"context"
   5  
   6  	smithy "github.com/aws/smithy-go"
   7  	"github.com/aws/smithy-go/auth"
   8  )
   9  
  10  // AuthScheme defines an HTTP authentication scheme.
  11  type AuthScheme interface {
  12  	SchemeID() string
  13  	IdentityResolver(auth.IdentityResolverOptions) auth.IdentityResolver
  14  	Signer() Signer
  15  }
  16  
  17  // Signer defines the interface through which HTTP requests are supplemented
  18  // with an Identity.
  19  type Signer interface {
  20  	SignRequest(context.Context, *Request, auth.Identity, smithy.Properties) error
  21  }
  22