Перейти к основному содержимому

О команде dbt login

Используйте dbt login, чтобы пройти аутентификацию один раз и получить доступ к возможностям платформы dbt в различных инструментах dbt.
к сведению

Доступно в dbt v1.13 и более поздних версиях.

Выполните dbt login в командной строке, чтобы получить доступ к возможностям платформы dbt. Откроется страница аутентификации в браузере, где вы сможете войти в существующую учетную запись dbt platform или создать бесплатную — банковская карта не требуется!

Выполните dbt login status, чтобы просмотреть текущий статус аутентификации.

Когда использовать dbt login​

dbt login — это интерактивная процедура входа через браузер для разработки в macOS, Linux и Windows. Используйте dbt login для доступа к возможностям платформы dbt, включая:

Полный список функций и сведения об их доступности см. в разделе Возможности расширения для VS Code.

dbt login не поддерживает неинтерактивную аутентификацию. Для неинтерактивных сред, например заданий CI/CD, заданий по расписанию или внешних оркестраторов, используйте сервисный токен.

Перед входом в систему​

Бесплатная учетная запись dbt platform обеспечивает доступ во всех ваших инструментах dbt — CLI, расширении для VS Code и dbt State, — поэтому достаточно войти один раз. Банковская карта не требуется.

Выполните dbt login, чтобы создать бесплатную учетную запись или войти в существующую. Вход в систему — это способ, с помощью которого dbt подтверждает ваш доступ к возможностям платформы dbt в локальной среде разработки.

Обратите внимание: это не связано с типами пользовательских лицензий dbt platform (например, Developer или Analyst), которые определяют, какие действия вы можете выполнять внутри dbt platform.

Полный список функций и сведения об их доступности см. в разделе Возможности расширения для VS Code.

(Версии dbt: v1.13 и новее)

dbt login при работе с dbt State​

dbt login также используется для аутентификации в dbt State. При выполнении этой команды открывается окно браузера, где вы можете:

  • Войти с помощью своей учетной записи dbt platform.
  • Создать учетную запись dbt platform:
    1. Введите адрес электронной почты и нажмите Continue.
    2. Введите имя и пароль и примите Условия использования.
    3. Нажмите Continue.
    4. Подтвердите адрес электронной почты.

В dbt v2 после аутентификации на платформе CLI проверяет вашу конфигурацию и выполняет соответствующие действия:

dbt State включен в dbt platform?dbt State включен локально?Поведение
✅✅dbt State готов к использованию.
✅❌CLI предлагает включить dbt State локально. Если вы согласитесь, файл user_settings.yml будет обновлен автоматически.
❌✅CLI предлагает включить dbt State в вашей учетной записи на платформе.

В dbt v1.13 команда dbt login автоматически устанавливает manage_state: true в user_settings.yml после аутентификации на платформе. Если ранее вы установили manage_state: false, CLI запросит подтверждение перед перезаписью этого значения.

Способы аутентификации​

dbt login работает только в интерактивном режиме. Команда запускает процедуру входа через браузер и сохраняет ваш сеанс локально.

Вы можете войти в dbt с помощью интерактивных или неинтерактивных способов.

Интерактивная аутентификация​

Используйте dbt login, если вы разрабатываете локально в терминале или IDE и можете завершить вход в браузере.

  • При выполнении dbt login dbt запускает процедуру аутентификации в браузере. После ее завершения dbt сохраняет состояние входа локально и подтверждает, что вы вошли в систему.
  • После входа dbt может использовать сохраненное состояние входа для доступа к возможностям платформы dbt в dbt CLI, расширении для VS Code и dbt State.
  • Ваш сеанс остается активным между сеансами терминала, а dbt автоматически обновляет его, пока вы работаете. Вы остаетесь в системе, если используете dbt хотя бы раз в 7 дней. Если период неактивности превышает этот срок, dbt предложит снова выполнить dbt login. Подробнее см. в разделе Сохранение сеанса входа.

Выполняйте dbt login в локальном терминале (а не в интерфейсе dbt platform).

Пример (интерактивный режим):

dbt login
dbt login status

Следуйте инструкциям в браузере, чтобы войти в учетную запись dbt platform или зарегистрироваться.

Неинтерактивные среды​

Неинтерактивный режим означает, что dbt выполняется без участия пользователя, который мог бы открыть браузер, — например, в рабочем процессе GitHub Actions, задании cron или задании dbt platform по расписанию. Отдельной команды для «неинтерактивного входа» нет. В таких средах не следует выполнять dbt login.

Если вы только начинаете работать с dbt, начните с интерактивной аутентификации. Рекомендации в этом разделе понадобятся только при автоматизации запусков dbt.

Аутентификация с помощью сервисного токена​

В неинтерактивных средах (например, в заданиях CI/CD, заданиях по расписанию или внешних оркестраторах, таких как Airflow) используйте сервисный токен вместо dbt login. Сервисный токен выполняет две задачи:

  • обеспечивает аутентификацию запуска
  • предоставляет доступ к возможностям платформы dbt, чтобы они работали в вашем конвейере так же, как и локально.

В отличие от интерактивного входа через dbt login, сервисные токены не имеют срока действия, поэтому обновлять их не нужно. При необходимости выполняйте их ротацию самостоятельно в dbt platform.

Задайте следующие переменные среды, чтобы dbt мог пройти аутентификацию и предоставить этот доступ:

Переменная средыОписание
DBT_CLOUD_ACCOUNT_HOSTURL для доступа к вашей учетной записи dbt platform (например, abc123.us1.dbt.com).
DBT_CLOUD_ACCOUNT_IDИдентификатор вашей учетной записи dbt platform.
DBT_CLOUD_TOKENЗначение сервисного токена. Создайте сервисный токен с набором разрешений, который включает доступ к лицензируемым функциям, например Job Runner, Job Creator, Job Admin, Developer или Account Admin.
DBT_CLOUD_PROJECT_IDИдентификатор вашего проекта dbt platform.
export DBT_CLOUD_ACCOUNT_HOST=abc123.us1.dbt.com
export DBT_CLOUD_ACCOUNT_ID=12345
export DBT_CLOUD_TOKEN=dbtc_xxxxxxxx
export DBT_CLOUD_PROJECT_ID=67890

Как работает единый вход в инструментах dbt​

  • Используйте dbt login для аутентификации в dbt State. Вы можете начать процедуру входа из расширения dbt для VS Code:
  • Если вы выполните dbt login в CLI, расширение dbt для VS Code использует этот вход при следующем сеансе работы с расширением.
  • Если вы войдете через расширение dbt для VS Code, этот вход можно будет использовать при следующем выполнении команды, требующей аутентификации.

Когда вы выполняете команду или используете функцию, требующую аутентификации, dbt проверяет текущее состояние входа. Если вы вошли в систему, функция выполняется. Если нет, dbt сообщает, для какой функции требуется аутентификация, и предлагает выполнить dbt login.

Процедура входа через расширение для VS Code описана в разделе Вход в систему.

Сохранение сеанса входа​

После входа dbt автоматически поддерживает ваш сеанс — обычно это происходит совершенно незаметно.

Вы остаетесь в системе, если используете dbt хотя бы раз в 7 дней. Если период неактивности превышает этот срок, dbt может попросить вас войти снова при следующем сеансе, чтобы обеспечить безопасность.

Если срок действия доступа истек, выполните dbt login, чтобы войти снова.

  • Еще нет учетной записи dbt? Создайте бесплатную с помощью dbt login — это лучший способ использовать полный набор функций и получить максимум от расширения.
  • Пока не готовы выполнить dbt login? Ничего страшного — продолжайте пользоваться подавляющим большинством функций.

Если вы не уверены в текущем состоянии доступа, выполните dbt license info, чтобы проверить его.

Использование​

На этой странице перечислены команды, которые можно использовать с dbt login, и их вывод:

dbt login​

Выполните dbt login в терминале, чтобы открыть страницу аутентификации в браузере:

dbt login

CLI открывает браузер по умолчанию и показывает URL для аутентификации:

Opening your browser to complete login...
→ https://us1.dbt.com/register

If you need to reset your password, complete the reset, then re-run dbt login to finish authenticating.
Waiting for authentication…

После входа или регистрации dbt сохраняет ваши учетные данные в локальном каталоге конфигурации dbt:

  • macOS и Linux: ~/.dbt/
  • Windows: C:\Users\[username]\.dbt\

Подробнее о продолжительности сеанса входа см. в разделе Сохранение сеанса входа.

При успешном завершении аутентификации CLI выводит:

Congratulations! You are now signed in.

Если аутентификация не удалась, CLI выводит:

Authentication failed. Re-run dbt login to try again.

[Placeholder for user-facing error message on failure reason]
dbt State и dbt login

Если у вас есть учетная запись dbt platform, вы можете использовать ее для аутентификации в dbt State — отдельный вход не требуется. Полные инструкции по настройке dbt State см. в разделе Настройка dbt State.

dbt login --help​

Usage: dbt login [OPTIONS] <COMMAND>

Commands:
status Show dbt authentication status

dbt login status​

Выполните dbt login status, чтобы узнать, прошел ли dbt аутентификацию:

dbt login status

Если dbt прошел аутентификацию, CLI показывает способ аутентификации:

Status: authenticated (via METHOD)

Если dbt не прошел аутентификацию, CLI выводит:

Status: unauthenticated

dbt license info​

dbt использует локальные лицензии, чтобы кэшировать состояние входа и предоставлять доступ к возможностям платформы dbt. Выполните dbt license info для дополнительной проверки статуса лицензии, используемой dbt v2. Это полезно, если какая-либо возможность платформы dbt не работает, а dbt login status сообщает, что аутентификация выполнена:

dbt license info

Вывод должен выглядеть следующим образом:

dbtf license info
...
status: valid
licensing_enabled: true
license_type: developer
features: compare, state-aware-orchestration, strict-static-analysis
issued_at: June 17, 2026 10:55 UTC
expires_at: June 18, 2026 10:55 UTC

Добавьте --json, чтобы получить вывод в машиночитаемом формате:

dbt license info --json

Пояснения к каждому статусу см. в разделе Устранение неполадок.

Устранение неполадок​

Если какая-либо возможность платформы dbt не работает или вы не уверены, что все еще вошли в систему, выполните dbt license info, чтобы проверить доступ:

dbt license info

Добавьте --json, чтобы получить вывод в машиночитаемом формате:

dbt license info --json

В выводе отображается текущий статус. Используйте следующую таблицу для его интерпретации:

СтатусЧто означаетЧто делать
validВы вошли в систему, и функции доступны.Ничего — все готово к работе.
expiredСрок действия доступа истек.Выполните dbt login, чтобы войти снова.
not_founddbt не удалось найти данные о вашем входе.Выполните dbt login или задайте сервисный токен для запусков через оркестратор.
invalidВаш доступ не прошел проверку.Выполните dbt login, чтобы обновить его.
transient_errorВременная проблема с сетью или сервером.Повторите попытку — до тех пор кэшированный доступ остается активным.
Если вы только что зарегистрировали новую учетную запись

Если вы создали новую учетную запись dbt platform, но еще не подтвердили адрес электронной почты, dbt будет предупреждать вас при каждом запуске в течение короткого льготного периода.

После окончания льготного периода возможности платформы dbt перестанут работать, пока вы не подтвердите адрес. Вы по-прежнему сможете использовать подавляющее большинство функций, таких как диагностика ошибок в коде, переход к определению ref через Jinja LSP и другие.

Проверьте входящие письма и найдите письмо для подтверждения адреса или обратитесь в службу поддержки dbt, если вам нужно отправить его повторно.

Связанные команды​

  • dbt login status — Показывает текущий статус аутентификации в dbt.
  • dbt license info — Показывает текущий статус доступа и помогает диагностировать доступность функций.
  • dbt init — Используется при первоначальной настройке проекта; предлагает выполнить dbt login, чтобы получить доступ к возможностям платформы dbt, требующим аутентификации.
  • dbt deps — Устанавливает пакеты для проекта dbt.
  • dbt debug — Проверяет проект dbt и конфигурацию подключения.

Нашли ошибку?

0
Loading