Как клонировать репозиторий Bitbucket с помощью OAuth, чтобы он работал больше часа

Для репозитория GitHub я могу позвонить, например.

$ git clone https://[email protected]/owner/repo.git

И тогда у меня есть:

$ git remote -vv
origin        https://[email protected]/owner/repo.git (fetch)
origin        https://[email protected]/owner/repo.git (push)

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

Теперь токены Bitbucket OAuth истекают через час. Можно ли добиться такой же «функциональности» для репозитория Bitbucket?

Может Пароль приложения использоваться для этого?

Можно ли использовать refresh_token для этого лучше, чем использовать curl для фактического обновления токена вручную, как описано здесь https://confluence.atlassian.com/bitbucket/oauth-on-bitbucket-cloud-238027431.html?


person misiek    schedule 30.06.2017    source источник
comment
Если это ваши настоящие учетные данные, вы должны аннулировать их немедленно. Они навсегда скомпрометированы, и вам нужно генерировать новые.   -  person Chris    schedule 01.07.2017
comment
^ что. И да, вы можете использовать пароль приложения, если вы дадите ему соответствующие разрешения для всего, что вы пытаетесь сделать.   -  person Jim Redmond    schedule 03.07.2017
comment
@Chris учетные данные не настоящие. Может быть, мне действительно следует запутать их более четко, чтобы не подавать потенциально плохой пример.   -  person misiek    schedule 03.07.2017
comment
@JimRedmond Отлично! Как использовать пароль приложения? Не могли бы вы показать пример такого URL?   -  person misiek    schedule 03.07.2017


Ответы (1)


Вы можете использовать для этого пароль для конкретного приложения, если вы предоставляете достаточные разрешения для всего, что вы пытаетесь сделать. Установите пароль приложения в настройках Bitbucket в разделе «Пароль приложения»; как только вы сделаете свой выбор, Bitbucket сгенерирует для вас пароль и покажет его вам один раз.

Чтобы использовать новый пароль приложения с Git, вы можете установить URL-адрес на удаленном устройстве примерно следующим образом (при условии, что ваше имя пользователя в Bitbucket — «user», а случайно сгенерированный пароль приложения — «pass»):

[remote "origin"] url = https://user:[email protected]/owner/repo.git

Чтобы использовать пароль приложения с Mercurial, вы можете установить вещи в разделе [auth] hgrc репо:

[auth] bb.prefix = https://bitbucket.org/owner/repo bb.username = user bb.password = pass

person Jim Redmond    schedule 03.07.2017
comment
Хорошо, мне удалось проверить это, и это действительно работает! Спасибо. Знаете ли вы, что создание паролей приложений или альтернатива также доступна на сервере BitBucket? - person misiek; 13.07.2017