Interface AuthScheme<T extends Identity>
- Type Parameters:
T
- The type of theIdentity
used by this authentication scheme.
- All Known Subinterfaces:
AwsV4aAuthScheme
,AwsV4AuthScheme
,BearerAuthScheme
,NoAuthAuthScheme
,S3ExpressAuthScheme
- All Known Implementing Classes:
CrtS3ExpressNoOpAuthScheme
,DefaultAwsV4aAuthScheme
,DefaultAwsV4AuthScheme
,DefaultBearerAuthScheme
,DefaultNoAuthAuthScheme
,DefaultS3ExpressAuthScheme
public interface AuthScheme<T extends Identity>
An authentication scheme, composed of:
- A scheme ID - A unique identifier for the authentication scheme.
- An identity provider - An API that can be queried to acquire the customer's identity.
- A signer - An API that can be used to sign HTTP requests.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionidentityProvider
(IdentityProviders providers) Retrieve the identity provider associated with this authentication scheme.schemeId()
Retrieve the scheme ID, a unique identifier for the authentication scheme.signer()
Retrieve the signer associated with this authentication scheme.
-
Method Details
-
schemeId
String schemeId()Retrieve the scheme ID, a unique identifier for the authentication scheme. -
identityProvider
Retrieve the identity provider associated with this authentication scheme. The identity generated by this provider is guaranteed to be supported by the signer in this authentication scheme.For example, if the scheme ID is aws.auth#sigv4, the provider returns an
AwsCredentialsIdentity
, if the scheme ID is httpBearerAuth, the provider returns aTokenIdentity
.Note, the returned identity provider may differ from the type of identity provider retrieved from the provided
IdentityProviders
. -
signer
HttpSigner<T> signer()Retrieve the signer associated with this authentication scheme. This signer is guaranteed to support the identity generated by the identity provider in this authentication scheme.
-