カスタムクレームルールでグループのカスタム属性を取得しようとしています。ADグループを照会してカスタム属性を取得する
問題は私が何をするにしても、常にユーザーに対して問合せを行います。ここで
は私のカスタムクレームルールがどのように見えるかです:
//すべてのグループのユーザーを取得するには、ルールの一部です:
c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"]
=> issue(store = "Active Directory", types = ("http://schemas.xmlsoap.org/claims/Group"), query = ";tokenGroups;{0}", param = c.Value);
//グループにあるURLの属性を取得するルール。
c:[Type == "http://schemas.xmlsoap.org/claims/Group"]
=> add(store = "Active Directory", types = ("http://temp/urlsOnGroup"), query = ";url;{0}", param = c.Value);
これが実行されると、GroupNameでユーザーを検索しようとしていることを示すAD FSサーバーのイベントログにエラーが表示されます。
Microsoft.IdentityServer.ClaimsPolicy.Language.PolicyEvaluationException:
POLICY0018: Query ';url;{0}' to attribute store 'Active Directory' failed:
'POLICY3826: User name 'GroupName' in LDAP query ';url;GroupName' is not in the
required 'domain\user' format. POLICY3824: The LDAP query to the Active
Directory attribute store must have three parts separated by semicolons. The
first part is the LDAP query filter, the second part is a comma-separated list
of LDAP attribute names, and the third part is the user name in 'domain\user'
format.'. --->
Microsoft.IdentityServer.ClaimsPolicy.Engine.AttributeStore.AttributeStoreQueryF
ormatException: POLICY3826: User name 'GroupName' in LDAP query ';url;GroupName'
is not in the required 'domain\user' format. POLICY3824: The LDAP query to the
Active Directory attribute store must have three parts separated by semicolons.
The first part is the LDAP query filter, the second part is a comma-separated
list of LDAP attribute names, and the third part is the user name in
'domain\user' format.
が、私は可能であればCustom Attribute Store
を書き込まないようにしたい:最後のクエリは、ユーザーの代わりにグループ名に対して
エラーメッセージを発生したように、私は、このルールを指定するにはどうすればよい
。私はすでにそれをしましたが、私は元のADセキュリティグループを再度照会する方法を見つけることを試みています。
答えをありがとう。 URL属性のクエリが不可能なので、私はすべてを再設計しました。 (それはMSのサポートが私に言ったことです) – Asdfg