<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Try adding:</div>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
"token_endpoint_auth_method":"client_secret_post"</div>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
to your OIDC registration for the RP. Or you could set a similar setting in relying party override.</div>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
- Steve Mak</div>
<div style="direction: ltr; font-family: Aptos, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div id="mail-editor-reference-message-container" style="color: inherit; background-color: inherit;">
<div class="ms-outlook-mobile-reference-message skipProofing">
<meta name="Generator" content="Microsoft Exchange Server" style="color: inherit; background-color: inherit;">
</div>
<div style="padding: 3pt 0in 0in; border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) currentcolor currentcolor;">
<div class="ms-outlook-mobile-reference-message skipProofing" style="text-align: left; font-family: Aptos; font-size: 12pt; color: black;">
<b>From: </b>users <users-bounces@shibboleth.net> on behalf of Guillaume Rousse via users <users@shibboleth.net><br>
<b>Date: </b>Monday, August 10, 2026 at 9:29 AM<br>
<b>To: </b>Shib Users <users@shibboleth.net><br>
<b>Cc: </b>Guillaume Rousse <guillaume.rousse@renater.fr><br>
<b>Subject: </b>OIDC client authentication issue<br>
<br>
</div>
</div>
<div class="PlainText" style="font-size: 11pt;">Hello list.<br>
<br>
We're trying to configure OpenID authentication with a Stormshield<br>
firewall, but it fails immediatly after discovery step:<br>
<br>
2026-08-10 14:58:42 - DEBUG [PROTOCOL_MESSAGE.OAUTH2:140] -<br>
OpenIDConfigurationSuccessResponse{content={...}}<br>
2026-08-10 14:58:42 - INFO [Shibboleth-Audit.OIDC.Configuration:333] -<br>
T:2026-08-10T12:58:42.141238445Z, b:, I:, SP:,<br>
P:http://shibboleth.net/ns/profiles/oidc/configuration, IDP:,<br>
bb:OpenIDConfigurationSuccessResponse, III:, u:, ac:, attr:, n:, i:, X:,<br>
UA:snsoidc, a:10.45.50.12<br>
<br>
2026-08-10 14:58:42 - DEBUG [PROTOCOL_MESSAGE.OAUTH2:114] -<br>
OIDCTokenRequestDecoder{authorizationGrant=ClientCredentialsGrant{type=client_credentials},<br>
clientAuthentication=ClientAuthentication{clientId=XXX,<br>
method=client_secret_post}, customParameters={},<br>
endpointURI=https://10.45.49.26/idp/profile/oidc/token}<br>
2026-08-10 14:58:42 - WARN<br>
[net.shibboleth.idp.plugin.oidc.op.authn.impl.ValidateClientAuthenticationType:169]<br>
- Profile Action ValidateClientAuthenticationType: Client<br>
'dev-app-sns-eva-0001.renater.fr' registered client_secret_basic but<br>
attempted client_secret_post<br>
<br>
2026-08-10 14:58:42 - DEBUG [PROTOCOL_MESSAGE.OAUTH2:140] -<br>
TokenErrorResponse{errorObject=ErrorObject{httpStatusCode=400,<br>
code=invalid_request, description=InvalidEvent}}<br>
2026-08-10 14:58:42 - INFO [Shibboleth-Audit.OIDC.Token:333] -<br>
T:2026-08-10T12:58:42.163634311Z, b:TokenRequest, I:,<br>
SP:dev-app-sns-eva-0001.renater.fr,<br>
P:http://shibboleth.net/ns/profiles/oauth2/token,<br>
IDP:https://dev-idp.renater.fr, bb:TokenErrorResponse, III:, u:, ac:,<br>
attr:, n:, i:, X:, UA:snsoidc, a:10.45.50.1<br>
<br>
Dumping raw HTTP exchange shows a standard POST request:<br>
POST /idp/profile/oidc/token HTTP/1.1\r\n<br>
Host: dev-idp.renater.fr\r\n<br>
User-Agent: snsoidc\r\<br>
Accept: */*\r\n<br>
Content-Type: application/x-www-form-urlencoded\r\n<br>
Content-Length: 98\r\n<br>
\r\n<br>
grant_type=client_credentials&client_id=XXX&client_secret=YYY<br>
<br>
I'm confused by log message "client XXX registered client_secret_basic<br>
but attempted client_secret_post", which seems to imply the RP says<br>
something, but acts differently, whereas I see no evidence in exchanged<br>
messages than the RP does anything else than trying to authenticate with<br>
client_secret_post method.<br>
<br>
Is the RP supposed to tell the server which method he is using, or is<br>
the OP supposed to adapt itself to whatever method is actually used ?<br>
<br>
Regards<br>
--<br>
Guillaume Rousse<br>
Direction des Services Applicatifs<br>
RENATER - Paris<br>
<br>
</div>
</div>
</body>
</html>