菜单
文档breadcrumb arrow Grafana 文档breadcrumb arrow 设置breadcrumb arrow 配置安全性breadcrumb arrow 配置身份验证breadcrumb arrow 使用 Keycloak 配置多个提供商
Grafana Cloud 开源

在 Grafana 中使用 Keycloak 配置多个提供商

尽管 Grafana 提供了多种身份验证提供商,但您一次只能配置一种类型的提供商。但是,您可以在 Keycloak 的帮助下配置多个相同类型的提供商。

本指南解释了如何在 Grafana 中使用 Keycloak 作为身份验证提供商来设置多个相同类型的提供商。

其思路是在 Keycloak 中针对不同的租户设置多个 OIDC 提供商,并将 Grafana 配置为使用同一个 Keycloak 实例作为身份验证提供商。

Azure AD 配置

对于 Azure AD,请为每个要在 Keycloak 中设置的租户重复以下步骤。

概述

  1. 在 Azure AD 中注册您的应用程序。
  2. 授予租户中的用户对应用程序的访问权限。
  3. 为应用程序创建凭据。
  4. 在 Keycloak 中配置应用程序。
  5. 配置 Grafana 使用 Keycloak。

在 Azure AD 中注册您的应用程序

在 Azure AD 中注册应用程序是一次性过程。您可以按照 Azure AD 文档中的步骤注册您的应用程序。

  1. 前往 Azure 门户并确保您正在使用正确的租户,也称为目录。
  2. 搜索 App Registrations(应用程序注册)并点击 New registration(新建注册)。
  3. 填写应用程序详细信息并点击 Register(注册)。您将被重定向到应用程序的概览页面。

授予租户中的用户对应用程序的访问权限

为用户分配正确的访问权限可确保只有目标用户或组才能访问该应用程序。

  1. 搜索 Enterprise Applications(企业应用程序)并查找您在上一步中创建的应用程序。
  2. Manage(管理)部分下,点击 Users and groups(用户和组)。
  3. 点击 Add user/group(添加用户/组)并添加应有权访问该应用程序的用户或组。

为应用程序创建凭据

为了使用 Azure AD 进行身份验证,Keycloak 应用程序需要客户端 ID 和客户端密钥。

  1. 搜索 App Registrations(应用程序注册)并查找您刚刚创建的应用程序。
  2. 点击 Certificates & Secrets(证书与密钥)。
  3. 点击 New client secret(新客户端密钥)并填写详细信息。请务必复制密钥值,因为它将不再显示。

在 Keycloak 中配置应用程序

  1. 前往 Keycloak 管理控制台。
  2. 前往您想要配置 Azure AD 租户的 Realm。
  3. 前往 Identity Providers(身份提供商)部分并点击 Add provider(添加提供商)。
  4. 选择 OpenID Connect v1.0
    1. 选择唯一的 Alias(别名)和 Display name(显示名称)。
    2. 复制 Redirect URI(重定向 URI)。
    3. 回到 Azure 门户,前往应用程序的 Authentication(身份验证)部分。
    4. 添加 new platform(新平台)并选择 Web
    5. 粘贴从 Keycloak 复制的 Redirect URI(重定向 URI)。
    6. 保存更改。
    7. 导航到 Azure 应用程序概览并查找 Endpoints(终结点)选项卡。
    8. 复制 OpenID Connect metadata document(OpenID Connect 元数据文档)URL。
    9. 回到 Keycloak,将 URL 粘贴到 Discovery endpoint(发现终结点)字段中。
    10. 导航到 Azure 应用程序概览并查找 Application (client) ID(应用程序(客户端)ID)。
    11. 复制 Application ID(应用程序 ID)并将其粘贴到 Keycloak 的 Client ID(客户端 ID)字段中。
    12. 将您在上一步中创建的客户端密钥粘贴到 Client secret(客户端密钥)字段中。
    13. 点击 Add(添加)。

注意

至此,您已经在 Azure AD 中创建了应用程序注册,为应用程序分配了用户,为应用程序创建了凭据,并在 Keycloak 中配置了应用程序。在 Keycloak 的 Clients(客户端)部分中,ID 为 account 的客户端主页 URL 可用于测试配置。这将打开一个新选项卡,您可以在其中使用刚配置的 Azure AD 租户登录到正确的 Keycloak Realm。

为每个您想在 Keycloak 中配置的 Azure AD 租户重复这些步骤。

配置 Grafana 使用 Keycloak

现在 Azure AD 租户已在 Keycloak 中配置完毕,您可以配置 Grafana 使用 Keycloak 作为身份验证提供商。

请参阅 Keycloak 文档,了解如何配置 Grafana 使用 Keycloak 作为身份验证提供商。