use of io.jans.ca.common.response.GetJwksResponse in project jans by JanssenProject.
the class GetJwksOperation method execute.
@Override
public IOpResponse execute(GetJwksParams params) {
if (StringUtils.isEmpty(params.getOpHost()) && StringUtils.isEmpty(params.getOpConfigurationEndpoint())) {
throw new HttpException(ErrorResponseCode.INVALID_OP_HOST_AND_CONFIGURATION_ENDPOINT);
}
try {
final DiscoveryService discoveryService = getDiscoveryService();
final OpenIdConfigurationResponse openIdConfigurationResponse = discoveryService.getConnectDiscoveryResponse(params.getOpConfigurationEndpoint(), params.getOpHost(), params.getOpDiscoveryPath());
final String jwksUri = openIdConfigurationResponse.getJwksUri();
final JwkClient jwkClient = new JwkClient(jwksUri);
jwkClient.setExecutor(getHttpService().getClientEngine());
final JwkResponse serverResponse = jwkClient.exec();
final GetJwksResponse response = new GetJwksResponse();
response.setKeys(serverResponse.getJwks().getKeys());
return new POJOResponse(response);
} catch (Exception ex) {
throw new RuntimeException(ex);
}
}
use of io.jans.ca.common.response.GetJwksResponse in project jans by JanssenProject.
the class GetJwksTest method test.
@Test(enabled = false)
@Parameters({ "host", "opHost", "opDiscoveryPath" })
public void test(String host, String opHost, @Optional String opDiscoveryPath) {
final ClientInterface client = Tester.newClient(host);
final GetJwksParams params = new GetJwksParams();
params.setOpHost(opHost);
params.setOpDiscoveryPath(opDiscoveryPath);
final GetJwksResponse response = client.getJwks(Tester.getAuthorization(), null, params);
assertNotNull(response);
assertNotNull(response.getKeys());
assertFalse(response.getKeys().isEmpty());
}
use of io.jans.ca.common.response.GetJwksResponse in project jans by JanssenProject.
the class GetJwksTest method test_withOpConfigurationEndpoint.
@Test
@Parameters({ "host", "opConfigurationEndpoint" })
public void test_withOpConfigurationEndpoint(String host, String opConfigurationEndpoint) {
final ClientInterface client = Tester.newClient(host);
final GetJwksParams params = new GetJwksParams();
params.setOpConfigurationEndpoint(opConfigurationEndpoint);
final GetJwksResponse response = client.getJwks(Tester.getAuthorization(), null, params);
assertNotNull(response);
assertNotNull(response.getKeys());
assertFalse(response.getKeys().isEmpty());
}
Aggregations