ADFS 单点登录

你可以集成活动目录联合服务 (ADFS) 示例,帮助管理成员的无缝单点登录。

注意:ADFS 本身不支持通过 Slack 的 SCIM API 来自动撤销配置。如果你尚未在 ADFS 外实施 SCIM 配置解决方案,那么,在你的 IDP 中撤销成员的配置之后,确保也在 Slack 中注销他们的权限。


步骤 1:为 Slack 设置 ADFS

创建一个新依赖方凭证

  1. 登录至已安装 ADFS 的服务器。如果你在部署 ADFS 时需要帮助,请查看此指南
  2. 打开 ADFS 管理控制台并选择信赖关系,然后在左侧控制台树中选择依赖方凭证
  3. 从右侧的操作菜单中单击添加依赖方凭证
  4. 选择数据源这一步,切换选项手动输入有关依赖方的数据。“选择数据源”步骤,可选择手动输入依赖方的数据
  5. 然后,在指定显示名称选项卡中指定应用的显示名称。我们建议采用比如公司名 - Slack 之类的名称。添加您可能需要选填的备注。
  6. 选择个人档案选项卡中,选择 ADFS 个人档案
  7. 配置证书选项卡中,保持采用默认的证书设置。
  8. 配置网址选项卡中,选择启用对 SAML 2.0 WebSSO 协议的支持复选框,然后输入 SAML 服务端点。 

    •  企业增强套餐:
    https://yourdomain.slack.com/sso/saml
    •  企业网格:https://yourdomain.enterprise.slack.com/sso/saml
    “配置网址”步骤,可对所选择的 SAML 2.0 WebSSO 协议启用支持
  9. 配置标识符选项卡中,输入 https://slack.com,然后单击添加备注:如果你选择指定唯一的工作区网址 (https://[workspacename].slack.com),请确保在 Slack 的服务提供程序颁发者字段中输入相同的值。
  10. 添加可选的多重身份验证
  11. 选择允许所有用户访问此依赖方,然后单击下一步查看你的设置
  12. 确保你开启了在此向导关闭时,打开编辑申领规则对话框来获取此依赖方凭证,然后选择关闭
  13. 接下来,你将为依赖方凭证创建规则,或判断申领,在本例中,即为你的 Slack 工作区或企业网格。Slack 只接收发出的申领类型属性和值,所以属性列表看起来可能不同。注意,你需要两种申领:一种针对 Slack 属性,一种针对 NameID
  14. 单击添加规则
    Slack 属性和 NameID 的规则列表,并有添加、编辑和移除规则的按钮
  15. 创建一项规则,将 LDAP 属性作为申领发送。只需要发出的申领类型 User.Email,但你可能想要包含 first_namelast_nameUser.Username。注意,发出的申领类型需注意大小写。 

    注意:发出的用于 User.Username 的值与用户的用户名匹配。确保对每位用户来说这个值是唯一的,且不会再次使用。
    “配置申领规则”步骤,显示了 LDAP 属性和发出的申领类型列表
  16. 接下来,创建另一项规则,用来转换收到的申领。
  17. 打开所需的 NameID 申领规则,将发出的姓名 ID 格式变更为 永久性标识符。然后,单击确定进行保存。
    NameID 申领规则,显示了收到的和发出的申领类型下拉菜单

注意:如果你选择在 Slack 中签署 AuthnRequest,你需要将生成的 Slack 证书上传到 ADFS 中的签署选项卡。你还需要确保已在高级选项卡中选择安全的哈希算法 SHA-1。


步骤 2:将 Slack 与你的 IDP 集成

企业增强套餐

Slack Enterprise Grid

然后,在 Slack 工作区的身份验证设置中添加 ADFS 的详细信息:

  1. 在桌面版中,单击侧栏中的工作区名称。
  2. 从菜单中选择工具和设置,然后单击工作区设置
  3. 单击身份验证选项卡,然后单击 SAML 身份验证旁边的配置(OneLogin、Okta,或你的自定义 SAML 2.0 解决方案)。
  4. 输入你的 SAML 2.0 端点网址(SAML 2.0/W-Federation 网址端点)。默认安装为 /adfs/ls/
    SAML SSO 网址和已输入网址的文本框
  5. 输入你的身份提供程序颁发者。如果你对于这些端点不太确定,请在装有 ADFS 的设备上的 Powershell 中运行 PS C:/> Get-AdfsEndpoint身份提供程序颁发者和已输入所用服务的身份提供程序实体 ID 的文本框
  6. 从 ADFS 的加密选项卡中,复制你的整个令牌登录 x.509 证书并粘贴到公共证书字段。ADFS 的加密选项卡,其中令牌登录字段处于选中状态
  7. 要使用 Slack 设置多个依赖方凭证,请展开高级选项菜单。
  8. 除了 AuthnContextClass Ref 外,选择 PasswordProtectedTransport 和窗口(与 ADFS 一起使用,适用于内部/外部身份验证)。然后输入唯一的服务提供程序颁发者。 这应该与你在 ADFS 中的依赖方标识符相匹配。
    AuthnContextClass Ref 下拉菜单处于打开状态的高级选项
  9. 单击保存

接下来,你需要在企业网格组织的身份验证设置中添加 ADFS 的详细信息:

  1. 在桌面版中,单击侧栏中的工作区名称。
  2. 从菜单中选择工具和设置 ,然后单击组织设置
  3. 在左侧栏单击 安全,然后选择 SSO 设置
  4. 输入你的 SAML 2.0 端点网址(SAML 2.0/W-Federation 网址端点)。默认安装为 /adfs/ls/
    SAML_2.0_Endpoint_URL__Grid_.png
  5. 输入你的身份提供程序颁发者。如果对于这些端点你不太确定,在已安装 ADFS 的设备的 Powershell 中运行 PS C:/> Get-AdfsEndpointIdentity_Provider_Issuer__grid_.png
  6. 公共证书字段中,复制和粘贴你的整个 x.509 证书。adfs_clint.png
  7. 你可以使用 Slack 设置多个依赖方凭证。在 AuthnContextClass Ref 下,选择 PasswordProtectedTransport 和窗口(与 ADFS 一起使用,适用于内部/外部身份验证)。
  8. 输入唯一的服务提供程序颁发者。 这应该与你在 ADFS 中的依赖方标识符相匹配。
    service_provider_issuer
  9. 单击保存更改

注意:我们很乐意帮助你设置,但我们不能保证你的连接适用于 Slack。请阅读排除 SAML 授权错误文章,或向我们发送通知,我们将全力协助。

哪些人员可以使用此功能?
  • 工作区拥有者组织拥有者
  • 企业增强版Enterprise Grid 套餐