Я хотел бы выделить Плагин оболочки 1Password, который делает аутентификацию с помощью Twilio CLI такой же простой, как сканирование отпечатка пальца.

Вы можете настроить 1Password для безопасной аутентификации Twilio CLI, чтобы вам больше не приходилось вручную вводить свои учетные данные в терминале.

Обратите внимание, что в настоящее время это доступно только для Mac/Linux.

В настоящее время поддерживаются оболочки Bash и Zsh.

В настоящее время разработчики, использующие Twilio CLI, должны сначала пройти аутентификацию (вход в систему), прежде чем они смогут запускать команды. Для этого часто требуется найти учетные данные в отдельном окне, а затем вручную ввести их в терминал.

Пользователям предлагается ввести SID учетной записи и токен аутентификации, которые можно найти на панели инструментов Twilio Console. Затем пользователей просят ввести их в терминал следующим образом:

$ twilio login
You can find your Account SID and Auth Token at https://www.twilio.com/console
 » Your Auth Token will be used once to create an API Key for future CLI access to your Twilio Account or Subaccount, and then forgotten.
? The Account SID for your Twilio Account or Subaccount: ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
? Your Twilio Auth Token for your Twilio Account or Subaccount: [hidden]
? Shorthand identifier for your profile: dev

В этой статье вы узнаете, как установить Плагин оболочки 1Password для Twilio на Mac/Linux, чтобы вы могли воспользоваться преимуществами более удобного входа в систему.

Предпосылки

Шаг 1. Настройте учетные данные по умолчанию

Чтобы убедиться, что у вас правильная версия интерфейса командной строки 1Password, запустите:

op --version

Он должен выводить версию 2.9.0 (или выше).

Чтобы начать работу с плагином оболочки Twilio, запустите:

op plugin init twilio

Вам будет предложено два варианта: либо импортировать новые учетные данные Twilio в 1Password, либо выполнить поиск существующих учетных данных Twilio в 1Password.

Если пользователи хотят переключиться на другой профиль, снова запустите op plugin init twilio и выберите новый набор учетных данных.

Шаг 1.1. Импортируйте или выберите элемент

Импорт нового элемента

Если вы еще не сохранили учетные данные Twilio в 1Password, выберите Импортировать в 1Password.

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

Вы можете найти эти учетные данные, создав ключ API из консоли Twilio, выполнив следующие действия:

  1. Перейдите в Настройки и выберите Ключи API или просто перейдите по этой ссылке.
  2. Нажмите кнопку Создать новый ключ API или нажмите значок плюса (+), если у вас уже есть другие ключи API.
  3. Введите понятное имя для вашего ключа API.
  4. Выберите тип ключа — Стандартный или Основной.
  5. Нажмите кнопку Создать ключ API.

Затем вам будет предложено ввести имя для нового элемента 1Password и выбрать хранилище, в котором вы хотите сохранить элемент.

Выберите существующий элемент

Если вы уже сохранили свои учетные данные Twilio в 1Password, выберите Поиск в 1Password.

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

Шаг 1.2. Установите область учетных данных по умолчанию

После того, как вы выберете или импортируете свои учетные данные, вам будет предложено выбрать, в каком хранилище сохранить ваш ключ API; не стесняйтесь выбирать любое хранилище, которое вы хотите.

Наконец, вам будет предложено настроить, когда использовать элемент для аутентификации Twilio CLI.

  • «Запрашивать меня для каждого нового сеанса терминала» будет настраивать учетные данные только на время текущего сеанса терминала. Как только вы выйдете из терминала, значение по умолчанию будет удалено.
  • «Использовать автоматически в этом каталоге или подкаталогах» сделает учетные данные используемыми по умолчанию для текущего каталога и всех его подкаталогов, если в них не заданы другие значения по умолчанию для конкретных каталогов. Значение по умолчанию для сеанса терминала имеет приоритет над значением для конкретного каталога.
  • «Использовать как глобальное по умолчанию в моей системе» установит учетные данные в качестве учетных данных по умолчанию во всех терминальных сеансах и каталогах. Значение по умолчанию для конкретного каталога имеет приоритет над глобальным.

Шаг 2: Источник файла plugins.sh

Чтобы сделать плагин доступным, выполните в терминале следующую команду:

Путь к папке op может отличаться. op plugin init выведет исходную команду с правильным путем к файлу.

Если вы являетесь устаревшим пользователем интерфейса командной строки 1Password:

source ~/.op/plugins.sh

Если вы настраиваете это в первый раз:

source ~/.config/op/plugins.sh

Примечание. Существуют и другие поддерживаемые сторонние плагины. Если вы впервые устанавливаете подключаемый модуль оболочки для 1Password, вам также необходимо добавить исходную команду в файл RC или профиль оболочки, чтобы плагин сохранялся после текущего сеанса терминала.

Для ЗШ:

echo "source /Users/{your_user_name}/.config/op/plugins.sh" >> ~/.zshrc && source ~/.zshrc

Шаг 3: Используйте интерфейс командной строки

В следующий раз, когда вы введете команду с помощью интерфейса командной строки Twilio, вам будет предложено пройти аутентификацию с помощью биометрии отпечатков пальцев или системной аутентификации (вход с паролем системной учетной записи).

Получить помощь: проверьте или очистите свои учетные данные

Проверьте свою конфигурацию

Чтобы проверить текущую конфигурацию Twilio:

op plugin inspect twilio

1Password CLI вернет список учетных данных, которые вы настроили для использования с Twilio, и их области действия по умолчанию, а также список псевдонимов, настроенных для Twilio.

Очистить учетные данные

Чтобы сбросить учетные данные, используемые с Twilio:

op plugin clear twilio

Вы можете очистить одну конфигурацию за раз в следующем порядке приоритета:

  1. Сеанс терминала по умолчанию
  2. Каталог по умолчанию, из текущего каталога в $HOME
  3. Глобальное значение по умолчанию

Например, если вы находитесь в каталоге $HOME/projects/awesomeProject и у вас есть терминальный сеанс по умолчанию, каталоги по умолчанию для $HOME и $HOME/projects/awesomeProject и настроенные глобальные учетные данные по умолчанию, вам нужно будет запустить op plugin clear twilio четыре раза, чтобы очистить все ваши значения по умолчанию.

Чтобы одновременно очистить ваши глобальные учетные данные по умолчанию, значения по умолчанию для сеанса терминала и значения по умолчанию для вашего текущего каталога, запустите op plugin clear twilio --all.

Ссылка: Для получения дополнительной информации

1Password выполняет аутентификацию с помощью Twilio, вводя переменные среды с учетными данными, требуемыми командами Twilio CLI, непосредственно из вашей учетной записи 1Password.

Как долго тайм-аут?

Вам будет предложено повторно пройти аутентификацию по отпечатку пальца через 10 минут бездействия.

Добавьте учетные данные Twilio в приложение 1Password 8.

Другой способ ввести свои учетные данные в 1Password — через приложение (а не через интерфейс командной строки).

  1. Откройте приложение 1Password 8.
  2. Создайте +Новый элемент
  3. Выберите Учетные данные API и назовите его Ключ API Twilio.
  4. +Добавить еще одно поле в качестве пароля
  5. Заголовки должны совпадать с именами полей из таблицы ниже.
  6. Значения должны соответствовать вашим учетным данным Twilio.

Если вы сохранили свои учетные данные Twilio в приложении 1Password 8 вручную, а не использовали op plugin для импорта нового элемента, убедитесь, что имена ваших полей соответствуют таблице ниже.

1Имена полей пароляПеременные средыУчетная запись SIDTWILIO_ACCOUNT_SIDAPI КлючTWILIO_API_KEYAPI СекретTWILIO_API_SECRETRРегион (необязательно)TWILIO_REGION

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

Дальнейшие шаги: изучение других подключаемых модулей Twilio CLI

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

Вы также можете изучить список доступных плагинов, в который входят:

  • Dev Phone — инструмент разработчика для тестирования приложений Twilio SMS и Voice, даже если у вас нет сервиса.
  • Serverless Toolkit — используйте его, чтобы оптимизировать рабочий процесс разработки с помощью Twilio Functions & Assets.
  • Плагин Twilio Assets — позволяет загружать и управлять статическими ресурсами в службе Twilio Assets.
  • Twilio Webhook Plugin — позволяет эмулировать события веб-перехватчика для проверки ваших приложений и TwiML Bins.
  • twilio watch — позволяет просматривать оповещения отладчика, голосовые вызовы и сообщения по мере их поступления в режиме реального времени.
  • twilio token — установите и используйте этот плагин для создания токена для использования в SDK на стороне клиента, например, в приложении чата.
  • twilio flex — позволяет создавать, собирать и развертывать плагины Flex.

Попробуйте другие сторонние интерфейсы командной строки с плагином

Заинтересованы в аутентификации с помощью других инструментов CLI? Плагины оболочки 1Password поддерживают более десятка сторонних интерфейсов командной строки. Чтобы просмотреть список поддерживаемых интерфейсов командной строки:

op plugin list

Чтобы выбрать другой плагин для начала:

op plugin init

Для получения дополнительной информации о плагине оболочки 1Password ознакомьтесь с официальной документацией.

Вы можете найти код плагинов оболочки в этом репозитории GitHub.

Или свяжитесь с 1Password через Twitter @1password или через Slack по адресу https://1password-devs.slack.com.

Энтони Деллавеккья — разработчик-евангелист Twilio, который пишет код на сцене перед аудиторией. Он опытный разработчик программного обеспечения, который учит тысячи людей создавать классные вещи с помощью кода. Его цель — помочь вам создать глубокие впечатления и связи с технологиями, чтобы они остались с вами навсегда. Проверьте его на Twitter, GitHub, Dev.to или LinkedIn