Doğru kimlik doğrulama mekanizmasını seçme
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Azure DevOps Services ile arabirim oluşturan uygulamalar için REST API'leri gibi kaynaklara erişmek için kimlik doğrulaması yapmanız gerekir. Bu makalede, uygulamanız için doğru kimlik doğrulama mekanizmasını seçmenize yardımcı olacak yönergeler sağlanır.
Aşağıdaki tabloda, farklı uygulama senaryolarında dikkate alınması gereken önerilen kimlik doğrulama kavramları özetlenmiştir. Başlamanıza yardımcı olması için bunlara eşlik eden açıklamalara, örneklere ve kod örneklerine bakın.
Uygulama türü | Açıklama | Örnek | Kimlik doğrulaması mekanizması | Kod örnekleri |
---|---|---|---|---|
Etkileşimli istemci tarafı uygulaması (REST) | Kullanıcı etkileşiminin Azure DevOps Services REST API'lerini çağırmasına izin veren istemci uygulaması | Bir kuruluştaki projeleri numaralandıran konsol uygulaması | OAuth ile Microsoft Kimlik Doğrulama Kitaplığı (MSAL) |
örnek |
Etkileşimli istemci tarafı uygulaması (istemci kitaplıkları) | Kullanıcı etkileşiminin Azure DevOps Services istemci kitaplıklarını çağırmasına izin veren istemci uygulaması | Konsol uygulaması geçerli kullanıcıya atanan hataları numaralandırıyor | istemci kitaplıklarıyla OAuth | örnek |
Etkileşimli olmayan istemci tarafı uygulaması | Başsız metin yalnızca istemci tarafı uygulaması | Kullanıcıya atanan tüm hataları görüntüleyen konsol uygulaması | Cihaz Profili akışıyla OAuth | örnek |
Kişisel erişim belirteci (PAT) | Kendi kaynaklarınıza erişmek için taşıyıcı belirteç | Geçici REST çağrıları için parolanızın yerine PAT'nizi kullanın. Uygulamalar için ideal değildir. | Pats | örnekleri |
Sunucu uygulaması | İstemci OM kitaplığını kullanan Azure DevOps Server uygulaması | Ekip hata panolarını görüntüleyen Azure DevOps Server uzantısı | İstemci Kitaplıkları | örnek |
Hizmet sorumlusu veya Yönetilen kimlik | Kendi kimliğine sahip uygulama | İş öğeleri oluşturmak için Azure işlevi | Hizmet sorumluları ve yönetilen kimlikler | örnek |
Web uzantısı | Azure DevOps Services uzantısı | Çevik Kartlar uzantısı | VSS Web Uzantısı SDK'sı | örnek |
Bahşiş
Entra tabanlı kimlik doğrulaması, Microsoft Entra hesaplarıyla etkileşim kuruyorsanız Azure DevOps Services ile tümleştirmek isteyen geliştiricilere önerimizdir. Bu tablodaki OAuth örnek uygulamaları, uygulama geliştirmeiçin
Microsoft hesapları (MSA) veya Azure DevOps Server kullanıcıları ile kimlik doğrulaması için
Platformumuz genelinde PAT kullanımını nasıl azalttığımız hakkında daha fazla bilgi edinmek için blog okuyun.
Sık sorulan sorular (SSS)
S: Hizmet hesabım neden Azure DevOps REST API'sine erişemiyor?
Y: Hizmet hesabınız "gerçekleştirilmiş" olmayabilir. Etkileşimli oturum açma izinleri olmayan hizmet hesapları oturum açamaz. Daha fazla bilgi için çözüm için bu geçici çözüme bakın.
S: Etkileşimli istemci tarafı uygulamam için Azure DevOps Services İstemci Kitaplıklarını mı yoksa Azure DevOps Services REST API'lerini mi kullanmalıyım?
Y: Azure DevOps Services kaynaklarına erişmek için REST API'leri üzerinden Azure DevOps Services İstemci Kitaplıklarını kullanmanızı öneririz. REST uç nokta sürümleri değiştiğinde daha basit ve bakımı kolaydır. İstemci kitaplıkları belirli işlevlere sahip değilse REST API'lerimizle kimlik doğrulaması için MSAL kullanın.
S: Bu kılavuz yalnızca Azure DevOps Services için mi yoksa şirket içi Azure DevOps Server kullanıcıları için de geçerli mi?
Y: Bu kılavuz öncelikli olarak Azure DevOps Services kullanıcılarına yöneliktir. Azure Devops Server kullanıcıları için kimlik doğrulaması için İstemci Kitaplıklarını, Windows Kimlik Doğrulamasını veya Kişisel Erişim Belirteçlerini (PAT) kullanmanızı öneririz.
S: Uygulamamın hem Azure DevOps Server hem de Azure DevOps Services ile kimlik doğrulamasını istersem ne olur?
Y: En iyi yöntem, Azure DevOps Server ve Azure DevOps Services için ayrı kimlik doğrulama yollarına sahip olmaktır. hangi hizmete eriştiğinizi belirlemek için öğesini requestContext
kullanabilir ve ardından uygun kimlik doğrulama mekanizmasını uygulayabilirsiniz. Birleşik bir çözüm tercih ediyorsanız, HER ikisi için de PAT'ler çalışır.