Class IdcsMtRoleMapperProvider.DefaultMultitenancyEndpoints
java.lang.Object
io.helidon.security.providers.idcs.mapper.IdcsMtRoleMapperProvider.DefaultMultitenancyEndpoints
- All Implemented Interfaces:
IdcsMtRoleMapperProvider.MultitenancyEndpoints
- Enclosing class:
- IdcsMtRoleMapperProvider
protected static class IdcsMtRoleMapperProvider.DefaultMultitenancyEndpoints
extends Object
implements IdcsMtRoleMapperProvider.MultitenancyEndpoints
Default implementation of the
IdcsMtRoleMapperProvider.MultitenancyEndpoints.
Caches the endpoints per tenant.-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreates endpoints from provided OIDC configuration using default URIs. -
Method Summary
Modifier and TypeMethodDescriptionassertEndpoint(String tenantId) Asserter endpoint for a specific tenant.The tenant id of the infrastructure tenant.tokenEndpoint(String tenantId) Token endpoint for a specific tenant.booleanuseClientCredentials(String tenantId, WebTarget tokenEndpoint) Whether client credentials may be attached to a token request for the resolved endpoint.validateTenantId(String tenantId) Validate or normalize a tenant ID extracted from the request.
-
Constructor Details
-
DefaultMultitenancyEndpoints
Creates endpoints from provided OIDC configuration using default URIs.
- For Asserter endpoint:
/admin/v1/Asserter - For Token endpoint:
/oauth2/v1/token?IDCS_CLIENT_TENANT=
- Parameters:
config- IDCS base configuration
- For Asserter endpoint:
-
-
Method Details
-
idcsInfraTenantId
Description copied from interface:IdcsMtRoleMapperProvider.MultitenancyEndpointsThe tenant id of the infrastructure tenant.- Specified by:
idcsInfraTenantIdin interfaceIdcsMtRoleMapperProvider.MultitenancyEndpoints- Returns:
- id of the tenant
-
assertEndpoint
Description copied from interface:IdcsMtRoleMapperProvider.MultitenancyEndpointsAsserter endpoint for a specific tenant.- Specified by:
assertEndpointin interfaceIdcsMtRoleMapperProvider.MultitenancyEndpoints- Parameters:
tenantId- id of tenant to get the endpoint for- Returns:
- web target for the tenant
-
tokenEndpoint
Description copied from interface:IdcsMtRoleMapperProvider.MultitenancyEndpointsToken endpoint for a specific tenant.- Specified by:
tokenEndpointin interfaceIdcsMtRoleMapperProvider.MultitenancyEndpoints- Parameters:
tenantId- id of tenant to get the endpoint for- Returns:
- web target for the tenant
-
useClientCredentials
Description copied from interface:IdcsMtRoleMapperProvider.MultitenancyEndpointsWhether client credentials may be attached to a token request for the resolved endpoint. Custom endpoint implementations should override this method to returntrueonly for endpoints they have validated as trusted for the provided tenant. The default returnsfalse.- Specified by:
useClientCredentialsin interfaceIdcsMtRoleMapperProvider.MultitenancyEndpoints- Parameters:
tenantId- id of tenant to get the endpoint fortokenEndpoint- resolved token endpoint- Returns:
- whether client credentials may be attached
-
validateTenantId
Description copied from interface:IdcsMtRoleMapperProvider.MultitenancyEndpointsValidate or normalize a tenant ID extracted from the request. Custom endpoint implementations can use the tenant ID format required by their endpoint mapping. The default returns the tenant ID unchanged.- Specified by:
validateTenantIdin interfaceIdcsMtRoleMapperProvider.MultitenancyEndpoints- Parameters:
tenantId- extracted tenant ID- Returns:
- tenant ID to use for endpoint resolution
-