Documentation ¶
Index ¶
- func NewOAuth2ClientCredentialsMiddleware(logger logger.Logger) middleware.Middleware
- type Middleware
- func (m *Middleware) GetComponentMetadata() (metadataInfo mdutils.MetadataMap)
- func (m *Middleware) GetHandler(_ context.Context, metadata middleware.Metadata) (func(next http.Handler) http.Handler, error)
- func (m *Middleware) GetToken(ctx context.Context, conf *clientcredentials.Config) (*oauth2.Token, error)
- func (m *Middleware) SetTokenProvider(tokenProvider TokenProviderInterface)
- type TokenProviderInterface
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewOAuth2ClientCredentialsMiddleware ¶
func NewOAuth2ClientCredentialsMiddleware(logger logger.Logger) middleware.Middleware
NewOAuth2ClientCredentialsMiddleware returns a new oAuth2 middleware.
Types ¶
type Middleware ¶
type Middleware struct {
// contains filtered or unexported fields
}
Middleware is an oAuth2 authentication middleware.
func (*Middleware) GetComponentMetadata ¶ added in v1.11.0
func (m *Middleware) GetComponentMetadata() (metadataInfo mdutils.MetadataMap)
func (*Middleware) GetHandler ¶
func (m *Middleware) GetHandler(_ context.Context, metadata middleware.Metadata) (func(next http.Handler) http.Handler, error)
GetHandler retruns the HTTP handler provided by the middleware.
func (*Middleware) GetToken ¶
func (m *Middleware) GetToken(ctx context.Context, conf *clientcredentials.Config) (*oauth2.Token, error)
GetToken returns a token from the current OAuth2 ClientCredentials Configuration.
func (*Middleware) SetTokenProvider ¶
func (m *Middleware) SetTokenProvider(tokenProvider TokenProviderInterface)
SetTokenProvider will enable to change the tokenProvider used after instanciation (needed for mocking).
type TokenProviderInterface ¶
type TokenProviderInterface interface {
GetToken(ctx context.Context, conf *clientcredentials.Config) (*oauth2.Token, error)
}
TokenProviderInterface provides a common interface to Mock the Token retrieval in unit tests.
Click to show internal directories.
Click to hide internal directories.