我正在尝试将一些组成员身份作为对 ADFS3 的声明发送给云依赖方。
我正在使用Microsoft文章(如下)创建一个规则,将组成员身份作为声明发送。 MS 文章说,在"声明规则模板"下,选择"将组成员身份作为声明",然后在为规则命名并从 Active Directory 中选择一个组后,它没有指定要为"传出声明类型"选择什么以及在"传出声明值"框中输入的内容。
有人有什么建议吗?
https://learn.microsoft.com/en-us/windows-server/identity/ad-fs/operations/create-a-rule-to-send-group-membership-as-a-claim
谢谢 马吉德
以下自定义规则有效。
@RuleName = "Add Group Claims"
c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
Issuer == "AD AUTHORITY"]
=> add(store = "Active Directory", types = ("http://test.com/phase1"), query =
";memberOf;{0}", param = c.Value);
@RuleName = "Edit Group"
c:[Type == "http://test.com/phase1"]
=> add(Type = "http://test.com/phase2", Value = RegExReplace(c.Value, ",[^n]*", ""));
@RuleName = "Remove CN from Group"
c:[Type == "http://test.com/phase2"]
=> add(Type = "http://schemas.xmlsoap.org/claims/Group", Value = RegExReplace(c.Value,
"^CN=", ""));
@RuleName = "Send Only Groups Containing ADFS"
c:[Type == "http://schemas.xmlsoap.org/claims/Group", Value =~ "(?i)Groups-prefix"]
假设您要传递AD组"isAdmin"。
第一部分是在AD中选择该组。
然后确定组名(例如 http://company.com/Admin),然后确定组值(例如isAdmin)。
然后,如果用户是该组的成员,您将获得一个声明:
http://company.com/Admin/isAdmin