Azure Resource Manager iş yükü kimlik hizmeti bağlantısı sorunlarını giderme
İş yükü kimlik hizmeti bağlantılarıyla ilgili yaygın sorunların hatalarını ayıklama konusunda yardım alın. Gerekirse el ile hizmet bağlantısı oluşturmayı da öğrenirsiniz.
Sorun giderme denetim listesi
İş yükü kimlik hizmeti bağlantılarıyla ilgili sorunları gidermek için aşağıdaki denetim listesini kullanın:
- İş yükü kimliğini desteklediklerinden emin olmak için işlem hattı görevlerini gözden geçirin.
- İş yükü kimlik federasyonunun kiracı için etkin olduğunu doğrulayın.
- Doğruluk için veren URL'sini ve federasyon konusunu denetleyin.
Aşağıdaki bölümlerde sorunları ve bunların nasıl çözüleceğini açıklanmaktadır.
İşlem hattı görevlerini gözden geçirme
Tüm işlem hatları görevleri iş yükü kimliğini desteklemez. Özellikle, görevlerde yalnızca Azure Resource Manager hizmet bağlantısı özellikleri iş yükü kimlik federasyonu kullanır. Aşağıdaki tabloda Azure DevOps'a dahil edilen görevler için iş yükü kimliği federasyon desteği listelenmiştir. Market’ten yüklenen görevler için destek almak üzere uzantı yayımcısıyla iletişime geçin.
Görev | İş yükü kimliği federasyon desteği |
---|---|
AutomatedAnalysis@0 | Y |
AzureAppServiceManage@0 | Y |
AzureAppServiceSettings@1 | Y |
AzureCLI@1 | Y |
AzureCLI@2 | Y |
AzureCloudPowerShellDeployment@1 | AzureCloudPowerShellDeployment@2 kullanma |
AzureCloudPowerShellDeployment@2 | Y |
AzureContainerApps@0 | Y |
AzureContainerApps@1 | Y |
AzureFileCopy@1 | AzureFileCopy@6 kullanma |
AzureFileCopy@2 | AzureFileCopy@6 kullanma |
AzureFileCopy@3 | AzureFileCopy@6 kullanma |
AzureFileCopy@4 | AzureFileCopy@6 kullanma |
AzureFileCopy@5 | AzureFileCopy@6 kullanma |
AzureFileCopy@6 | Y |
AzureFunctionApp@1 | Y |
AzureFunctionApp@2 | Y |
AzureFunctionAppContainer@1 | Y |
AzureFunctionOnKubernetes@0 | AzureFunctionOnKubernetes@1 kullanma |
AzureFunctionOnKubernetes@1 | Y |
AzureIoTEdge@2 | Y |
AzureKeyVault@1 | Y |
AzureKeyVault@2 | Y |
AzureMonitor@0 | AzureMonitor@1 kullanma |
AzureMonitor@1 | Y |
AzureMysqlDeployment@1 | Y |
AzureNLBManagement@1 | N |
AzurePolicyCheckGate@0 | Y |
AzurePowerShell@2 | Y |
AzurePowerShell@3 | Y |
AzurePowerShell@4 | Y |
AzurePowerShell@5 | Y |
AzureResourceGroupDeployment@2 | Y |
AzureResourceManagerTemplateDeployment@3 | Y |
AzureRmWebAppDeployment@3 | Y |
AzureRmWebAppDeployment@4 | Y |
AzureSpringCloud@0 | Y |
AzureVmssDeployment@0 | Y |
AzureWebApp@1 | Y |
AzureWebAppContainer@1 | Y |
ContainerBuild@0 | Y |
ContainerStructureTest@0 | Y |
Docker@0 | Y |
Docker@1 | Azure hizmet bağlantısı: Y Docker Kayıt Defteri hizmeti bağlantısı: N |
Docker@2 | Y |
DockerCompose@0 | Y |
DockerCompose@1 | Y |
DotNetCoreCLI@2 | Y |
HelmDeploy@0 | Azure hizmet bağlantısı: Y |
HelmDeploy@1 | Azure hizmet bağlantısı: Y |
InvokeRESTAPI@1 | Y |
JavaToolInstaller@0 | Y |
JenkinsDownloadArtifacts@1 | Y |
Kubernetes@0 | Kubernetes@1 kullanma |
Kubernetes@1 | Y |
KubernetesManifest@0 | KubernetesManifest@1 kullanma |
KubernetesManifest@1 | Y |
Maven@4 | Y |
Notation@0 | Y |
PackerBuild@0 | PackerBuild@1 kullanma |
PackerBuild@1 | Y |
PublishToAzureServiceBus@1 | Azure hizmet bağlantısıyla PublishToAzureServiceBus@2 kullanma |
PublishToAzureServiceBus@2 | Y |
ServiceFabricComposeDeploy@0 | N |
ServiceFabricDeploy@1 | N |
SqlAzureDacpacDeployment@1 | Y |
VSTest@3 | Y |
İş yükü kimlik federasyonun etkin olduğunu doğrulama
AADSTS700223 veya AADSTS700238 hata iletileri görürseniz, iş yükü kimlik federasyonu Microsoft Entra kiracınızda devre dışı bırakıldı.
Federasyon kimlik bilgilerini engelleyen herhangi bir Microsoft Entra politikası olmadığını doğrulayın.
Doğruluk için veren URL'sini denetleyin
Eşleşen federasyon kimliği kaydının bulunamadığını belirten bir ileti görürseniz, veren URL'si veya federasyon konusu eşleşmez. Doğru yayıncı URL’si https://vstoken.dev.azure.com
ile başlar.
Yayıncı URL’sini güncellemek için hizmet bağlantısını düzenleyip kaydederek yayıncı URL'sini düzeltebilirsiniz. Azure DevOps kimliği oluşturmadıysa yayıncı URL’sini kendinizin güncelleştirilmesi gerekir. Azure kimlikleri için, yayıncı URL’si otomatik olarak güncelleştirilir.
Genel sorunlar
Sonraki bölümlerde yaygın sorunlar tanımlanıp nedenleri ve çözümleri açıklanmaktadır.
Microsoft Entra kiracısında bir hizmet sorumlusu oluşturma iznim yok
Doğru izinlere sahip değilseniz Azure DevOps hizmet bağlantısı yapılandırma aracını kullanamazsınız. Hizmet sorumluları oluşturma izniniz yoksa veya Azure DevOps kullanıcınızdan farklı bir Microsoft Entra kiracısı kullanıyorsanız izin düzeyiniz aracı kullanmak için yetersizdir.
Uygulama kayıtları oluşturmak için Microsoft Entra ID’de izinleriniz olmalı veya uygun bir role sahip olmalısınız (örneğin Uygulama Geliştiricisi).
Sorunu çözmek için iki seçeneğiniz vardır:
- Çözüm 1: Yönetilen kimlik kimlik doğrulaması kullanarak iş yükü kimliğini el ile yapılandırma
- Çözüm 2: Uygulama kaydı kimlik doğrulamayı kullanarak iş yükü kimliğini el ile yapılandırma
Hata iletileri
Aşağıdaki tabloda, yaygın hata iletileri ve bunları oluşturabilecek sorunlar tanımlanmıştır:
İleti | Olası sorun |
---|---|
belirteç isteyemiyor: Al ?audience=api://AzureADTokenExchange: unsupported protocol scheme |
Görev iş yükü kimlik federasyonu desteklemez. |
Kimlik bulunamadı | Görev iş yükü kimlik federasyonu desteklemez. |
Azure için erişim belirteci getirilemedi | Görev iş yükü kimlik federasyonu desteklemez. |
AADSTS700016: '****' tanımlayıcısı olan uygulama bulunamadı | Hizmet bağlantısı için kullanılan kimlik artık yok, hizmet bağlantısından kaldırılmış veya yanlış yapılandırılmış olabilir. Hizmet bağlantısını önceden oluşturulmuş bir kimlikle el ile yapılandırdıysanız, öğesinin doğru yapılandırıldığından appID /clientId emin olun. |
AADSTS7000215: Geçersiz istemci gizli dizisi sağlandı. | Süresi dolmuş bir gizli diziye sahip bir hizmet bağlantısı kullanıyorsunuz. Hizmet bağlantısını iş yükü kimliği federasyonuna dönüştürün ve süresi dolan gizli diziyi federasyon kimlik bilgileriyle değiştirin. |
AADSTS700024: İstemci onaylama işlemi geçerli zaman aralığı içinde değil | Hata yaklaşık 1 saat sonra oluşursa, bunun yerine İş yükü kimlik federasyonu ve Yönetilen Kimlik ile bir hizmet bağlantısı kullanın. Yönetilen Kimlik belirteçlerinin ömrü yaklaşık 24 saattir. Hata 1 saatten önce ancak 10 dakika sonra oluşursa, (örtük olarak) erişim belirteci isteyen komutları (örtük olarak) azure depolamaya betiğinizin başına taşıyın. Erişim belirteci sonraki komutlar için önbelleğe alınır. |
AADSTS70021: Sunulan onay için eşleşen birleştirilmiş kimlik kaydı bulunamadı. Onay Veren: https://app.vstoken.visualstudio.com . |
Federasyon kimlik bilgisi oluşturulmadı veya veren URL'si doğru değil. Doğru veren URL'si biçimindedir https://vstoken.dev.azure.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX . Bir hizmet bağlantısını düzenleyip kaydederek veren URL'sini düzeltebilirsiniz. Azure DevOps kimliğinizi oluşturmadıysa, vereni el ile güncelleştirmeniz gerekir. REST API kullanıyorsanız, doğru vereni hizmet bağlantısının düzenleme iletişim kutusunda veya yanıtta (yetkilendirme parametreleri altında) bulabilirsiniz. |
AADSTS70021: Sunulan onay için eşleşen birleştirilmiş kimlik kaydı bulunamadı. Onay Veren: https://vstoken.dev.azure.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX . Onay Konusu: sc://<org>/<project>/<service-connection>. |
Veren URL'si veya federasyon konusu eşleşmiyor. Azure DevOps kuruluşu veya projesi yeniden adlandırıldı veya kimlikte federasyon konusu güncelleştirilmeden el ile oluşturulan bir hizmet bağlantısı yeniden adlandırıldı. |
AADSTS700211: Sunulan onay veren için eşleşen federasyon kimliği kaydı bulunamadı | Federasyon kimlik bilgisi oluşturulmadı veya veren URL'si doğru değil. |
AADSTS700213: Sunulan onay konusu için eşleşen federasyon kimliği kaydı bulunamadı | Federasyon kimlik bilgisi oluşturulmadı veya konu doğru değil. |
AADSTS700223 | İş yükü kimliği federasyonu, Microsoft Entra kiracısı üzerinde kısıtlanmış veya devre dışı bırakılmış. Bu senaryoda, bunun yerine federasyon için yönetilen kimlik kullanmak mümkün olabilir. Daha fazla bilgi için yönetilen kimlik ile İş yükü kimliği bölümüne bakın. |
AADSTS70025: İstemci uygulamasının yapılandırılmış federasyon kimliği kimlik bilgileri yok | Federasyon kimlik bilgilerinin Uygulama kaydında veya Yönetilen Kimlikte yapılandırıldığından emin olun. |
Microsoft Entra, Azure DevOps tarafından verilen belirteci hata koduyla reddetti AADSTS700238 | İş yükü kimlik federasyonu Microsoft Entra kiracısı üzerinde kısıtlandı. Kuruluşunuzun (https://vstoken.dev.azure.com/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX ) verenin iş yükü kimlik federasyonu kullanmasına izin verilmiyor. Microsoft Entra kiracı yöneticinizden veya yönetim ekibinizden Azure DevOps kuruluşunuz için iş yükü kimlik federasyonuna izin vermelerini isteyin. |
AADSTS900382: Gizli İstemci Bulutlar Arası'nda desteklenmez | Bazı bağımsız bulutlar İş yükü kimlik federasyonunu engeller. |
Hizmet sorumlusu istemci kimliği kullanılarak JSON Web Belirteci (JWT) alınamadı | Federasyon kimliği kimlik bilgileriniz yanlış yapılandırılmış veya Microsoft Entra kiracısı OpenID Connect 'i (OIDC) engelliyor. |
Betik şu hatayla başarısız oldu: TanınmayanArgumentError: tanınmayan bağımsız değişkenler: --federated-token | Azure CLI'nin önceki bir sürümünün yüklü olduğu bir aracıda AzureCLI görevi kullanıyorsunuz. İş yükü kimliği federasyonu için Azure CLI 2.30 veya üzeri gerekir. |
Microsoft Entra Kimliği'nde uygulama oluşturulamadı. Hata: Microsoft Graph'ta işlemi tamamlamak için yeterli ayrıcalık yok. Kullanıcının Microsoft Entra Uygulaması oluşturma izinlerine sahip olduğundan emin olun. | Uygulama kayıtları oluşturma özelliği Microsoft Entra kiracısında devre dışı bırakıldı. Hizmet bağlantısını oluşturan kullanıcıya Uygulama Geliştirici Microsoft Entra rolünü atayın. Alternatif olarak, yönetilen bir kimlik kullanarak hizmet bağlantısını el ile oluşturun. Daha fazla bilgi için yönetilen kimlik ile İş yükü kimliği bölümüne bakın. |
Gördüğünüz AADSTS hatası yukarıda listelenmiyor mu? Microsoft Entra kimlik doğrulaması ve yetkilendirme hata kodlarını denetleyin.