设计 Active Directory 联合身份验证服务(AD FS)基础结构的一个重要部分是确定完整的声明规则集,以及为创建这些规则所应使用的相应声明规则模板,适用于每个参与与您的组织联合的合作伙伴。 可使用“AD FS 管理”管理单元中的声明规则模板来创建规则。
配置的每个声明规则集只能与一个联合信任相关联。 这意味着不能在一个信任上创建一组规则,并将它们用于您的联合身份验证服务中的其他信任。 而是可以轻松地从声明规则模板中创建规则,从而更快速地生成经过联合合作伙伴和您的组织共同同意的一组声明。
有关规则和规则模板的详细信息,请参阅 声明规则的角色。
在开始确定应使用的声明规则模板类型之前,请考虑以下问题:
- 你的可信声明提供程序将提供哪些声明? 
- 你信任每个声明提供方的哪些声明? 
- 信任此联合身份验证服务的信赖方需要哪些声明? 
- 你愿意向每个信赖方透露哪些声明? 
- 哪些用户应该有权访问每个信赖方? 
回答这些问题将帮助你规划可靠的声明规则设计。 它还将帮助你创建流畅的授权和访问控制策略,并使部署团队在推出期间更高效。
在下一部分中,可以了解根据业务需求为环境选择的规则模板类型。
声明规则模板类型
下表描述了所有可用于使用 AD FS 管理管理单元创建规则的声明规则模板类型,以及使用一种模板类型对另一种模板类型的好处。
| 规则模板类型 | DESCRIPTION | 优点 | 缺点 | 
|---|---|---|---|
| 通过或筛选传入声明 | 用于创建一个规则,该规则将传递所选声明类型的所有声明值,或基于声明值筛选声明,以便仅传递所选声明类型的某些声明值。 有关详细信息,请参阅 When to Use a Pass Through or Filter Claim Rule。 | - 可用于选择要接受或保持不变地发布的特定声明 | - 无法更改声明类型和值 | 
| 转换传入的请求 | 用于创建一个规则,该规则可以选择传入声明并将其映射到其他声明类型,或将其声明值映射到新的声明值。 有关详细信息,请参阅 “何时使用转换声明规则”。 | - 可用于规范化声明类型或值 - 可以替换传入请求的电子邮件后缀 | - 更复杂的字符串替换需要自定义规则 | 
| 将 LDAP 属性作为声明发送 | 用于创建一个规则,该规则将从 LDAP 属性存储中选择属性,以作为声明发送到信赖方。 有关详细信息,请参阅 “何时使用发送 LDAP 属性作为声明规则”。 | - 可以从任何 AD DS/AD LDS 属性库中获取声明 - 可以使用一项规则发出多个声明 | - 性能 - 因帐户查找操作而变慢 - 不能使用自定义 LDAP 筛选器进行查询 | 
| 以声明方式发送组成员身份 | 用于创建一个规则,该规则可在用户是 Active Directory 安全组的成员时发送指定的声明类型和值。 根据您选择的组,仅会使用此规则发送一项申诉。 有关详细信息,请参阅 “何时使用发送组成员身份作为声明规则”。 | - 发出组声明时的性能非常快 — 无帐户查找 | - 用户必须是本地 Active Directory 组的成员 | 
| 使用自定义规则发送声明 | 用于创建自定义规则,该规则将提供比标准规则模板更高级的选项。 使用 AD FS 声明规则语言编写自定义规则。 有关详细信息,请参阅 “何时使用自定义声明规则”。 | - 可用于从 SQL 属性存储中提取声明 - 可用于指定自定义 LDAP 筛选器 - 可用于颁发 PPID - 可用于自定义属性存储 - 可用于仅将声明添加到输入声明集 - 可用于基于多个传入声明发送声明 | - 配置较为复杂 - 可能需要一段时间来逐步熟悉声明规则语言 | 
| 根据传入的认证请求允许或拒绝用户 | 用于根据传入声明的类型和值创建一个规则,允许或拒绝用户访问信赖方。 有关详细信息,请参阅 “何时使用授权声明规则”。 | - 简化授权过程 | - 要求仅指定一个声明类型和一个声明值 - 不支持针对声明值的模式匹配 | 
| 允许所有用户 | 用于创建允许所有用户访问信赖方的规则。 有关详细信息,请参阅 “何时使用授权声明规则”。 | - 易于配置 | - 没有“根据传入声明允许或拒绝用户”模板安全 |