Бернхард Кнасмюллер. GitLab: Аутентификация с использованием талона доступа
Это перевод статьи: Bernhard Knasmüller. GitLab: Authenticate Using Access Token.
Содержание
Введение
GitLab предоставляет возможность создания персональных талонов для аутентификации в Git через HTTPS. Использовать эти талоны безопаснее, чем хранить пароль к GitLab на компьютере, с которого нужен доступ в репозиторий. А также это единственный способ автоматизации доступа к репозиторию, защищённому двухфакторной аутентификацией.
Однако в документации GitLab не описано, как использовать эти талоны.
Создание талона доступа
Перейдите в "Настройки пользователя" > "Токены доступа", введите имя и, при необходимости, дату окончания годности:
В большинстве случаев достаточно прав чтения и записи в репозиторий, но можно отметить и дополнительные опции. Создайте и скопируйте талон, сохраните его в безопасном месте (лучше всего - в хранилище паролей).
Использование талона в командной строке
Ключевая информация, которой в настоящее время нет в документации: в командной строке талон можно использовать в качестве пароля для фиктивного пользователя "oauth2".
Например, для клонирования репозитория:
git clone https://oauth2:1AbCDeF_g2HIJKLMNOPqr@gitlab.com/yourusername/project.git project
Настройка талона для существующего репозитория
Метод аутентификации уже склонированного git-проекта определён в файле .git/config
. Если в существующем проекте вместо аутентификации по SSH или HTTPS нужно использовать талон, исправьте этот файл следующим образом:
...
[remote "origin"]
url = https://oauth2:1AbCDeF_g2HIJKLMNOPqr@gitlab.com/yourusername/project.git
fetch = +refs/heads/*:refs/remotes/origin/*
...