Record Class ProtectedResourceMetadata
java.lang.Object
java.lang.Record
io.micronaut.security.oauth2.metadata.ProtectedResourceMetadata
- Record Components:
resource
- The protected resource's resource identifier, which is a URL that uses the https scheme and has no fragment component.- JSON array containing a list of OAuth authorization server issuer identifiers.
jwksUri
- URL of the protected resource's JSON Web Key (JWK) Set [JWK] document.scopesSupported
- JSON array containing a list of scope values.bearerMethodsSupported
- JSON array containing a list of the supported methods of sending an OAuth 2.0 bearer token.resourceSigningAlgValuesSupported
- JSON array containing a list of the JWS [JWS] signing algorithms (alg values).resourceName
- Human-readable name of the protected resource intended for display to the end user.resourceDocumentation
- URL of a page containing human-readable information that developers might want or need to know when using the protected resource.resourcePolicyUri
- URL of a page containing human-readable information about the protected resource's requirements on how the client can use the data provided by the protected resource.resourceTosUri
- URL of a page containing human-readable information about the protected resource's terms of service.tlsClientCertificateBoundAccessTokens
- Boolean value indicating protected resource support for mutual-TLS client certificate-bound access tokens.- JSON array containing a list of the authorization details type values supported by the resource server when the authorization_details request parameter [RFC9396] is used.
dpopSigningAlgValuesSupported
- SON array containing a list of the JWS alg values (from the "JSON Web Signature and Encryption Algorithms" registry [IANA.JOSE]) supported by the resource server for validating Demonstrating Proof of Possession (DPoP) proof JWTs [RFC9449].dpopBoundAccessTokensRequired
- Boolean value specifying whether the protected resource always requires the use of DPoP-bound access tokens [RFC9449].
public record ProtectedResourceMetadata(@NonNull String resource, @Nullable List<String> authorizationServers, @Nullable String jwksUri, @Nullable List<String> scopesSupported, @Nullable List<String> bearerMethodsSupported, @Nullable List<String> resourceSigningAlgValuesSupported, String resourceName, @Nullable String resourceDocumentation, @Nullable String resourcePolicyUri, @Nullable String resourceTosUri, @Nullable Boolean tlsClientCertificateBoundAccessTokens, @Nullable List<String> authorizationDetailsTypesSupported, @Nullable List<String> dpopSigningAlgValuesSupported, Boolean dpopBoundAccessTokensRequired)
extends Record
Protected Resource Metadata as defined in RFC9728.
Protected Resource Metadata Terminology
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionProtectedResourceMetadata
(@NonNull String resource, @Nullable List<String> authorizationServers, @Nullable String jwksUri, @Nullable List<String> scopesSupported, @Nullable List<String> bearerMethodsSupported, @Nullable List<String> resourceSigningAlgValuesSupported, String resourceName, @Nullable String resourceDocumentation, @Nullable String resourcePolicyUri, @Nullable String resourceTosUri, @Nullable Boolean tlsClientCertificateBoundAccessTokens, @Nullable List<String> authorizationDetailsTypesSupported, @Nullable List<String> dpopSigningAlgValuesSupported, Boolean dpopBoundAccessTokensRequired) Creates an instance of aProtectedResourceMetadata
record class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theauthorizationDetailsTypesSupported
record component.Returns the value of theauthorizationServers
record component.Returns the value of thebearerMethodsSupported
record component.static @NonNull ProtectedResourceMetadata.Builder
builder()
Create a new builder.Returns the value of thedpopBoundAccessTokensRequired
record component.Returns the value of thedpopSigningAlgValuesSupported
record component.final boolean
Indicates whether some other object is "equal to" this one.final int
hashCode()
Returns a hash code value for this object.@Nullable String
jwksUri()
Returns the value of thejwksUri
record component.@NonNull String
resource()
Returns the value of theresource
record component.@Nullable String
Returns the value of theresourceDocumentation
record component.Returns the value of theresourceName
record component.@Nullable String
Returns the value of theresourcePolicyUri
record component.Returns the value of theresourceSigningAlgValuesSupported
record component.@Nullable String
Returns the value of theresourceTosUri
record component.Returns the value of thescopesSupported
record component.@Nullable Boolean
Returns the value of thetlsClientCertificateBoundAccessTokens
record component.final String
toString()
Returns a string representation of this record class.
-
Constructor Details
-
ProtectedResourceMetadata
public ProtectedResourceMetadata(@NonNull @NonNull String resource, @Nullable @Nullable List<String> authorizationServers, @Nullable @Nullable String jwksUri, @Nullable @Nullable List<String> scopesSupported, @Nullable @Nullable List<String> bearerMethodsSupported, @Nullable @Nullable List<String> resourceSigningAlgValuesSupported, String resourceName, @Nullable @Nullable String resourceDocumentation, @Nullable @Nullable String resourcePolicyUri, @Nullable @Nullable String resourceTosUri, @Nullable @Nullable Boolean tlsClientCertificateBoundAccessTokens, @Nullable @Nullable List<String> authorizationDetailsTypesSupported, @Nullable @Nullable List<String> dpopSigningAlgValuesSupported, Boolean dpopBoundAccessTokensRequired) Creates an instance of aProtectedResourceMetadata
record class.- Parameters:
resource
- the value for theresource
record componentauthorizationServers
- the value for theauthorizationServers
record componentjwksUri
- the value for thejwksUri
record componentscopesSupported
- the value for thescopesSupported
record componentbearerMethodsSupported
- the value for thebearerMethodsSupported
record componentresourceSigningAlgValuesSupported
- the value for theresourceSigningAlgValuesSupported
record componentresourceName
- the value for theresourceName
record componentresourceDocumentation
- the value for theresourceDocumentation
record componentresourcePolicyUri
- the value for theresourcePolicyUri
record componentresourceTosUri
- the value for theresourceTosUri
record componenttlsClientCertificateBoundAccessTokens
- the value for thetlsClientCertificateBoundAccessTokens
record componentauthorizationDetailsTypesSupported
- the value for theauthorizationDetailsTypesSupported
record componentdpopSigningAlgValuesSupported
- the value for thedpopSigningAlgValuesSupported
record componentdpopBoundAccessTokensRequired
- the value for thedpopBoundAccessTokensRequired
record component
-
-
Method Details
-
builder
Create a new builder.- Returns:
- A builder instance.
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object)
. -
resource
Returns the value of theresource
record component.- Returns:
- the value of the
resource
record component
-
authorizationServers
Returns the value of theauthorizationServers
record component.- Returns:
- the value of the
authorizationServers
record component
-
jwksUri
Returns the value of thejwksUri
record component.- Returns:
- the value of the
jwksUri
record component
-
scopesSupported
Returns the value of thescopesSupported
record component.- Returns:
- the value of the
scopesSupported
record component
-
bearerMethodsSupported
Returns the value of thebearerMethodsSupported
record component.- Returns:
- the value of the
bearerMethodsSupported
record component
-
resourceSigningAlgValuesSupported
Returns the value of theresourceSigningAlgValuesSupported
record component.- Returns:
- the value of the
resourceSigningAlgValuesSupported
record component
-
resourceName
Returns the value of theresourceName
record component.- Returns:
- the value of the
resourceName
record component
-
resourceDocumentation
Returns the value of theresourceDocumentation
record component.- Returns:
- the value of the
resourceDocumentation
record component
-
resourcePolicyUri
Returns the value of theresourcePolicyUri
record component.- Returns:
- the value of the
resourcePolicyUri
record component
-
resourceTosUri
Returns the value of theresourceTosUri
record component.- Returns:
- the value of the
resourceTosUri
record component
-
tlsClientCertificateBoundAccessTokens
Returns the value of thetlsClientCertificateBoundAccessTokens
record component.- Returns:
- the value of the
tlsClientCertificateBoundAccessTokens
record component
-
authorizationDetailsTypesSupported
Returns the value of theauthorizationDetailsTypesSupported
record component.- Returns:
- the value of the
authorizationDetailsTypesSupported
record component
-
dpopSigningAlgValuesSupported
Returns the value of thedpopSigningAlgValuesSupported
record component.- Returns:
- the value of the
dpopSigningAlgValuesSupported
record component
-
dpopBoundAccessTokensRequired
Returns the value of thedpopBoundAccessTokensRequired
record component.- Returns:
- the value of the
dpopBoundAccessTokensRequired
record component
-