Перейти к содержанию

Как настроить интеграцию Sentry с Encvoy ID#

В этом руководстве вы узнаете, как настроить единый вход (SSO) в Sentry через систему Encvoy ID.

Sentry — это платформа для мониторинга и отслеживания ошибок в приложениях. Она помогает разработчикам выявлять, анализировать и исправлять ошибки в реальном времени, улучшая качество программного обеспечения.

Базовая версия продукта не поддерживает аутентификацию через OpenID Connect. Чтобы реализовать эту функцию, можно использовать дополнительное решение — sentry-auth-oidc. Это специальный провайдер, который обеспечивает интеграцию OpenID Connect с Sentry и позволяет настроить единый вход (SSO) в системе.

Настройка входа через Encvoy ID состоит из нескольких ключевых этапов, которые выполняются в двух разных системах:


Шаг 1. Создание приложения#

  1. Авторизуйтесь или зарегистрируйтесь Encvoy ID.
  2. Создайте приложение с настройками:

    Поле Значение
    Адрес приложения Адрес инсталляции системы Sentry
    Возвратный URL #1 (Redirect_uri) <адрес инсталляции>/auth/sso

    🔍 Подробнее о создании приложений читайте в инструкции.

  3. Откройте настройки приложения и скопируйте значения полей:

    • Идентификатор (Client_id),
    • Секретный ключ (client_secret).

Шаг 2. Установка sentry-auth-oidc#

  1. Для установки провайдера выполните консольную команду:

    $ pip install sentry-auth-oidc
    

    или создайте Shell-скрипт с содержимым

    #!/bin/bash
    set -euo pipefail
    apt-get update
    pip install sentry-auth-oidc
    

    и запустите его из каталога <путь к Sentry>/sentry/.

  2. После установки провайдера отредактируйте файл конфигурации Sentry sentry.conf.py. В файле конфигурации добавьте блок переменных с параметрами OIDC_CLIENT_ID и OIDC_CLIENT_SECRET, скопированными из приложения Encvoy ID.

    #################
    # OIDC #
    #################
    
    #SENTRY_MANAGED_USER_FIELDS = ('email', 'first_name', 'last_name', 'password', )
    
    OIDC_CLIENT_ID = "client id из приложения Encvoy ID"
    OIDC_CLIENT_SECRET = "client secret из приложения Encvoy ID"
    OIDC_SCOPE = "openid email profile"
    OIDC_DOMAIN = "https://<адрес Encvoy ID>/api/oidc"
    OIDC_ISSUER = "имя модуля для выставления разрешений"
    

    После этого запустите скрипт, который лежит в корне проекта Sentry install.sh, дождитесь исполнения скрипта и запустите проект.

  3. Перейдите в панель администратора Sentry по адресу https://<путь к Sentry>/settings/sentry/ и выберите раздел Auth. Далее выберите приложение Encvoy ID.

    Панель администратора Sentry

Выставите все необходимые настройки и сохраните изменения. После этого будет включена авторизация с помощью Encvoy ID, а вход по логину/паролю будет отключен.


Шаг 3. Проверка подключения#

  1. Откройте страницу входа в Sentry.
  2. Убедитесь, что появилась кнопка Вход через Encvoy ID.
  3. Нажмите на кнопку и выполните вход, используя корпоративные учетные данные:

    • Вы будете перенаправлены на страницу аутентификации Encvoy ID;
    • После успешного входа вы попадёте обратно в Sentry, авторизованным пользователем.

Виджет входа в Sentry