스택큐힙리스트

커밋을 푸시하기 위해 https 자격 증명을 캐시하는 방법이 있나요? 본문

카테고리 없음

커밋을 푸시하기 위해 https 자격 증명을 캐시하는 방법이 있나요?

스택큐힙리스트 2023. 3. 27. 01:58
반응형

최근에 저는 방화벽 문제로 인해 GitHub에서 저장소를 https://로 동기화하기 시작했고, 매번 비밀번호를 요구합니다.

이제 git push 마다 인증을 반복하지 않고 자격 증명을 캐시하는 방법이 있을까요?

답변 1

Git 1.7.9부터 (2012년 발표) HTTP/HTTPS에서 비밀번호를 계속 입력할 필요 없이 자동적으로 처리할 수 있는 credential helpers이라는 멋진 메커니즘이 있습니다.

다음 중 하나의 자격 증명 도우미를 사용할 수 있습니다.

git config --global credential.helper cache

credential.helper cache value 는 Git에게 비밀번호를 일정한 시간 동안 캐시에 저장하도록 지시합니다. 기본값은 15분이며, 다음과 같이 더 긴 제한 시간을 설정할 수 있습니다:

# Cache for 1 hour

git config --global credential.helper cache --timeout=3600

# Cache for 1 day

git config --global credential.helper cache --timeout=86400

# Cache for 1 week

git config --global credential.helper cache --timeout=604800

원하신다면 자격 증명을 영구적으로 저장할 수도 있습니다. 아래의 다른 답변을 참조하세요.

GitHub의 도움말에 따르면, 만약 Mac OS X를 사용하며 Git을 설치할 때 #$$**$&@&$&을 사용했다면, 기본 Mac OS X 키스토어를 사용할 수 있다.

git config --global credential.helper osxkeychain

윈도우에는 Git Credential Manager for Windows 또는 wincred in msysgit 같은 도우미가 있습니다.

git config --global credential.helper wincred # obsolete

#&#&**$& 와 함께 (2016년 3월):

git config --global credential.helper manager

2011년에는 Linux에서 gnome-keyring (또는 KWallet과 같은 다른 키링 구현)을 사용해야합니다.

현재 (2020년), 이것은 (리눅스에서) 될 것입니다.

페도라

sudo dnf install git-credential-libsecret

git config --global credential.helper /usr/libexec/git-core/git-credential-libsecret

우분투

sudo apt-get install libsecret-1-0 libsecret-1-dev

cd /usr/share/doc/git/contrib/credential/libsecret

sudo make

git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret

답변 2

이 https 자격 증명은 GitHub 및 다른 Git 호스팅 서비스에서 커밋을 푸시 할 때 사용되는 중요한 인증 방법 중 하나입니다. HTTPS 자격 증명은 사용자 이름과 비밀번호를 요구할 수도 있지만, OAuth 토큰을 사용하여 보안성을 높일 수도 있습니다. 이러한 자격 증명을 매번 입력하는 것은 매우 번거롭습니다. 이 문제를 해결할 수 있는 방법이 캐싱이라는 것입니다.

캐싱은 자격 증명을 로컬 저장소에 저장하여 커밋을 푸시 할 때마다 매번 자격 증명을 입력하지 않도록 합니다. HTTPS 자격 증명을 캐시하면 커밋을 푸시할 때마다 자동으로 인증됩니다. 그러나 이러한 캐싱 기능은 서비스에 따라 다르므로 자세한 지침을 따라야 합니다.

GitHub에서는 Git 자격 증명 관리자를 사용하여 HTTPS 자격 증명 캐싱을 설정할 수 있습니다. 이 설정은 Git 자격 증명 관리자를 사용하여 로컬 컴퓨터에 HTTPS 자격 증명을 캐시하는 데 도움이 됩니다. 이 기능을 사용하면 커밋을 푸시 할 때마다 자격 증명을 다시 입력할 필요가 없습니다. 이 기능은 외부 Git 호스팅 서비스에서도 지원됩니다.

이러한 기능은 보안성을 쉽게 손상시킬 수 있습니다. 캐싱을 사용할 때는 로컬 컴퓨터에서만 사용하고, 비공개 저장소에서만 사용하고, 컴퓨터를 공유하지 않는 것이 좋습니다. 또한 OAuth 토큰을 사용하여 자격 증명을 더 안전하게 유지할 수 있습니다.

요약하면, HTTPS 자격 증명 캐싱은 Git 호스팅 서비스에서 커밋을 푸시하는 데 매우 유용한 기능입니다. 캐싱을 사용하면 매번 자격 증명을 입력하지 않아도 됩니다. 이러한 기능을 올바르게 구성하면 더 높은 보안성을 유지할 수 있습니다. Git 호스팅 서비스에서 이러한 기능을 사용하는 방법에 대한 자세한 내용은 해당 서비스의 문서를 참조하십시오.

반응형
Comments