ADFS 单点登录

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

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


步骤 1:为 Slack 设置 ADFS

创建一个新依赖方凭证

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

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

    注:发出的用于 User.Username 的值与用户的用户名匹配。确保对每位用户来说这个值是唯一的,且不会再次使用。
    Add_rule_tab.png
  16. 接下来,创建另一项规则,用来转换收到的申领。
  17. 打开所需的 NameID 申领规则,将发出的姓名 ID 格式变更为 永久性标识符。然后,单击确定进行保存。
    Edit_rule_tab.png

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


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

升级套餐

Slack 企业网格

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

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