Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Güvenli kimlik doğrulaması, Azure Depolarınızı ve Azure DevOps Server Git depolarınızı korumanın temelidir. Microsoft Entra OAuth belirteçleri, Kişisel Erişim Belirteçleri ve SSH anahtarları gibi birden çok kimlik doğrulama seçeneğiyle doğru yöntemin seçilmesi, geliştirme iş akışınız için hem güvenlik hem de üretkenlik sağlar.
Microsoft Entra OAuth belirteçleri , OAuth 2.0 standartları aracılığıyla gelişmiş güvenlik ve kurumsal kimlik sistemleriyle sorunsuz tümleştirme sunan modern geliştirme ekipleri için önerilen yaklaşımdır. Komut satırından çalışıyor, Git istemcilerini kullanıyor veya CI/CD işlem hatlarıyla tümleştirme yapıyor olun, uygun kapsam sınırlarına sahip bir kimlik doğrulama yöntemi seçmek, ihtiyacınız olan erişimi korurken güvenlik risklerini azaltır.
Artık gerekli olmadığında kimlik bilgilerini her zaman iptal edin veya döndürün. Bu uygulama, depo güvenliğini korur ve en az ayrıcalık erişimi ilkesini izler.
Kimlik doğrulama mekanizmaları
Microsoft Entra OAuth belirteçleri (Önerilen)
Microsoft Entra belirteçleri Git işlemleri ve REST API'leri için tercih edilen kimlik doğrulama yöntemidir. Gelişmiş güvenlik özellikleri sunar ve kişisel erişim belirteçlerinin kullanıldığı her yerde kullanılabilir. Bu belirteçler bir kullanıcı sorumlusu veya yönetilen kimlik ve/veya hizmet sorumlusu için oluşturulur.
Azure CLI ile hızlı başlangıç: Azure CLI kullanarak Git işlemleriyle hemen kullanmak üzere bir Microsoft Entra belirteci edinebilirsiniz. Bu yöntem test veya tek seferlik işlemler için idealdir.
Kullanıcı kimlik doğrulaması için:
az login
az account get-access-token --resource 499b84ac-1321-427f-aa17-267ca6975798 --query "accessToken" --output tsv
Hizmet sorumlusu kimlik doğrulaması için: Önce hizmet sorumlusu olarak oturum açın, ardından belirteci alın:
az login --service-principal -u <client-id> -p <client-secret> --tenant <tenant-id>
az account get-access-token --resource 499b84ac-1321-427f-aa17-267ca6975798 --query "accessToken" --output tsv
Git ile örnek kullanım:
$accessToken = az account get-access-token --resource 499b84ac-1321-427f-aa17-267ca6975798 --query "accessToken" --output tsv
git -c http.extraheader="AUTHORIZATION: bearer $accessToken" clone https://dev.azure.com/{yourOrgName}/{yourProjectName}/_git/{yourRepoName}
Kişisel erişim belirteçleri (Alternatif seçenek)
Uyarı
Kişisel Erişim Belirteçleri hala desteklense de, daha iyi güvenlik ve modern kimlik doğrulama uygulamaları için Microsoft Entra OAuth belirteçleri önerilir .
Kişisel erişim belirteçleri (PAT) kullanıcı adınızı ve parolanızı doğrudan kullanmadan Azure DevOps'a erişim sağlar. Bu belirteçlerin süresi dolar ve erişebilecekleri verilerin kapsamını kısıtlamanıza olanak sağlar.
Aşağıdaki durumlarda PAT'leri kullanın:
- Sisteminizde ayarlanmış SSH anahtarları yok
- Kimlik bilgisi tarafından verilen izinleri sınırlamanız gerekir
- Microsoft Entra OAuth belirteçleri senaryonuzda kullanılamıyor
Git etkileşimleri, boş bir dize dışında herhangi bir şey olabilecek bir kullanıcı adı gerektirir. HTTP temel kimlik doğrulaması ile bir PAT kullanmak için, aşağıdaki kod bloğunda gösterildiği gibi Base64-encode$MyPat.
PowerShell'de aşağıdaki kodu girin.
$MyPat = 'yourPat'
$headerValue = "Authorization: Basic " + [Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes(":" + $MyPat))
$env:GIT_AUTH_HEADER = $headerValue
git --config-env=http.extraheader=GIT_AUTH_HEADER clone https://dev.azure.com/yourOrgName/yourProjectName/_git/yourRepoName
SSH anahtarları
SSH ile anahtar kimlik doğrulaması, bilgisayarınızda oluşturduğunuz genel ve özel anahtar çifti aracılığıyla çalışır. Ortak anahtarı web'den kullanıcı adınız ile ilişkilendirirsiniz. Azure DevOps, Git ile çalışırken size gönderilen verileri bu anahtarla şifreler. Bilgisayarınızdaki verilerin şifresini hiçbir zaman paylaşılmayan veya ağ üzerinden gönderilmeyen özel anahtarla çözersiniz.
Sisteminizde zaten ayarlanmışsa SSH harika bir seçenektir. Yalnızca Azure DevOps'a bir ortak anahtar ekleyin ve SSH kullanarak depolarınızı klonlayın. Https kimlik doğrulaması için Git kimlik bilgileri yöneticilerini veya kişisel erişim belirteçlerini kullanamayan Windows için Git çalıştıran Linux, macOS veya Windows için SSH tercih edilebilir.
Daha fazla bilgi için bkz . Azure DevOps ile SSH'yi ayarlama.
Belirteç oluşturmak için Git Kimlik Bilgileri Yöneticisi'ni kullanma
Kimlik bilgilerinizi her seferinde girmekten kaçınmak ve Azure Repos'a erişirken belirtecinizi daha güvenli tutmak için Git Kimlik Bilgileri Yöneticisi (GCM) kullanın. Web portalında oturum açın, bir belirteç oluşturun ve ardından Azure Repos'a bağlanırken parola olarak belirteci kullanın. Microsoft Entra belirteçleri (tercih edilen) veya PAT'ler, kimlik bilgisi yöneticisi yüklü olduğunda isteğe bağlı olarak oluşturulur ve Git komut satırı veya başka bir istemciyle kullanılmak üzere yerel olarak kaydedilir.
Mevcut depolar
Var olan kaynağı kaldır: Kaynağı daha önce bir kullanıcı adı kullanarak eklediyseniz, aşağıdaki komutu çalıştırarak kaldırın:
git remote remove originPAT ile kimlik doğrulaması: Standart kimlik doğrulamasıyla ilgili sorunlarla karşılaşırsanız, komut satırı aracılığıyla kimlik doğrulaması yapmak için aşağıdaki komutu çalıştırın:
git remote add origin https://dev.azure.com/<PAT>@<company_machineName>:/<project-name>/_git/<repo_name>git push -u origin --allpath to git repo = /_git/do, Git depoları için Azure DevOps'ta kullanılan URL yolu yapısını ifade eder./_git/kesimi git deposuna eriştiğinizi gösterir vedodeponuzun gerçek adıyla değiştirmeniz gerekir. Örneğin, deponuzmy-repoolarak adlandırılırsa yol '/_git/my-repo' olur.Clone deposu: Git kullanıyorsanız ve kimlik doğrulaması yapmanız gerekiyorsa aşağıdaki komutu çalıştırın:
git clone https://{organization}@dev.azure.com/{organization}/_git/{repository}{organization}Azure DevOps kuruluşunuzun adıyla,{repository}ise deponuzun adıyla değiştirin.