アップグレード後の SAML エラー

PostgreSQL 12 アップデート の議論を続けます:

アップグレード後、以前は表示されなかったサイト上で SAML エラーが発生しました:

申し訳ありませんが、アカウントの認証にエラーが発生しました。もう一度お試しください。

エラーログには以下のように記載されています:

(saml) 認証失敗!invalid_ticket: OneLogin::RubySaml::ValidationError, http://www.example.com はこのレスポンスの有効なオーディエンスではありません - 有効なオーディエンス: https://love.public.cat

サイトには Keycloak SAML クライアントを使用しています。プラグインに変更があり、追加の設定が必要になったのでしょうか?-- ちなみに、このプラグインは環境変数を使用しているため、マルチサイト環境での利用が難しいです。

Keycloak にオーディエンスフィールドを追加してみましたが、何も変化しませんでした。何かご存知でしょうか?

「いいね!」 1

何かアイデアはありますか?@vinothkannans

「いいね!」 1

グローバル設定または環境変数で「saml_base_url」を設定しましたか?/auth/saml/metadataにおいて、正しい値 love.public.cat ではなく、誤った値 www.example.com が設定されています。デフォルトでは、この設定に値を指定する必要はありません。

「いいね!」 2

いいえ、どこにもそれを指定していません。Keycloak側の同等の設定を削除してテストしたところ、認証が機能しなくなりました。また、SSOを削除しても同様に失敗しました。DiscourseとKeycloakで同じSAML設定であっても、異なるマルチサイトインストールでは同じ動作にならないため、さらに調査が必要です。SSOとの何らかの悪影響が働いている可能性はありませんか?例えば、ある認証モードが別のモードを何らかの時点で上書きしているようなケースなどです。

マルチサイト環境で「discourse-saml」プラグインを試したことはありません。このプラグインはマルチサイトと互換性がない可能性があります。複数のサイトで同時に SAML プラグインを有効にするのはお勧めしません。すべての環境変数を app.yml ファイルに設定してください。

「いいね!」 1