Azure Resource Manager hizmet bağlantılarının sorunlarını giderme

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Bu makalede, Azure Resource Manager hizmet bağlantısı oluştururken karşılaşabileceğiniz sorunları çözmenize yardımcı olacak yaygın sorun giderme senaryoları açıklanmaktadır. Hizmet bağlantıları oluşturmayı, düzenlemeyi ve güvenliğini sağlamayı öğrenmek için bkz. Hizmet bağlantılarını yönetme.

Azure Resource Manager hizmet bağlantısı oluşturduğunuzda ne olur?

Hizmet bağlantınız yoksa aşağıdaki gibi bir bağlantı oluşturabilirsiniz:

  1. Projenizin içinden Proje ayarları'nı ve ardından Hizmet bağlantıları'nı seçin.

    Proje ayarlarından hizmet bağlantılarına erişmeyi gösteren ekran görüntüsü

  2. Yeni bir hizmet bağlantısı eklemek için Yeni hizmet bağlantısı'nı ve ardından Azure Resource Manager'ı seçin. İşiniz bittiğinde İleri'yi seçin.

    Hizmet bağlantı türlerini gösteren ekran görüntüsü.

  3. Uygulama kaydı (otomatik) ve kimlik bilgisi olarak İş yükü kimlik federasyonu'na tıklayın.

  4. Abonelik'i seçin ve ardından açılan listeden aboneliğinizi seçin. Formun kalan kısmını doldurun ve işiniz bittiğinde Kaydet'i seçin.

Yeni Azure Resource Manager hizmet bağlantınızı kaydettiğinizde, Azure DevOps aşağıdaki eylemleri gerçekleştirir:

  1. Seçilen aboneliğe için Microsoft Entra kiracısına bağlanır.
  2. Microsoft Entra ID’de kullanıcı adına bir uygulama oluşturur.
  3. Seçilen aboneliğe katkıda bulunan olarak uygulamayı atar.
  4. Bu uygulamanın ayrıntılarını kullanarak bir Azure Resource Manager hizmet bağlantısı oluşturur.

Not

Hizmet bağlantıları oluşturmak için proje ayarlarınızda Endpoint Creator grubuna ekleyin: Proje ayarları>Hizmet bağlantıları>Güvenlik. Katkıda bulunanlar varsayılan olarak bu gruba eklenir.

Sorun giderme senaryoları

Hizmet bağlantıları oluşturduğunuzda aşağıdaki sorunlar oluşabilir:

Kullanıcının dizinde yalnızca konuk izni var

  1. Yönetici hesabı kullanarak Azure portalında oturum açın. Hesap bir sahip veya kullanıcı hesabı yöneticisi olmalıdır.

  2. Sol gezinti çubuğunda Microsoft Entra Id öğesini seçin.

  3. Kullanıcı aboneliğine karşılık gelen uygun dizini düzenlediğinizden emin olun. Aksi takdirde Dizini değiştir'i seçin ve gerekirse uygun kimlik bilgilerini kullanarak oturum açın.

  4. Yönet bölümünde Kullanıcılar'ı seçin.

  5. Kullanıcı ayarlarını seçin.

  6. Dış kullanıcılar bölümünden Dış işbirliği ayarlarını yönet'i seçin.

  7. Konuk kullanıcı izinleri sınırlı seçeneğini Hayır olarak değiştirin.

Alternatif olarak, kullanıcıya yönetici düzeyinde izinler vermeye hazırsanız kullanıcıyı Yönetici rolünün bir üyesi yapabilirsiniz. Aşağıdaki adımları yapın:

Uyarı

Kullanıcıları Genel Yönetici rolüne atamak, Microsoft Entra kuruluşunuzdaki tüm yönetim ayarlarını okumalarına ve değiştirmelerine olanak tanır. En iyi uygulama olarak, bu rolü kuruluşunuzdaki beşten az kişiye atayın.

  1. Yönetici hesabı kullanarak Azure portalında oturum açın. Hesap bir sahip veya kullanıcı hesabı yöneticisi olmalıdır.

  2. Sol gezinti bölmesinde Microsoft Entra ID'yi seçin.

  3. Kullanıcı aboneliğine karşılık gelen uygun dizini düzenlediğinizden emin olun. Aksi takdirde Dizini değiştir'i seçin ve gerekirse uygun kimlik bilgilerini kullanarak oturum açın.

  4. Yönet bölümünde Kullanıcılar'ı seçin.

  5. Yönetmek istediğiniz kullanıcıyı aramak için arama kutusunu kullanın.

  6. Yönet bölümünde Dizin rolü'ne tıklayın ve ardından rolü değiştirin. Bitirdiğinizde Kaydet'i seçin.

Değişikliklerin genel olarak uygulanması genellikle 15-20 dakika sürer. Kullanıcı daha sonra hizmet bağlantısını yeniden oluşturmayı deneyebilir.

Kullanıcının dizine uygulama ekleme yetkisi yok

Dizine tümleşik uygulamalar eklemek için izinlere sahip olmanız gerekir. Dizin yöneticisinin bu ayarı değiştirme izinleri vardır.

  1. Sol gezinti bölmesinde Microsoft Entra Id öğesini seçin.

  2. Kullanıcı aboneliğine karşılık gelen uygun dizini düzenlediğinizden emin olun. Aksi takdirde Dizini değiştir'i seçin ve gerekirse uygun kimlik bilgilerini kullanarak oturum açın.

  3. Kullanıcılar'ı ve ardından Kullanıcı ayarları'nı seçin.

  4. Uygulama kayıtları altında Kullanıcılar uygulamaları kaydedebilir seçeneğini Evet olarak değiştirin.

Hizmet sorumlusunu, Microsoft Entra Id'de gerekli izinlere sahip olan mevcut bir kullanıcıyla da oluşturabilirsiniz. Daha fazla bilgi için bkz. Mevcut bir hizmet sorumlusuyla Azure Resource Manager hizmet bağlantısı oluşturma.

Erişim belirteci alınamadı veya geçerli bir yenileme belirteci bulunamadı

Bu hatalar genellikle oturumunuzun süresi dolduğunda oluşur. Bu sorunları çözmek için:

  1. Azure DevOps oturumunu kapatın.
  2. InPrivate veya gizli bir tarayıcı penceresi açın ve Azure DevOps'a gidin.
  3. Uygun kimlik bilgilerini kullanarak oturum açın.
  4. Kuruluşunuzu ve projenizi seçin.
  5. Hizmet bağlantınızı oluşturun.

Katkıda Bulunan rolü atanamadı

Bu hata genellikle seçili Azure aboneliği için Yazma izniniz olmadığında oluşur.

Bu sorunu çözmek için abonelik yöneticisinden size Microsoft Entra ID'de uygun rolü atamasını isteyin.

Hizmet bağlantısı oluştururken abonelik listelenmiyor

  • Çeşitli Azure aboneliği açılan menülerinde (faturalama, hizmet bağlantısı vb.) en fazla 50 Azure aboneliği listelenir: Bir hizmet bağlantısı kuruyorsanız ve 50'den fazla Azure aboneliğiniz varsa, bazı abonelikleriniz listelenmez. Bu senaryoda aşağıdaki adımları tamamlayın:

    1. Azure aboneliğinizin Microsoft Entra örneğinde yeni, yerel bir Microsoft Entra kullanıcısı oluşturun.
    2. Microsoft Entra kullanıcısını, faturalamayı ayarlamak veya hizmet bağlantıları oluşturmak için uygun izinlere sahip olacak şekilde ayarlayın. Daha fazla bilgi için bkz. Azure DevOps faturalama ayarlarını yapabilecek bir kullanıcı ekleme.
    3. Microsoft Entra kullanıcısını Paydaş erişim düzeyine sahip Azure DevOps kuruluşa ekleyin ve ardından Proje Koleksiyonu Yöneticileri grubuna ekleyin (faturalama için) veya kullanıcının hizmet bağlantıları oluşturmak için Team Project'te yeterli izinlere sahip olduğundan emin olun.
    4. Yeni kullanıcı kimlik bilgileriyle Azure DevOps'ta oturum açın ve faturalamayı ayarlayın. Listede yalnızca bir Azure aboneliği görürsünüz.
  • Azure DevOps Services'te önbelleğe alınmış eski kullanıcı belirteci: Azure Resource Manager (ARM) hizmet bağlantısı oluşturduğunuzda Azure aboneliğiniz listelenmiyorsa, bunun nedeni Azure DevOps Services'te önbelleğe alınmış eski bir kullanıcı belirteci olabilir. Azure aboneliklerinin liste ekranında kullanıcı belirtecinin güncel olmadığını belirten herhangi bir hata veya uyarı iletisi görüntülenmediğinden bu senaryo hemen açık değildir. Bu sorunu çözmek için aşağıdaki adımları uygulayarak Azure DevOps Services'da önbelleğe alınmış kullanıcı belirtecini el ile güncelleştirin:

    1. Azure DevOps Services oturumunu kapatın ve yeniden oturum açın. Bu eylem kullanıcı belirtecini yenileyebilir.
    2. Eski belirteçlerin kaldırıldığından emin olmak için tarayıcı önbelleğinizi ve tanımlama bilgilerinizi temizleyin.
    3. Azure DevOps portalından hizmet bağlantılarına gidin ve Azure bağlantısını yeniden doğrulayın. Bu adım, Azure DevOps'un yeni bir belirteç kullanmasını ister.

Abonelik listesinde bazı abonelikler eksik

  • Destek hesabı türleri ayarlarını değiştirme: Bu sorun, desteklenen hesap türleri ayarlarını değiştirerek ve uygulamanızı kimlerin kullanabileceğini tanımlayarak düzeltilebilir. Aşağıdaki adımları yapın:

    1. Azure Portal’ında oturum açın.
    2. Birden çok kiracıya erişiminiz varsa, bir uygulamayı kaydetmek istediğiniz kiracıyı seçmek için üst menüdeki Dizin + abonelik filtresini kullanın.

    Azure portalında dizin ve abonelikler simgesini gösteren ekran görüntüsü.

    1. Sol bölmeden Microsoft Entra Id'yi seçin.
    2. Uygulama kayıtları’nı seçin.
    3. Kayıtlı uygulamalar listesinden uygulamanızı seçin.
    4. Kimlik doğrulaması'nın altında Desteklenen hesap türleri'ne tıklayın.
    5. Desteklenen hesap türleri'nin altında, Bu uygulamayı kimler kullanabilir veya bu API'ye erişebilir? herhangi bir kuruluş dizinindeki Hesaplar'ı seçin.

    Desteklenen hesap türlerini gösteren ekran görüntüsü.

    1. Bitirdiğinizde Kaydet'i seçin.
  • Azure DevOps Services'te önbelleğe alınmış eski kullanıcı belirteci: Azure Resource Manager (ARM) hizmet bağlantısı oluşturduğunuzda Azure aboneliğiniz listelenmiyorsa, bunun nedeni Azure DevOps Services'te önbelleğe alınmış eski bir kullanıcı belirteci olabilir. Azure aboneliklerinin liste ekranında kullanıcı belirtecinin güncel olmadığını belirten herhangi bir hata veya uyarı iletisi görüntülenmediğinden bu senaryo hemen açık değildir. Bu sorunu çözmek için aşağıdaki adımları uygulayarak Azure DevOps Services'da önbelleğe alınmış kullanıcı belirtecini el ile güncelleştirin:

    1. Azure DevOps Services oturumunu kapatın ve yeniden oturum açın. Bu eylem kullanıcı belirtecini yenileyebilir.
    2. Eski belirteçlerin kaldırıldığından emin olmak için tarayıcı önbelleğinizi ve tanımlama bilgilerinizi temizleyin.
    3. Azure DevOps portalından hizmet bağlantılarına gidin ve Azure bağlantısını yeniden doğrulayın. Bu adım, Azure DevOps'un yeni bir belirteç kullanmasını ister.

Hizmet sorumlusu belirtecinin süresi doldu

Genellikle otomatik olarak oluşturulan hizmet sorumlularında ortaya çıkan bir sorun, hizmet sorumlusunun belirtecinin süresinin dolması ve yenilenmesi gerektiğidir. Ancak, belirteci yenilemeyle ilgili bir sorununuz varsa geçerli yenileme belirteci bulunamadı konusuna bakın.

Otomatik olarak oluşturulan hizmet sorumlusunun erişim belirtecini yenilemek için:

  1. Proje ayarları>Hizmet bağlantıları'na gidin ve değiştirmek istediğiniz hizmet bağlantısını seçin.

  2. Sağ üst köşedeki Düzenle'yi ve ardından Doğrula'yı seçin.

  3. Kaydet'i seçin.

Hizmet sorumlunuzun belirteci artık üç ay daha yenilenir.

Not

Hizmet sorumlusunun belirtecinin süresi dolmamış olsa bile bu işlem kullanılabilir.

Hizmet sorumlusu istemci kimliği kullanılarak JWT alınamadı

Bu sorun, süresi dolmuş bir gizli diziye sahip bir hizmet bağlantısını doğrulamaya çalıştığınızda oluşur.

Bu sorunu çözmek için:

  1. Proje ayarları>Hizmet bağlantıları'na gidin ve değiştirmek istediğiniz hizmet bağlantısını seçin.

  2. Sağ üst köşedeki Düzenle'yi seçin ve ardından hizmet bağlantınızda herhangi bir değişiklik yapın. En kolay ve önerilen değişiklik bir açıklama eklemektir.

  3. Hizmet bağlantısını kaydetmek için Kaydet'i seçin.

    Not

    Kaydet'i seçin. Bu adımda hizmet bağlantısını doğrulamayı denemeyin.

  4. Hizmet bağlantısı düzenleme penceresinden çıkın ve hizmet bağlantıları sayfasını yenileyin.

  5. Sağ üst köşedeki Düzenle'yi ve ardından Doğrula'yı seçin.

  6. Hizmet bağlantınızı kaydetmek için Kaydet'i seçin.

Azure aboneliği önceki görev çıkışından geçirilmiyor

Azure aboneliğinizi yayın işlem hattınız için dinamik olarak ayarladığınızda ve önceki bir görevden çıkış değişkenini kullanmak istediğinizde, bu sorunla karşılaşabilirsiniz.

Sorunu çözmek için değerlerin işlem hattınızın değişkenler bölümünde tanımlandığından emin olun. Ardından bu değişkeni işlem hattınızın görevleri arasında geçirebilirsiniz.

Hangi kimlik doğrulama mekanizmaları desteklenir? Yönetilen kimlikler nasıl çalışır?

Azure Resource Manager hizmet bağlantısı, Hizmet Sorumlusu Kimlik Doğrulaması (SPA) veya yönetilen kimlik doğrulaması kullanarak bir Azure aboneliğine bağlanabilir. Azure kaynakları için yönetilen kimlikler, Azure hizmetlerine Microsoft Entra ID üzerinde otomatik olarak yönetilen bir kimlik sağlar. Kodda veya hizmet bağlantısında kimlik bilgilerini kalıcı hale getirmek zorunda kalmadan Microsoft Entra kimlik doğrulamasını destekleyen herhangi bir hizmette kimlik doğrulaması yapmak için bu kimliği kullanabilirsiniz.

Sanal makinelerin yönetilen kimlikleri hakkında bilgi edinmek için bkz . Rol atama.

Not

Yönetilen kimlikler Microsoft tarafından barındırılan aracılarda desteklenmez. Bu senaryoda, Azure VM'de şirket içinde barındırılan bir aracı ayarlamanız ve bu VM için yönetilen kimlik yapılandırmanız gerekir.