INTEGRITY Документация

Общие команды

Общие команды Wrangler для аутентификации, телеметрии и автодополнения в оболочке.

docs

Открыть документацию для разработчиков Cloudflare в браузере по умолчанию.

npx wrangler docs [SEARCH]

Глобальные флаги

login

Авторизуйте Wrangler в вашей учётной записи Cloudflare через OAuth. Wrangler попытается автоматически открыть браузер для входа в вашу учётную запись Cloudflare.

Если для аутентификации вы предпочитаете использовать API-токены, например в headless-средах или средах непрерывной интеграции, обратитесь к Запуск Wrangler в CI/CD.

wrangler login [OPTIONS]

Следующие глобальные флаги работают для любой команды:

Если Wrangler не может открыть браузер, вы можете скопировать и вставить URL-адрес, сгенерированный wrangler login в вашем терминале, в браузер и войдите в систему.

Используйте wrangler login на удалённой машине

Если вы используете Wrangler с удаленной машины, но выполняете вход через локальный браузер, после входа появится следующее сообщение об ошибке:This site can't be reached.

Чтобы завершить процесс входа, выполните wrangler login и пройдите процесс входа в браузере:

npx wrangler login
 ⛅️ wrangler 2.1.6
-------------------
Attempting to login via OAuth...
Opening a link in your default browser: https://dash.cloudflare.com/oauth2/auth?xyz...

Процесс входа через браузер перенаправит вас на localhost URL на вашем компьютере.

Не закрывайте активный процесс входа. Откройте второй сеанс терминала и в нём используйте curl или эквивалентную библиотеку для запросов на удалённой машине, чтобы получить этот localhost URL. Скопируйте и вставьте localhost URL, созданный во время wrangler login процесс и выполните:

curl <LOCALHOST_URL>

Чтобы полностью избежать этой второй сессии терминала, используйте wrangler login --device, который не полагается на localhost URL обратного вызова.

Используйте wrangler login в контейнере

OAuth-провайдер Cloudflare всегда перенаправляет на сервер обратного вызова по адресу localhost:8976. Если вы запускаете Wrangler внутри контейнера, этот сервер может быть недоступен из браузера на хост-машине: даже после подтверждения подключения команда входа зависнет.

Необходимо настроить контейнер так, чтобы он пробрасывал порт 8976 на вашей локальной машине с портом сервера обратного вызова OAuth Wrangler (8976 по умолчанию).

Например, если Wrangler запущен в контейнере Docker:

docker run -p 8976:8976 <your-image>

А когда вы выполните npx wrangler login внутри вашего контейнера, настройте хост обратного вызова так, чтобы он прослушивал все сетевые интерфейсы:

npx wrangler login --callback-host=0.0.0.0

Теперь, когда браузер выполняет перенаправление на localhost:8976, запрос будет перенаправлен в Wrangler, запущенный внутри контейнера на 0.0.0.0:8976.

Если внутри контейнера нужно использовать другой порт, используйте --callback-port тоже и соответствующим образом настройте проброс портов, например:

# When starting your container
docker run -p 8976:9000 <your-image>

# Inside the container
npx wrangler login --callback-host=0.0.0.0 --callback-port=9000

Если вы вообще не хотите пробрасывать порты, используйте wrangler login --device, который не запускает сервер обратного вызова.

Используйте wrangler login без локального сервера обратного вызова

По умолчанию wrangler login процесс требует, чтобы ваш браузер мог обращаться к временному локальному серверу на localhost:8976. В некоторых средах (удалённые SSH-сессии, контейнеры без переброшенных портов, GitHub Codespaces или иные сети с ограничениями) этот callback URL недоступен из браузера, а настройка обходных решений для удалённых машин и контейнеров может оказаться сложной.

Для этих случаев передайте --device для использования OAuth 2.0 Device Authorization Grant вместо этого. Этот процесс не запускает локальный сервер обратного вызова. Вместо этого Wrangler выводит в терминал URL-адрес для подтверждения и короткий код пользователя, открывает этот URL-адрес в браузере по умолчанию и опрашивает Cloudflare на предмет токена доступа, пока вы подтверждаете запрос.

npx wrangler login --device
 ⛅️ wrangler 4.119.0
────────────────────
Attempting to login via OAuth Device Authorization Grant...
To authorize Wrangler, please visit:

  https://dash.cloudflare.com/oauth2/device

and enter the code:

  WDJB-MJHT

You have 5 minutes to approve this request.

Opening a link in your default browser: https://dash.cloudflare.com/oauth2/device?user_code=WDJB-MJHT
Successfully logged in.

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

Wrangler прекращает опрос через 5 минут или раньше, если Cloudflare устанавливает более короткий срок действия для пользовательского кода. Если срок действия кода истекает до того, как вы его подтвердите, выполните wrangler login --device снова, чтобы получить новый.

Передайте --browser=false чтобы запретить Wrangler автоматически открывать браузер и скопировать URL для подтверждения самостоятельно:

npx wrangler login --device --browser=false

--callback-host и --callback-port настраивают временный локальный сервер обратного вызова, который в этом сценарии не используется. Wrangler отклоняет такое сочетание флагов с ошибкой вместо того, чтобы просто их игнорировать:

npx wrangler login --device --callback-host=0.0.0.0
✘ [ERROR] `--callback-host` and `--callback-port` cannot be used with `--device`; the device authorization flow does not use a local callback server.

Хранение учётных данных OAuth в связке ключей ОС

По умолчанию Wrangler сохраняет OAuth-токен доступа и токен обновления, возвращённые wrangler login в файле TOML в открытом виде в глобальном каталоге конфигурации Wrangler (обычно ~/.config/.wrangler/config/default.toml). Передайте --use-keyring чтобы включить более безопасный способ хранения, использующий связку ключей операционной системы:

npx wrangler login --use-keyring

Когда --use-keyring включен, Wrangler записывает учетные данные в AES-256-GCM-зашифрованный файл (default.enc, наряду с устаревшим default.toml расположение) и сохраняет 32-байтовый ключ шифрования в связке ключей вашей ОС:

Если при первом подключении этой функции существует файл учётных данных в открытом виде, Wrangler считывает его и шифрует содержимое в новый .enc файл и удаляет незашифрованный файл.

Этот выбор сохраняется между запусками Wrangler. Чтобы проверить, где сейчас хранятся учётные данные, выполните wrangler whoami:

npx wrangler whoami
👋 You are logged in with an OAuth Token, associated with the email [email protected].
🔐 Credentials are stored in: Encrypted file (~/.config/.wrangler/config/default.enc) with key in macOS Keychain (service=wrangler, account=default)

Отказ от участия

Чтобы снова отказаться от этой функции, передайте --no-use-keyring:

npx wrangler login --no-use-keyring

Отказ от удаляет зашифрованный файл и запись в Keychain. Wrangler намеренно не расшифровывает существующие учётные данные на диск: запись открытого текста при отключении этой функции свела бы на нет защиту данных в состоянии покоя, которую вы только что решили отключить. Последующий процесс входа запишет новые учётные данные в файл TOML в открытом виде.

Переопределение для каждого процесса

Переменная окружения CLOUDFLARE_AUTH_USE_KEYRING переопределяет сохранённое предпочтение для одного вызова:

# Force the keychain backend for this command only
CLOUDFLARE_AUTH_USE_KEYRING=true npx wrangler deploy

# Force the plaintext file backend for this command only
CLOUDFLARE_AUTH_USE_KEYRING=false npx wrangler deploy

Когда переменной окружения присвоено значение true и бэкенд keychain недоступен (например, secret-tool отсутствует в Linux), Wrangler завершает работу с ошибкой вместо того, чтобы незаметно переключиться на текстовый файл. Если задан только постоянный параметр, Wrangler переключается на текстовый файл и один раз выводит предупреждение, чтобы неисправная связка ключей никогда не блокировала вам доступ.

Совместимость

--use-keyring подключение не меняет то, как разрешаются API токены: CLOUDFLARE_API_TOKEN и CLOUDFLARE_API_KEY/CLOUDFLARE_EMAIL по-прежнему имеют приоритет над любыми сохранёнными учётными данными OAuth, а Запуск Wrangler в CI/CD рекомендации по-прежнему применимы для неинтерактивных сред.


logout

Отзыв разрешения Wrangler на доступ к вашей учётной записи. Эта команда аннулирует текущий OAuth-токен и удалит сохранённые учётные данные. Если хранилище Keychain активен, удаляются как зашифрованный файл учётных данных, так и запись в keychain.

wrangler logout

Следующие глобальные флаги работают для любой команды:

Если вы используете CLOUDFLARE_API_TOKEN вместо OAuth, и выйти из системы можно, удалив API-токен в панели управления Cloudflare:

  1. На панели управления Cloudflare перейдите к разделу Токены API аккаунта страницу.

    Перейдите в Токены API аккаунта ↗
  2. Откройте меню с тремя точками у своего токена Wrangler.

  3. Выберите Удалить.


auth

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

auth token

Получите свой текущий токен аутентификации или учётные данные для использования в других инструментах и скриптах.

wrangler auth token [OPTIONS]

Команда возвращает тот метод аутентификации, который сейчас настроен, в следующем порядке приоритета:

При использовании --json, вывод включает тип токена:

// API token
{ "type": "api_token", "token": "..." }

// OAuth token
{ "type": "oauth", "token": "..." }

// API key/email (only available with --json)
{ "type": "api_key", "key": "...", "email": "..." }

Возвращается ошибка, если недоступен ни один метод аутентификации или если настроены API key/email без --json.

Следующие глобальные флаги работают для любой команды:

auth create


Экспериментально

Создание именованного профиля авторизации или повторная аутентификация в нем

npx wrangler auth create [NAME]

Глобальные флаги

auth activate


Экспериментально

Привязка именованного профиля авторизации к каталогу

npx wrangler auth activate [NAME] [DIR]

Глобальные флаги

auth deactivate


Экспериментально

Удаление привязки профиля авторизации из каталога

npx wrangler auth deactivate [DIR]

Глобальные флаги

auth list


Экспериментально

Получить список всех профилей аутентификации

npx wrangler auth list

Глобальные флаги

auth delete


Экспериментально

Удалить именованный профиль авторизации

npx wrangler auth delete [NAME]

Глобальные флаги


whoami

🕵️ Получить сведения о вашем пользователе

npx wrangler whoami

Глобальные флаги


telemetry

Cloudflare собирает анонимные данные об использовании для улучшения Wrangler. Подробнее об этом можно узнать в нашей политика данных.

Настройками передачи данных об использовании можно управлять в любое время с помощью следующих команд.

disable

Отключить сбор телеметрии для Wrangler.

wrangler telemetry disable

enable

Включить сбор телеметрии для Wrangler.

wrangler telemetry enable

status

Проверьте, включен ли в данный момент сбор телеметрии. Результат зависит от каталога, в котором была выполнена команда.

Это сбросит глобальный статус, установленный wrangler telemetry disable / enable, переменная окружения WRANGLER_SEND_METRICS, и send_metrics ключ в конфигурационный файл Wrangler.

wrangler telemetry status

Следующие глобальные флаги работают для любой команды:


complete

Генерирует скрипты автодополнения оболочки для команд Wrangler. Автодополнение позволяет автоматически дополнять команды, подкоманды и флаги нажатием клавиши Tab во время ввода.

wrangler complete <SHELL>

Настройка

Сгенерируйте скрипт автодополнения и добавьте его в файл конфигурации оболочки:

wrangler complete bash >> ~/.bashrc

Затем перезапустите терминал или выполните source ~/.bashrc.

wrangler complete zsh >> ~/.zshrc

Затем перезапустите терминал или выполните source ~/.zshrc.

wrangler complete fish >> ~/.config/fish/config.fish

Затем перезапустите терминал или выполните source ~/.config/fish/config.fish.

wrangler complete powershell >> $PROFILE

Затем перезапустите PowerShell или выполните . $PROFILE.

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

После настройки нажмите Tab, чтобы автоматически дополнять команды, подкоманды и флаги:

wrangler d<TAB>          # completes to 'deploy', 'dev', 'd1', etc.
wrangler kv <TAB>        # shows subcommands: namespace, key, bulk

Следующие глобальные флаги работают для любой команды: