配置 AD FS 服务器以进行基于声明的身份验证

启用基于声明的身份验证后,下一步是在 AD FS 中添加和配置声明提供程序和信赖方信任。

配置声明提供程序信任

您需要添加声明规则,以从 Active Directory 检索用户主体名称 (UPN) 属性并将其作为 UPN 发送到 Dynamics 365 Customer Engagement (on-premises)。

将 AD FS 以便将 UPN LDAP 属性作为声明发送到信赖方

  1. 在运行 AD FS 的服务器上,启动 AD FS 管理。

  2. 导航窗格中,展开信任关系,然后选择声明提供程序信任

  3. 声明提供程序信任下,右键单击 Active Directory,然后选择编辑声明规则

  4. 在规则编辑器中,选择添加规则

  5. 声明规则模板列表中,选择将 LDAP 属性作为声明发送模板,然后选择下一步

  6. 创建以下规则:

    • 声明规则名称:UPN 声明规则(或描述性文本)

    • 添加以下映射:

      1. 属性存储:Active Directory

      2. LDAP 属性:用户主体名称

      3. 传出声明类型:UPN

  7. 单击完成,然后选择确定关闭规则编辑器。

配置信赖方信任

启用基于声明的身份验证后,必须将 Dynamics 365 Server 配置为信赖方,才能使用来自 AD FS 的声明对内部声明访问进行身份验证。

  1. 在运行 AD FS 的服务器上,启动 AD FS 管理。

  2. 导航窗格中,展开信任关系,然后选择信赖方信任

  3. 在右侧栏中的操作菜单上,选择添加信赖方信任

  4. 添加信赖方信任向导中,选择开始

  5. 选择数据源页上,选择导入有关以联机方式或在本地网络上发布的信赖方的数据,然后键入 URL 以查找 federationmetadata.xml 文件。

    此联合元数据是在声明设置期间创建的。 使用“配置基于声明的身份验证”向导的最后一页上列出的 URL(在选择完成之前),例如,https://internalcrm.contoso.com/FederationMetadata/2007-06/FederationMetadata.xml。 确保不会出现与证书相关的警告。

  6. 选择下一步

  7. 指定显示名称页面上,键入显示名称,例如 Dynamics 365 声明信赖方,然后选择下一步

  8. 立即配置多因素身份验证页上,进行选择,然后选择下一步

  9. 选择颁发授权规则页上,选择允许所有用户访问此信赖方,然后选择下一步

  10. 准备添加信任页上的标识符选项卡上,验证信赖方标识符是否具有单一标识符,例如:

    如果您的标识符与上述不同,请在添加信赖方信任向导中选择上一步,检查联合元数据地址。

  11. 选择下一步,然后选择关闭

  12. 在出现的“规则编辑器”中,选择添加规则。 否则,在信赖方信任列表中,右键单击您创建的信赖方对象,选择编辑声明规则,然后选择添加规则

    重要提示

    确保选择发布转换规则选项卡。

  13. 声明规则模板列表中,选择传递或筛选传入声明模板,然后选择下一步

  14. 创建以下规则:

    • 声明规则名称:传递 UPN(或描述性内容)

    • 添加以下映射:

      1. 传入声明类型:UPN

      2. 传递所有声明值

  15. 选择完成

  16. 规则编辑器中,选择添加规则,在声明规则模板列表中,选择传递或筛选传入声明模板,然后选择下一步

  17. 创建以下规则:

    • 声明规则名称:传递主 SID(或描述性内容)

    • 添加以下映射:

      1. 传入声明类型:主 SID

      2. 传递所有声明值

  18. 选择完成

  19. 规则编辑器中,选择添加规则

  20. 声明规则模板列表中,选择转换传入声明模板,然后选择下一步

  21. 创建以下规则:

    • 声明规则名称:将 Windows 帐户名称转换为名称(或描述性文本)

    • 添加以下映射:

      1. 传入声明类型:Windows 帐户名

      2. 传出声明类型:名称

      3. 传递所有声明值

  22. 选择完成,当创建所有三个规则时,选择确定关闭规则编辑器。

    三条声明规则。

    此图显示您创建的三个信赖方信任规则。

您创建的信赖方信任定义 AD FS 联合身份验证服务识别 Dynamics 365 Customer Engagement (on-premises) 信赖方并向其发送声明的方式。

启用窗体身份验证

在 Windows Server 2012 R2 内的 AD FS 中,默认情况下不启用窗体身份验证。

  1. 以管理员身份登录到 AD FS 服务器。

  2. 打开 AD FS 管理控制台, 选择身份验证策略

  3. 主身份验证全局设置身份验证方法下,选择编辑

  4. Intranet 下,启用(选中)窗体身份验证,然后选择确定

启用窗体身份验证。

对 Windows Server 2016 运行一个 cmdlet

如果您的 AD FS 服务器正在运行 Windows Server 2016,请运行以下 Windows PowerShell cmdlet:

Grant-AdfsApplicationPermission -ClientRoleIdentifier "<ClientRoleIdentifier>" -ServerRoleIdentifier <ServerroleIdentified>  
  1. ClientRoleIdentifier:您的 Adfsclient 的 ClientId。 例如:e8ab36af-d4be-4833-a38b-4d6cf1cfd525

  2. ServerroleIdentified:您的信赖方的标识符。 例如:https://adventureworkscycle3.crm.crmifd.com/

有关详细信息,请参阅 Grant-AdfsApplicationPermission

另请参阅

实现基于声明的身份验证:内部访问