0

まあ、私はこれで何日も立ち往生しており、SOが私の唯一の希望です.

ADFS 3.0 で Windows 2012 r2、SAML 2.0 シングル サインオン プラグインで bitnami Wordpress (4.2.2)、SimpleSAMLphp 1.13 で Ubuntu サーバーを構成しました。

WordPress の設定は次のようになります。

WordPress の NameID ポリシー: WordPress の NameID ポリシー

WordPress の属性: WordPress の属性

認証元にはSSPのファイルモジュールを使用しています。次の属性があります。

User-NameユーザーID、mailユーザーの電子メールアドレス、およびFilter-Idユーザーのグループ。

ADFS 側では、クレーム プロバイダーの信頼を SSP として構成し、証明書利用者の信頼を WP として構成しました。

それらのクレーム ルールは次のとおりです。

SSP:

ルール 1: 名前 ID ポリシーを変換します。このルールが設定されていない場合、WP の SSP は NameIDPolicy 無効なエラーを返します。

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] == "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"] => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType);

ルール 2: すべてのクレームを渡す

c:[Type == "https://example.com/simplesamlphp/saml2/idp/metadata.php"] => issue(claim = c);

ワードプレス:

ルール 1: name 属性を WP の属性に変換する

c:[Type == "User-Name"] => add(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Value = c.Value);

ルール 2: メール属性を変換する

c:[Type == "mail"] => add(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/emailaddress", Value = c.Value);

ルール 3: グループ属性を変換する

c:[Type == "Filter-Id"] => add(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/Group", Value = c.Value);

ルール 4: Givenname 属性に変換する

c:[Type == "User-Name"] => add(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/givenname", Value = c.Value);

ルール 5: 姓属性に変換する

c:[Type == "User-Name"] => add(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/surname", Value = c.Value);

ルール 6: Name id ポリシーを変換し、すべてのクレームを発行する

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"] => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress");

ユーザーは正常に認証されます (SP/IdP 開始)。しかし、WP側では、というエラーが表示されますUsername was not provided

ADFS トレーサー ログに表示されるSSO token is null or empty. Cannot write SSO token to Cookies.

IdP でユーザー ログインを確認したところ、ユーザーがログインしていることがわかります。トレーサー ログも表示されます。Valid assertion returned from 'https://example.com/simplesamlphp/saml2/idp/metadata.php'

クレーム ルールに何か問題があると思いますが、構成の見た目と動作が正常であるため、わかりません。

どんなポインタでも大歓迎です!

ありがとう!

4

1 に答える 1