今日のひとこと Challange IT For Future

FessのSAML連携でAudienceがないアサーションを拒否する

Fess 読了 2分
目次
  1. IdPのAudienceを確認してから有効にする
  2. 利用できるプラグインの条件
  3. 関連PR

FessのSAML連携では、IdPが発行したアサーションのAudienceに、利用先であるFess(SP)のエンティティIDが含まれるかを確認します。開発版のSAMLプラグインでは、Audienceを省略したアサーションも拒否できるようになります。

IdPのAudienceを確認してから有効にする

Fess側のSPエンティティIDと、IdPが発行するAudienceを確認します。両方が一致している検証環境で、Fessの system.properties に saml.security.reject_missing_audience=true を設定し、再起動して通常のSSOログインを試します。IdPが複数ある場合は、使っている各経路を確認します。 Audience検証は厳格モードで行うため、同じファイルで saml.strict=true も確認します。

初期値は false です。false ではAudienceがなくても、この項目を理由には拒否されません。true にするとAudienceがない場合も不一致と同じ WRONG_AUDIENCE で拒否されます。Audienceが指定され、そこにSPのエンティティIDが含まれない場合は、どちらの設定値でも拒否されます。プラグインが読み取るのは system.properties のキーで、このキーを -Dfess.system.saml… で渡す方法は対象外です。

利用できるプラグインの条件

この設定にはjava-saml 3.1.3以降の実装を使うfess-sso-samlが必要です。

関連PR