在我们的系统中,我们有来自不同域的用户(假设他们的邮件地址是@ gmail.com,@ outlook.com,@ yahoo.com) . 我要求根据用户来自的域限制用户访问RP . 对于此设置,我尝试使用以下规则在ADFS中配置颁发授权规则(仅允许来自特定域的用户)
c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress", Value =~ "gmail.com$"]
=> issue(Type = "http://schemas.microsoft.com/authorization/claims/permit", Value = "true");
我通过发行授权规则选项卡传递了电子邮件地址声明,所以我没有在technet link(在 Sending the execution output to the claims pipeline Section 下面)中提到的授权规则集中初始化输入
在为给定规则集运行整个过程(步骤1,2和3)之后,新发出的传出声明(输出声明集的内容)将用作声明管道中下一个规则集的输入 . 这允许声明从一个规则集的输出流向另一个规则集的输入,如下图所示 .
但授权似乎不起作用 .
1 回答
在第一个选项卡中配置的声明(颁发转换规则)不会传递到第二个选项卡(颁发授权规则) .
因此,我们需要在第二个选项卡中再次重复该过程(映射emailaddresses - > emailaddress),如下所示 .
现在自定义规则完美无缺 .
如果您需要在验收标准中添加更多电子邮件域,请使用“|”符号: