Azure rol tabanlı erişim denetimi (RBAC) ve Cihaz Güncelleştirmesi

Cihaz Güncelleştirmesi, kullanıcılar ve hizmet API'leri için kimlik doğrulaması ve yetkilendirme sağlamak için Azure RBAC kullanır. Diğer kullanıcıların ve uygulamaların Cihaz Güncelleştirmesi'ne erişebilmesi için kullanıcılara veya uygulamalara bu kaynağa erişim izni verilmesi gerekir. Güncelleştirmeleri başarıyla dağıtmak ve cihazlarınızı yönetmek için Azure Cihaz Güncelleştirmesi hizmet sorumlusuna erişimi yapılandırmak da gerekir.

Erişim denetimi rollerini yapılandırma

Cihaz Güncelleştirmesi tarafından desteklenen roller şunlardır:

Rol Adı Tanım
Cihaz Güncelleştirme Yönetici istrator Tüm Cihaz Güncelleştirme kaynaklarına erişimi vardır
Cihaz Güncelleştirme Okuyucusu Tüm güncelleştirmeleri ve dağıtımları görüntüleyebilir
Cihaz Güncelleştirme İçeriği Yönetici Istrator Güncelleştirmeleri görüntüleyebilir, içeri aktarabilir ve silebilir
Cihaz Güncelleştirme İçerik Okuyucusu Güncelleştirmeleri görüntüleyebilir
Cihaz Güncelleştirme Dağıtımları Yönetici istrator Cihazlara güncelleştirme dağıtımını yönetebilir
Cihaz Güncelleştirme Dağıtımları Okuyucusu Cihazlara yapılan güncelleştirme dağıtımlarını görüntüleyebilir

Doğru erişim düzeyini sağlamak için rollerin birleşimi kullanılabilir. Örneğin, bir geliştirici Cihaz Güncelleştirme İçeriği Yönetici istrator rolünü kullanarak güncelleştirmeleri içeri aktarabilir ve yönetebilir, ancak bir güncelleştirmenin ilerleme durumunu görüntülemek için Cihaz Güncelleştirme Dağıtımları Okuyucusu rolüne ihtiyacı vardır. Buna karşılık, Cihaz Güncelleştirme Okuyucusu rolüne sahip bir çözüm operatörü tüm güncelleştirmeleri görüntüleyebilir, ancak cihazlara belirli bir güncelleştirmeyi dağıtmak için Cihaz Güncelleştirme Dağıtımları Yönetici istrator rolünü kullanması gerekir.

IoT Hub'da Azure Cihaz Güncelleştirmesi hizmet sorumlusu için erişimi yapılandırma

IoT Hub için Cihaz Güncelleştirmesi, dağıtımlar için IoT Hub ile iletişim kurar ve güncelleştirmeleri uygun ölçekte yönetir. Cihaz Güncelleştirmesi'nin bunu yapabilmesi için kullanıcıların IoT Hub izinlerinde Azure Cihaz Güncelleştirme Hizmet Sorumlusu için IoT Hub Veri Katkıda Bulunanı erişimini ayarlamaları gerekir.

Bu izinler ayarlanmadıysa dağıtım, cihaz ve güncelleştirme yönetimi ve tanılama eylemlerine izin verilmez. Engellenecek işlemler şunları içerir:

  • Dağıtım Oluştur
  • Dağıtımı İptal Et
  • Dağıtımı Yeniden Dene
  • Cihazı Al

İzin IoT Hub Erişim Denetimi'nden (IAM) ayarlanabilir. Bağlı IoT hub'ında Azure Cihaz güncelleştirme hizmet sorumlusu için Erişimi Yapılandırma bölümüne bakın

Cihaz Güncelleştirmesi REST API'leri için kimlik doğrulaması

Cihaz Güncelleştirmesi, REST API'lerine kimlik doğrulaması için Microsoft Entra Kimliğini kullanır. Başlamak için bir istemci uygulaması oluşturup yapılandırmanız gerekir.

İstemci Microsoft Entra uygulaması oluşturma

Bir uygulamayı veya hizmeti Microsoft Entra Id ile tümleştirmek için, önce bir istemci uygulamasını Microsoft Entra Id ile kaydedin. İstemci uygulaması kurulumu, ihtiyacınız olan yetkilendirme akışına (kullanıcılar, uygulamalar veya yönetilen kimlikler) bağlı olarak değişir. Örneğin, cihaz güncelleştirmesini çağırmak için:

  • Mobil veya masaüstü uygulaması, Yeniden Yönlendirme URI'sine ile https://login.microsoftonline.com/common/oauth2/nativeclient Mobil ve masaüstü uygulamaları platformu ekleyin.
  • Örtük oturum açma özellikli web sitesi, Web platformu ekleyin ve Erişim belirteçleri (örtük akışlar için kullanılır) öğesini seçin.

İzinleri yapılandırma

Ardından, uygulamanıza Cihaz Güncelleştirmesi'ni çağırma izinleri ekleyin:

  1. Uygulamanızın API izinleri sayfasına gidin ve İzin ekle'yi seçin.
  2. Kuruluşumun kullandığı API'lere gidin ve Azure Cihaz Güncelleştirmesi'ni arayın.
  3. user_impersonation izni seçin ve İzin ekle'yi seçin.

Yetkilendirme belirteci isteme

Cihaz Güncelleştirmesi REST API'sinin istek üst bilgisinde bir OAuth 2.0 yetkilendirme belirteci gerekir. Aşağıdaki bölümlerde yetkilendirme belirteci istemenin bazı örnekleri gösterilmektedir.

Azure CLI’yı kullanma

az login
az account get-access-token --resource 'https://api.adu.microsoft.com/'

PowerShell MSAL Kitaplığını Kullanma

MSAL.PS PowerShell modülü, .NET için Microsoft Kimlik Doğrulama Kitaplığı (MSAL .NET) üzerindeki bir sarmalayıcıdır. Çeşitli kimlik doğrulama yöntemlerini destekler.

Kullanıcı kimlik bilgilerini kullanma:

$clientId = '<app_id>'
$tenantId = '<tenant_id>'
$authority = "https://login.microsoftonline.com/$tenantId/v2.0"
$Scope = 'https://api.adu.microsoft.com/user_impersonation'

Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope

Cihaz koduyla kullanıcı kimlik bilgilerini kullanma:

$clientId = '<app_id>’
$tenantId = '<tenant_id>’
$authority = "https://login.microsoftonline.com/$tenantId/v2.0"
$Scope = 'https://api.adu.microsoft.com/user_impersonation'

Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope -Interactive -DeviceCode

Uygulama kimlik bilgilerini kullanma:

$clientId = '<app_id>’
$tenantId = '<tenant_id>’
$cert = '<client_certificate>'
$authority = "https://login.microsoftonline.com/$tenantId/v2.0"
$Scope = 'https://api.adu.microsoft.com/.default'

Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope -ClientCertificate $cert

Yönetilen kimlikler için destek

Yönetilen kimlikler, Azure hizmetlerine Microsoft Entra Id'de güvenli bir şekilde otomatik olarak yönetilen bir kimlik sağlar. Bu, bir kimlik sağlayarak geliştiricilerin kimlik bilgilerini yönetme gereksinimlerini ortadan kaldırır. IoT Hub için Cihaz Güncelleştirmesi, sistem tarafından atanan yönetilen kimlikleri destekler.

Sistem tarafından atanan yönetilen kimlik

Azure portalında sistem tarafından atanan yönetilen kimliği eklemek ve kaldırmak için:

  1. Azure portalında oturum açın ve ioT Hub hesabı için istediğiniz Cihaz Güncelleştirmesi'ne gidin.
  2. IoT Hub için Cihaz Güncelleştirmesi portalınızda Kimlik'e gidin
  3. IoT Hub portalınızda Kimlik'e gidin
  4. Sistem tarafından atanan sekmesi altında Açık'ı seçin ve Kaydet'e tıklayın.

IoT hub hesabı için Cihaz Güncelleştirmesi'nden sistem tarafından atanan yönetilen kimliği kaldırmak için Kapalı'yı seçin ve Kaydet'e tıklayın.

Sonraki Adımlar