0

カスタムクレームルールでグループのカスタム属性を取得しようとしています。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セキュリティグループを再度照会する方法を見つけることを試みています。

答えて

0

必要なフォーマットは、

C:[タイプ== "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/ou "] =>号(ストア=の "Active Directory"、タイプ=(" http://schemas.company.co.nz/claims/guid")、クエリ=「(OU = {0});のobjectGUID;ドメイン\ユーザー"、param = c.Value);

"ドメイン"はADFSのドメインである必要があります。 「ユーザー」は何でもかまいません。

注意ルールはフリーフォームなので、フォーマットエラーが発生する可能性がありますが、そのアイデアを得ることができます。

+0

答えをありがとう。 URL属性のクエリが不可能なので、私はすべてを再設計しました。 (それはMSのサポートが私に言ったことです) – Asdfg

関連する問題