Настройка SSO с Microsoft Entra ID
Тарифные планы уровня Enterprise в dbt поддерживают единый вход через Microsoft Entra ID (ранее Azure AD).
После настройки единого входа (SSO) вы можете настроить System for Cross-Domain Identity Management (SCIM) с Entra ID, чтобы автоматизировать создание и управление пользователями и группами.
В настоящее время поддерживаются следующие возможности SSO:
- SSO, инициируемый поставщиком удостоверений (IdP)
- SSO, инициируемый поставщиком услуг (SP)
- Создание пользователей при первом входе (Just-in-time provisioning)
Конфигурация
dbt поддерживает как однотенантные, так и мультитенантные подключения SSO Microsoft Entra ID (ранее Azure AD). Для большинства корпоративных сценариев при создании приложения Microsoft Entra ID рекомендуется использовать однотенантный вариант.
Создание приложения
Войдите на портал Azure вашей организации. На странице Microsoft Entra ID выберите нужный каталог, а затем зарегистрируйте новое приложение.
- В разделе Manage выберите App registrations.
- Нажмите + New Registration, чтобы начать регистрацию нового приложения.
- Задайте настройки для полей Name и Supported account types. Выберите значение Supported account types в зависимости от того, каким тенантам вы хотите разрешить доступ, и запишите соответствующее значение Microsoft Entra ID Domain, которое понадобится позже при указании учетных данных в dbt:
| Потребность клиента | Supported account types (Azure) | Значение для поля Microsoft Entra ID Domain в dbt |
|---|---|---|
| Только один тенант (по умолчанию, рекомендуется для большинства корпоративных сценариев) | Accounts in this organizational directory only | Основное доменное имя вашего каталога Azure |
| Несколько определенных тенантов Entra ID | Accounts in organizational directories set by Entra admin | organizations |
| Любой тенант организации и личные учетные записи Microsoft | Accounts in any organizational directory and personal Microsoft accounts | common |
| Только личные учетные записи Microsoft | Personal Microsoft accounts only | consumers |
-
(Необязательно) Чтобы обеспечить корректную работу мультитенантной конфигурации, помимо выбора «Multi-tenant» в настройках учетной записи Azure, необходимо внести два важных изменения:
- Обновите Microsoft Entra ID Domain: в поле «Microsoft Entra ID Domain:» в dbt введите соответствующую строку центра авторизации (
organizations,commonилиconsumers), а не доменное имя вашего каталога Azure. Подробнее см. в разделе Указание учетных данных. - Предоставьте согласие администратора для каждого тенанта: поскольку это требование Entra (ранее Azure AD), администратор каждого отдельного тенанта должен предоставить согласие. Если пользователи из других тенантов попытаются войти до выполнения этого действия, они увидят экран «admin approval required». Администратор может решить эту проблему, перейдя по специальному URL-адресу согласия, предоставленному Microsoft для его тенанта (например,
https://login.microsoftonline.com/{TENANT_ID}/adminconsent?client_id={CLIENT_ID}).
- Обновите Microsoft Entra ID Domain: в поле «Microsoft Entra ID Domain:» в dbt введите соответствующую строку центра авторизации (
-
Настройте Redirect URI. Установите тип Web и используйте таблицу ниже, чтобы выбрать подходящие значения Redirect URI для однотенантных и мультитенантных развертываний приложения Entra ID. Для большинства корпоративных сценариев рекомендуется использовать однотенантный Redirect URI. Замените
YOUR_AUTH0_URIна соответствующий URI Auth0 для вашего региона и тарифного плана.
Примечание: Тип тенантности вашей платформы dbt не влияет на эту настройку. Эта настройка приложения Entra ID определяет доступ к приложению:
- Однотенантное: доступ к приложению могут получить только пользователи вашего тенанта Entra ID.
- Мультитенантное: доступ к приложению могут получить пользователи любого тенанта Entra ID.
| Тип приложения | Redirect URI |
|---|---|
| Однотенантное (рекомендуется) | https://YOUR_AUTH0_URI/login/callback |
| Мультитенантное | https://YOUR_AUTH0_URI/login/callback |
- Сохраните регистрацию приложения, чтобы продолжить настройку SSO Microsoft Entra ID.
В зависимости от настроек Microsoft Entra ID страница регистрации приложения может отличаться от приведенных выше снимков экрана. Если на странице New Registration вам не предлагается настроить Redirect URI, выполните шаги 7–8 ниже после создания регистрации приложения. Если вы уже настроили Redirect URI на предыдущих шагах, перейдите к шагу 8.
-
После регистрации нового приложения без указания Redirect URI нажмите App registration, а затем перейдите на вкладку Authentication нового приложения.
-
Нажмите + Add platform и введите Redirect URI для вашего приложения. Дополнительные сведения о правильном значении Redirect URI для приложения dbt см. в шаге 4 выше.
Тип платформыПри выборе типа платформы укажите Web, а не Single-page application (SPA). Интеграция SSO dbt обменивает код авторизации на токен с сервера, используя секрет клиента. Поэтому, если добавить Redirect URI в разделе SPA, Entra ID потребует PKCE и отклонит обмен кода на токен на стороне сервера, что приведет к сбою входа с ошибкой
AADSTS9002325: Proof Key for Code Exchange is required for cross-origin authorization code redemption.
Сопоставление пользователей и групп Azure <-> dbt
Существует ограничение на количество групп, передаваемых Azure через токен SSO (не более 150). Это означает, что если пользователь состоит более чем в 150 группах, будет казаться, что он не состоит ни в одной. Чтобы избежать этого, настройте назначения групп для приложения dbt в Azure и задайте утверждение о группах, чтобы Azure передавал только соответствующие группы.
Пользователи и группы Azure, которые вы создадите на следующих шагах, сопоставляются с группами, созданными в dbt, по имени группы. Дополнительные сведения о настройке пользователей, групп и наборов разрешений в dbt см. в документации по корпоративным разрешениям.
dbt platform использует User principal name (UPN) в Microsoft Entra ID для идентификации и сопоставления пользователей, входящих в dbt через SSO. UPN обычно имеет формат адреса электронной почты.
Добавление пользователей в корпоративное приложение
После регистрации приложения необходимо назначить ему пользователей. Добавьте пользователей, которые должны быть доступны в dbt, выполнив следующие шаги:
- Вернитесь в Default Directory (или Home) и нажмите Enterprise Applications.
- Нажмите имя приложения, созданного ранее.
- Нажмите Assign Users and Groups.
- Нажмите Add User/Group.
- При необходимости назначьте дополнительных пользователей и группы.
В разделе Properties проверьте положение переключателя User assignment required? и убедитесь, что оно соответствует вашим требованиям. Большинству клиентов рекомендуется установить значение Yes, чтобы входить могли только пользователи и группы, явно назначенные приложению dbt. Если установлено значение No, любой пользователь сможет получить доступ к приложению по прямой ссылке, как указано в документации Microsoft Entra ID.
Настройка разрешений
- Вернитесь в Default Directory (или Home), а затем в App registration.
- Выберите свое приложение, затем выберите API permissions.
- Нажмите +Add a permission и добавьте разрешения, указанные в следующей таблице:
| Имя API | Тип | Разрешение | Обязательно? |
|---|---|---|---|
| Microsoft Graph | Delegated | User.Read | Да |
| Microsoft Graph | Delegated | GroupMember.Read.All | Да |
| Microsoft Graph | Delegated | Directory.Read.All | Необязательно — может потребоваться, если пользователи назначены более чем 200 группам |
Для области доступа по умолчанию требуются только User.Read и GroupMember.Read.All. Если вы назначаете пользователя более чем 200 группам, может потребоваться предоставить дополнительные разрешения, например Directory.Read.All.
Если вы настроили SSO до декабря 2025 года, существующая конфигурация может запрашивать Directory.Read.All вместо GroupMember.Read.All. Чтобы использовать обновленные области доступа, удалите и заново создайте конфигурацию SSO.
- Сохраните эти разрешения, затем нажмите Grant admin consent, чтобы предоставить согласие администратора для этого каталога от имени всех ваших пользователей.
Создание секрета клиента
- В разделе Manage нажмите Certificates & secrets.
- Нажмите +New client secret.
- Назовите секрет клиента "dbt" (или аналогичным образом), чтобы его можно было идентифицировать.
- Выберите 730 days (24 months) в качестве срока действия этого секрета (рекомендуется).
- Нажмите Add, чтобы завершить создание значения секрета клиента (не идентификатора секрета клиента).
- Сохраните сгенерированный секрет клиента в надежном месте. Позже в процессе настройки мы используем этот секрет клиента в dbt, чтобы завершить настройку интеграции.
Получение учетных данных клиента
- Перейдите на страницу Overview регистрации приложения.
- Найдите Application (client) ID и Directory (tenant) ID, показанные в этой форме, и сохраните их вместе с секретом клиента. Мы используем эти ключи на следующих шагах, чтобы завершить настройку интеграции в dbt.
Настройка dbt
Чтобы завершить настройку, выполните следующие шаги в приложении dbt.
Указание учетных данных
Чтобы заполнить этот раздел, вам понадобится слаг URL для входа. Этот слаг определяет URL-адрес, по которому пользователи вашей учетной записи могут входить в приложение. dbt автоматически генерирует слаги URL для входа, и изменить их нельзя. Слаг содержит только буквы, цифры и дефисы.
Например, слаг URL для входа для dbt Labs может выглядеть так: dbt-labs-afk123.
Слаги URL для входа уникальны среди всех учетных записей dbt.
Пользователи также могут войти через https://login.dbt.com, чтобы увидеть учетные записи, к которым у них есть доступ в разных экземплярах. Корпоративный URL для входа, содержащий ваш слаг, по-прежнему используется для сценариев единого входа (SSO), инициируемых вашим поставщиком удостоверений (IdP).
- В dbt нажмите имя своего аккаунта в меню слева и выберите Account settings.
- Выберите SSO & SCIM в меню.
- Нажмите Get started, если SSO еще не настроен, или Edit, если он уже настроен.
- Укажите следующие данные SSO:
| Поле | Значение |
|---|---|
| Log in with | Microsoft Entra ID Single Tenant или Microsoft Entra ID Multi Tenant, если вы выбрали мультитенантное значение Supported account types |
| Client ID | Вставьте Application (client) ID, сохраненный на предыдущих шагах |
| Client Secret | Вставьте Client Secret из предыдущих шагов (не забудьте использовать Secret Value, а не Secret ID); Примечание: Когда срок действия секрета клиента истечет, администратору Entra ID потребуется сгенерировать новый секрет и вставить его в dbt, чтобы обеспечить непрерывный доступ к приложению. |
| Tenant ID | Вставьте Directory (tenant) ID, сохраненный на предыдущих шагах. (Это поле отображается только при выборе Microsoft Entra ID Single Tenant; для мультитенантной конфигурации оно не требуется.) |
| Microsoft Entra ID Domain | Для однотенантной конфигурации введите доменное имя вашего каталога Azure (например, fishtownanalytics.com). Используйте только основной домен; это не заблокирует доступ для других доменов. Для мультитенантной конфигурации вместо этого введите соответствующую строку центра авторизации (organizations, common или consumers). См. таблицу Supported account types. |
- Нажмите Save, чтобы завершить настройку интеграции SSO Microsoft Entra ID. После этого вы можете перейти по URL-адресу входа, сгенерированному для slug вашего аккаунта, и проверить вход через Entra ID.
Пользователи могут войти в систему по адресу https://login.dbt.com, чтобы просмотреть аккаунты, к которым у них есть доступ в разных экземплярах, и выбрать, где открыть dbt platform. Это рекомендуемая точка входа для большинства пользователей.
Для единого входа (SSO) через вашего поставщика удостоверений также можно использовать следующий формат URL со слагом URL входа в ваш аккаунт. Замените LOGIN_SLUG значением из предыдущих шагов, а YOUR_ACCESS_URL — соответствующим URL доступа для вашего региона и тарифного плана:
https://YOUR_ACCESS_URL/enterprise-login/LOGIN-SLUG
Администраторы аккаунта могут включать и отключать обнаружение аккаунта с помощью параметра Enable global account discovery в разделе настроек аккаунта.
Дополнительные параметры конфигурации
Раздел Single sign-on также содержит дополнительные параметры конфигурации, расположенные после полей учетных данных.
-
Include all groups: Получать от поставщика удостоверений все группы, в которые входит пользователь. Если пользователь является участником вложенных групп, будут также включены родительские группы. Когда этот параметр отключен, передаются только группы, непосредственным участником которых является пользователь. По умолчанию этот параметр включен.
-
Maximum number of groups to retrieve: Позволяет настроить ограничение на количество групп, получаемых для пользователей. По умолчанию установлено значение 250 групп, но его можно увеличить, если пользователи состоят в большем количестве групп.
Настройка RBAC
Теперь, когда настройка SSO с Entra ID завершена, следующим шагом будет настройка групп RBAC для завершения конфигурации управления доступом.
Теперь, когда вы настроили SSO с Entra ID, вы можете настроить SCIM, чтобы автоматизировать создание и управление пользователями и группами.
Советы по устранению неполадок
Дополнительные сведения об устранении неполадок — включая запросы «Admin consent required» для новых пользователей, сообщение «Access Denied» после аутентификации SAML и проблемы при изменении Entity ID или ACS URL — см. в разделе Часто задаваемые вопросы о SSO и устранение неполадок.
Узнайте больше из видео
В следующем видео объясняется, как настроить SSO с Microsoft Entra ID:









