OpenID Connect (OIDC) SSO fails with "ID token parsing failed"
プラットフォームについて: Data Center のみ - この記事は、Data Center プラットフォームのアトラシアン製品にのみ適用されます。
この KB は Data Center バージョンの製品用に作成されています。Data Center 固有ではない機能の Data Center KB は、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。
*Fisheye および Crucible は除く
要約
When trying to log into the application, we are faced with an error like this one below after being redirected from the identity provider. It is shown to the user and in the logs.
2021-11-19 14:15:06,421 http-nio-8080-exec-5 ERROR abc123 855x315876x1 myuser 127.0.0.1 /plugins/servlet/oidc/callback [c.a.p.a.i.web.filter.ErrorHandlingFilter] [UUID: XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX] ID token parsing failed
com.atlassian.plugins.authentication.impl.web.usercontext.AuthenticationFailedException: ID token parsing failed
at com.atlassian.plugins.authentication.impl.web.oidc.OidcConsumerServlet.getUsername(OidcConsumerServlet.java:159)
...
Caused by: com.nimbusds.jwt.proc.BadJWTException: Unexpected JWT issuer: https://myssoprovider.com/myapp/
at com.nimbusds.openid.connect.sdk.validators.IDTokenClaimsVerifier.verify(IDTokenClaimsVerifier.java:173)
...
原因
This Unexpected JWT issuer
error means that the issuer returned by the OIDC process doesn't match the one configured in Jira.
ソリューション
Set the issuer URL to the one the IdP is sending - that is, the one that Jira is reporting as unexpected. In this example, it would be https://myssoprovider.com/myapp/