排除 SAML 身份验证设置故障

SAML 身份验证仅在 ProEnterprise 计划(自托管和 Metabase 云)中可用。

设置 SAML 时的一些常见问题。

您的应用是否支持 SAML?

验证您在 IdP 中创建的应用程序是否支持 SAML。有时在应用程序创建过程中会显示其他选项。

颁发者或实体 ID 是否正确?

在填写身份提供商的身份验证表单后,您会被带回 Metabase,但它会抛出错误。要查看错误,请转到 管理设置 > 故障排除 > 日志。您会看到类似 不正确的响应 <issuer> 的错误。

根本原因:您的颁发者或实体 ID 不正确。

采取步骤:

  1. 您应该已从您的身份提供商处收到一个 XML 元数据文件。打开该元数据文件,并查找正确的颁发者或实体 ID。此 ID 是身份提供商的唯一标识符。根据您的提供商,颁发者或实体 ID 通常如下所示
    http://www.example.com/141xkex604w0Q5PN724v
    
  2. 从 XML 文件中复制颁发者或实体 ID。
  3. 转到 Metabase 并选择 管理设置 > 设置 > 身份验证 > SAML。在“SAML 身份提供商颁发者”字段中输入颁发者或实体 ID。

SAML 身份提供商证书值是否正确?

在填写身份提供商的身份验证表单后,您会被带回 Metabase,但它会抛出错误。转到 管理设置 > 故障排除 > 日志。您会看到类似 无效断言错误 <issuer> 的错误。

根本原因:您输入的证书值不正确。

采取步骤:

  1. 转到 Metabase 并选择 管理设置 > 设置 > 身份验证 > SAML。检查您在“SAML 身份提供商证书”字段中输入的证书是否与您从身份提供商处获得的 XML 文件中的证书匹配。

    • 根据您的提供商,您可能需要下载 XML 文件,在文本编辑器中打开它,然后复制证书的内容并粘贴到 Metabase 中的 SAML 身份提供商证书 字段中。

    • 请注意,您的证书文本可能包含类似于 -----BEGIN CERTIFICATE----------END CERTIFICATE----- 的页眉和页脚注释。将证书文本粘贴到 Metabase 中时,应包含这些注释。

SSO URL 是否正确?

验证您在 SAML 提供商网站上输入的 Single Sign On URL(或等效项)是否附加了 /auth/sso。例如,如果您希望您的用户最终访问 https://metabase.mycompany.com,则完整 URL 应为 https://metabase.mycompany.com/auth/sso

搜索私钥但找到 null

仅当您使用 签名 SSO 请求 时才会发生此错误。也就是说,在 Metabase 中,您已填写 管理设置 > 设置 > 身份验证 > SAML > 签名 SSO 请求 中的配置部分中的字段。这些字段是

  • SAML 密钥库路径:用于签署 SAML 请求的密钥库文件的绝对路径。
  • SAML 密钥库密码:用于打开密钥库的密码。
  • SAML 密钥库别名:Metabase 应用于签署 SAML 请求的密钥的别名。

根本原因:密钥库文件中的证书缺少私钥。

采取步骤:

  1. 将带有私钥的证书添加到您的密钥库。

检查 SAML 是否正常工作

转到您的 Metabase 登录页面。如果 SAML 工作正常,您应该看到 一个使用您的身份提供商 (IdP) 登录的按钮。身份验证后,您应该会自动重定向到 Metabase 首页。

您仍然遇到问题吗?

如果您无法使用故障排除指南解决您的问题

阅读其他 版本的 Metabase 文档。