本篇文档将以 Okta 作为 SSO 身份提供商为例,演示如何为 Dify 企业版开启 SAML 验证协议。通过启用此功能,企业版登录页将使用统一的身份认证入口以增强安全性。对于企业内部用户而言,无需输入复杂密码,使用组织账号登录即可通过验证,简化登录流程。

1. 在 Okta 中创建一个新的应用程序

  1. 访问 Okta 的管理员后台页,导航到 Applications 页,轻点 Create App Integration 按钮。
  2. 选择 “SAML 2.0” 应用类型。
  3. 点击 Next 后,你将被导航至 Configure SAML 页,此部分需要填写部分参数。请稍作等待并打开新的浏览器标签页,遵循下文指引获取必要信息,然后继续填写。

2. 配置 Okta 应用程序

系统管理员需要将 Dify 企业版的 Callback URL 填写至 Okta 应用程序内。

  1. 点击 Dify 企业版的 Authentication 页,轻点 ”+ New Identity Provider → New SAML Provider”,然后即可查看 ACS URL。

    它通常为以下格式:

    https://[your-dify-enterprise-url]/console/api/enterprise/sso/saml/acs
    
  2. 将其粘贴至 Configure SAML 页的 Single sign-on URL 和 Audience URI (SP Entity ID) 字段内。

  1. 填写 URL 后,继续完成以下设置:

    • 将 Name ID 格式设置为 EmailAddress
    • 在 “Show Advanced Settings” 下,验证响应和断言签名是否被设置为 Signed
  2. 轻点 “Next” 按钮完成设置。

3. 完成在 Dify 上的配置

  1. 先前往 Okta 应用程序的 “Sign On” 页,找到以下信息:

    • Sign-on URL
    • Signing certificate

  2. 接着在 “Assignments” 页分配允许使用 SSO 登录的成员。

  3. 最后回到 Dify 企业版的 Authentication 页,轻点 ”+ New Identity Provider → New SAML Provider”,然后在页面中依次填写在上文中获取的信息完成配置。

    填写 X509 Signing Certificate 时需参考以下格式:

    -----BEGIN CERTIFICATE-----
    {certificate}
    -----END CERTIFICATE-----
    

4. 开启 SSO 强制认证(可选)

系统管理员打开以下两种场景的 SSO Enforcement 选项,开启强制认证:

  • Workspace,登录 Dify 企业版 Workspace 时要求通过授权。
  • WebApp, 使用由当前 Dify 企业版所创建的应用时,要求通过验证。

开启后,访问对应场景时将提示需获取访问授权。