Сделать vsCode не запрашивать парольную фразу gitlab ssh при нажатии

Я создал ключ ssh, добавил его на gitlab и следовал инструкциям. Когда я делаю push из git bash, все работает нормально, меня постоянно раздражает ввод парольной фразы каждый раз. Но когда я пытаюсь нажать из vsCode, он не запрашивает парольную фразу и выдает ошибку

Git: [email protected]: Permission denied (publickey,keyboard-interactive).

Есть ли способ исправить это? И дополнительная помощь: как я могу запретить ему каждый раз спрашивать парольную фразу.

Я знаю, что есть похожие вопросы о моей бонусной помощи, но я ничего не нашел о проблеме с vsCode. Я использую виндовс 11.

Извините, если название вводит в заблуждение.

Обратите внимание, что парольную фразу запрашивает не Гит. Это сш. Ssh хранит данные вашего ключа в зашифрованных файлах, зашифрованных парольной фразой; и ssh не использовал кодовую фразу спасти, поэтому ssh снова нужна кодовая фраза, чтобы де-зашифровать файлы, чтобы получить ключи. Если ssh может получить ключ без необходимости расшифровывать файлы, ssh не понадобится ключ. Если ssh может получить ключ без расшифровки файла, ключ менее безопасен. У вас не может быть двух способов: выберите один и живите с ним.

torek 22.03.2022 08:54

Обратите внимание, что ssh делает предлагает своего рода компромисс с помощью того, что он называет «агентом ssh». Здесь агент получает ключ, а программы запрашивают ключ у агента. Агенту требуется парольная фраза, если она есть, чтобы он мог расшифровать и удерживать ключ. Это означает, что ключ доступен только во время работы агента, но если кто-то когда-либо скомпрометирует агент, это само по себе довольно плохо. Опять же, у вас не может быть двух способов: выберите способ (используйте агент, не используйте агент) и живите с ним.

torek 22.03.2022 08:57

и как мне использовать этот агент ssh?

Tinaira 22.03.2022 09:02

В Windows? Понятия не имею. В macOS он предустановлен, вы просто запускаете ssh-add в любом окне Терминала. В Linux есть куча вариантов его установки.

torek 22.03.2022 09:06

возможно, это то же самое на окнах с git bash. я попробую, когда вернусь домой

Tinaira 22.03.2022 09:22

Может быть (я не знаю, есть ли является, просто «может быть») также какая-то проблема с использованием агента с VSCode. Я думаю, что здесь на SO были вопросы об этом.

torek 22.03.2022 09:24
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
6
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я думаю, что вы указали парольную фразу при создании ключей, поэтому вам нужно указывать парольную фразу каждый раз, когда вы что-то фиксируете. Одно из решений заключается в том, что update/re создает ключи ssh без фазы доступа и добавляет их в gitlab.

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

Tinaira 22.03.2022 06:48

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

Jaymit Gupta 22.03.2022 06:59

но когда я создал свою учетную запись gitlab и первый проект в ней, он сказал, что у меня должен быть ключ ssh. не могли бы вы объяснить мне немного больше, что вы имеете в виду под закрытым ключом и открытым ключом в gitlab и какова их цель

Tinaira 22.03.2022 07:41

SSH используется для удаленной передачи файлов, управления сетью и удаленного доступа к операционной системе. SSH использует пару ключей, то есть открытый и закрытый. Например, если вы использовали ssh-keygen на своем сервере. в папке .ssh в домашнем каталоге у него будут эти 2 файла id_rsa.pub и id_rsa. Вы должны скопировать id_rsa.pub в учетную запись gitlab. Открытый ключ содержит идентификатор, который может быть расшифрован с помощью закрытого ключа на сервере.

Jaymit Gupta 22.03.2022 08:04

Я скопировал .pub в свою учетную запись gitlab.

Tinaira 22.03.2022 08:13

Тогда вам не понадобится кодовая фраза. В системе реального мира мы также не будем ее использовать.

Jaymit Gupta 22.03.2022 09:44

хорошо спасибо. есть идеи о моей проблеме с vsCode?

Tinaira 22.03.2022 10:19

да, удали фазу доступа, это не выдаст тебе ошибку

Jaymit Gupta 22.03.2022 10:43

Другие вопросы по теме