docfix/TODO Set token_endpoint_auth_method in accordance to the Consumer.AppType value

This commit is contained in:
Marko Milić 2022-05-27 09:24:11 +02:00
parent 3b1533aab3
commit 237aca6e22
2 changed files with 14 additions and 4 deletions

View File

@ -136,9 +136,12 @@ class ConsumerRegistration extends MdcLoggable {
HydraUtil.createHydraClient(consumer, oAuth2Client => {
val signingAlg = signingAlgVar.is
val hydraTokenEndpointAuthMethod =
APIUtil.getPropsValue("hydra_token_endpoint_auth_method", "private_key_jwt")
oAuth2Client.setTokenEndpointAuthMethod(hydraTokenEndpointAuthMethod)
// TODO Set token_endpoint_auth_method in accordance to the Consumer.AppType value
// Consumer.AppType = Confidential => client_secret_post
// Consumer.AppType = Public => private_key_jwt
// Consumer.AppType = Unknown => private_key_jwt
oAuth2Client.setTokenEndpointAuthMethod(HydraUtil.hydraTokenEndpointAuthMethod)
oAuth2Client.setTokenEndpointAuthSigningAlg(signingAlg)
oAuth2Client.setRequestObjectSigningAlg(signingAlg)

View File

@ -25,6 +25,9 @@ object HydraUtil extends MdcLoggable{
val mirrorConsumerInHydra = APIUtil.getPropsAsBoolValue("mirror_consumer_in_hydra", false)
val hydraTokenEndpointAuthMethod =
APIUtil.getPropsValue("hydra_token_endpoint_auth_method", "private_key_jwt")
lazy val hydraPublicUrl = APIUtil.getPropsValue("hydra_public_url")
.openOrThrowException(s"If props $INTEGRATE_WITH_HYDRA is true, hydra_public_url value should not be blank")
.replaceFirst("/$", "")
@ -87,7 +90,11 @@ object HydraUtil extends MdcLoggable{
val clientMeta = Map("client_certificate" -> consumer.clientCertificate.get).asJava
oAuth2Client.setMetadata(clientMeta)
}
oAuth2Client.setTokenEndpointAuthMethod("client_secret_post")
// TODO Set token_endpoint_auth_method in accordance to the Consumer.AppType value
// Consumer.AppType = Confidential => client_secret_post
// Consumer.AppType = Public => private_key_jwt
// Consumer.AppType = Unknown => private_key_jwt
oAuth2Client.setTokenEndpointAuthMethod(HydraUtil.hydraTokenEndpointAuthMethod)
val decoratedClient = fun(oAuth2Client)
val oAuth2ClientResult = Some(hydraAdmin.createOAuth2Client(decoratedClient))