Używanie menedżera poświadczeń git do uwierzytelniania w usłudze Azure Repos
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Menedżer poświadczeń Git upraszcza uwierzytelnianie w repozytoriach Git w usłudze Azure Repos. Menedżery poświadczeń umożliwiają używanie tych samych poświadczeń, które są używane w portalu internetowym usługi Azure DevOps Services. Menedżerowie poświadczeń obsługują uwierzytelnianie wieloskładnikowe za pośrednictwem konta Microsoft lub identyfikatora Entra Firmy Microsoft. Oprócz obsługi uwierzytelniania wieloskładnikowego w Azure Repos, menedżery poświadczeń obsługują również uwierzytelnianie dwuskładnikowe w repozytoriach GitHub.
Usługa Azure Repos zapewnia obsługę środowiska IDE dla konta Microsoft i uwierzytelniania usługi Microsoft Entra za pośrednictwem następujących klientów:
- Team Explorer w programie Visual Studio
- IntelliJ i Android Studio z wtyczką Azure Repos dla platformy IntelliJ
Jeśli Twoje środowisko nie ma dostępnej integracji, skonfiguruj środowisko IDE przy użyciu osobistego tokenu dostępu lub protokołu SSH w celu nawiązywania połączenia z repozytoriami.
Ważne
W ciągu następnego roku będziemy dążyć do wzmocnienia poziomu bezpieczeństwa firmy Microsoft i naszych klientów w odniesieniu do użycia i tworzenia osobistych tokenów dostępu (PATs). Jeśli obserwujesz ten blog, być może zauważyłeś, że odchodziliśmy od PATs jako zalecanej metody uwierzytelniania dla interfejsów API usługi Azure DevOps, wprowadzając restrykcyjne polityki i bardziej bezpieczne alternatywy. Tokeny PAT mogą być wektorem przyciągającym nieautoryzowany dostęp, zwłaszcza w przypadku niezabezpieczonego przechowywania, nadmiernych uprawnień lub ustawienia na długi okres.
Dowiedz się więcej o naszych wysiłkach w zmniejszenie użycia osobistego tokenu dostępu w usłudze Azure DevOps
Zainstaluj menedżera poświadczeń Git
Windows
Pobierz i uruchom najnowszy instalator Git dla systemu Windows, który zawiera Menedżera poświadczeń Git. Upewnij się, że włączono opcję instalacji menedżera poświadczeń Git.
macOS i Linux
Możesz użyć kluczy SSH do uwierzytelniania w usłudze Azure Repos lub możesz użyć usługi Git Credential Manager.
Instrukcje instalacji znajdują się w repozytorium GitHub dla usługi GCM. Na komputerze Mac zalecamy używanie homebrew. W systemie Linux można zainstalować z .deb lub tarball.
Korzystanie z menedżera poświadczeń git
Po pierwszym nawiązaniu połączenia z repozytorium Git z klienta Git menedżer poświadczeń wyświetli monit o podanie poświadczeń. Podaj swoje konto Microsoft lub poświadczenia microsoft Entra. Jeśli twoje konto ma włączone uwierzytelnianie wieloskładnikowe, menedżer poświadczeń wyświetli monit o przejście przez ten proces.
Po uwierzytelnieniu menedżer poświadczeń tworzy i buforuje token dla przyszłych połączeń z repozytorium. Polecenia usługi Git łączące się z tym kontem nie będą monitować o poświadczenia użytkownika do momentu wygaśnięcia tokenu. Token można odwołać za pośrednictwem usługi Azure Repos.
Ustawianie domyślnego typu poświadczeń jako protokołu OAuth
Domyślnie usługa GCM zażąda tokenu dostępu osobistego z usługi Azure Repos. Można jednak zmienić domyślny typ tokenu na token Microsoft Entra do uwierzytelniania w Git. Zalecamy takie podejście, ponieważ ten ostatni token ma jednogodzinne wygaśnięcie w porównaniu do 7-dniowych paTs wybite przez GCM. Wszystkie PAT-y utworzone przez usługę GCM można odwołać na stronie ustawienia użytkownika.
Aby ustawić domyślny typ poświadczeń na tokeny Microsoft Entraustaw wpis konfiguracji credential.azreposCredentialType
(lub zmienną środowiskową GCM_AZREPOS_CREDENTIALTYPE
) na oauth
. Dowiedz się więcej o i korzystaniu z GCM w Azure Repos.
Użycie jednostki usługi jako metody uwierzytelniania
Możesz również podać jednostki usługi na potrzeby uwierzytelniania za pomocą usługi GCM. Określ identyfikatory klienta i dzierżawy jednostki usługi w tym formacie: {tenantId}/{clientId}
.
git config --global credential.azreposServicePrincipal "11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222"
Należy również ustawić co najmniej jeden mechanizm uwierzytelniania, jeśli ustawisz tę wartość:
- credential.azreposServicePrincipalSecret
- credential.azreposServicePrincipalCertificateThumbprint
- credential.azreposServicePrincipalCertificateSendX5C
Uzyskiwanie pomocy
Można otwierać i zgłaszać problemy z programem Git Credential Manager w projekcie na GitHubie .