Class D4ScienceIAMClientAuthn4Client

All Implemented Interfaces:
IAMResponse

public class D4ScienceIAMClientAuthn4Client extends D4ScienceIAMClientAuthn
D4Science IAM client authentication implementation for client credentials flow.
Author:
Luca Frosini (ISTI-CNR)
  • Constructor Details

    • D4ScienceIAMClientAuthn4Client

      protected D4ScienceIAMClientAuthn4Client(D4ScienceIAMClient iamClient, String clientId, String clientSecret) throws D4ScienceIAMClientException
      Creates a new client authentication instance using client credentials.
      Parameters:
      iamClient - the D4Science IAM client instance
      clientId - the client ID
      clientSecret - the client secret
      Throws:
      D4ScienceIAMClientException - if authentication fails
    • D4ScienceIAMClientAuthn4Client

      protected D4ScienceIAMClientAuthn4Client(D4ScienceIAMClient iamClient, String clientId, String clientSecret, String context) throws D4ScienceIAMClientException
      Creates a new client authentication instance with specific context.
      Parameters:
      iamClient - the D4Science IAM client instance
      clientId - the client ID
      clientSecret - the client secret
      context - the requested token context audience
      Throws:
      D4ScienceIAMClientException - if authentication fails
  • Method Details

    • performClientAuthn

      protected static final org.gcube.common.keycloak.model.TokenResponse performClientAuthn(D4ScienceIAMClient iamClient, String clientId, String clientSecret, String context) throws D4ScienceIAMClientException
      Performs the actual client authentication using client credentials flow.
      Parameters:
      iamClient - the D4Science IAM client instance
      clientId - the client ID
      clientSecret - the client secret
      context - the requested token context audience
      Returns:
      the token response from authentication
      Throws:
      D4ScienceIAMClientException - if authentication fails