Несколько провайдеров с Keycloak в Grafana
Хотя Grafana предлагает множество провайдеров аутентификации, вы можете настроить только один провайдер одного типа за раз. Однако вы можете настроить несколько провайдеров одного типа с помощью Keycloak.
В этом руководстве объясняется, как настроить несколько провайдеров одного типа, используя Keycloak в качестве провайдера аутентификации в Grafana.
Идея состоит в том, чтобы настроить несколько провайдеров OIDC в Keycloak с разными тенантами и настроить Grafana на использование одного и того же экземпляра Keycloak в качестве провайдера аутентификации.
Конфигурация Entra ID
Для Entra ID повторите следующие шаги для каждого тенанта, который вы хотите настроить в Keycloak.
Обзор
- Зарегистрируйте своё приложение в Entra ID.
- Предоставьте доступ к приложению пользователям в тенанте.
- Создайте учётные данные для приложения.
- Настройте приложение в Keycloak.
- Настройте Grafana на использование Keycloak.
Регистрация приложения в Entra ID
Регистрация приложения в Entra ID — это однократный процесс. Вы можете следовать шагам в документации Entra ID, чтобы зарегистрировать своё приложение.
- Перейдите на портал Azure и убедитесь, что используете правильный тенант, также известный как каталог.
- Найдите App Registrations и нажмите New registration.
- Заполните сведения о приложении и нажмите Register. Вы будете перенаправлены на страницу обзора приложения.
Предоставление доступа к приложению пользователям в тенанте
Назначение правильного доступа пользователям гарантирует, что только предполагаемые пользователи или группы имеют доступ к приложению.
- Найдите Enterprise Applications и найдите приложение, которое вы только что создали на предыдущем шаге.
- В разделе Manage нажмите Users and groups.
- Нажмите Add user/group и добавьте пользователей или группы, которые должны иметь доступ к приложению.
Создание учётных данных для приложения
Чтобы аутентифицироваться в Entra ID, приложению Keycloak нужны client ID и client secret.
- Найдите App Registrations и найдите приложение, которое вы только что создали.
- Нажмите Certificates & Secrets.
- Нажмите New client secret и заполните сведения. Обязательно скопируйте значение секрета, так как оно больше не будет показано.
Настройка приложения в Keycloak
- Перейдите в консоль администратора Keycloak.
- Перейдите в Realm, где вы хотите настроить тенант Entra ID.
- Перейдите в раздел Identity Providers и нажмите Add provider.
- Выберите OpenID Connect v1.0.
- Выберите уникальные Alias и Display name.
- Скопируйте Redirect URI.
- Вернитесь на портал Azure и перейдите в раздел Authentication приложения.
- Добавьте новую платформу и выберите Web.
- Вставьте Redirect URI из Keycloak.
- Сохраните изменения.
- Перейдите к обзору приложения Azure и найдите вкладку Endpoints.
- Скопируйте URL OpenID Connect metadata document.
- Вернитесь в Keycloak и вставьте URL в поле Discovery endpoint.
- Перейдите к обзору приложения Azure и найдите Application (client) ID.
- Скопируйте Application ID и вставьте его в поле Client ID в Keycloak.
- Вставьте client secret, созданный на предыдущем шаге, в поле Client secret.
- Нажмите Add.
Note
К этому моменту вы создали регистрацию приложения в Entra ID, назначили пользователей приложению, создали учётные данные для приложения и настроили приложение в Keycloak. В разделе Keycloak Client клиент с ID
accountи Home URL можно использовать для проверки конфигурации. Это откроет новую вкладку, где вы сможете войти в правильный realm Keycloak с тенантом Entra ID, который вы только что настроили.
Повторите эти шаги для каждого тенанта Entra ID, который вы хотите настроить в Keycloak.
Настройка Grafana на использование Keycloak
Теперь, когда тенанты Entra ID настроены в Keycloak, вы можете настроить Grafana на использование Keycloak в качестве провайдера аутентификации.
Обратитесь к документации Keycloak, чтобы настроить Grafana на использование Keycloak в качестве провайдера аутентификации.