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 hizmetlerini kullanan otomatik araçlar, Azure kaynaklarının güvenli olduğundan emin olmak için her zaman kısıtlanmış izinlere sahip olmalıdır. Bu nedenle, Azure uygulamaların tam ayrıcalıklı bir kullanıcı olarak oturum açması yerine hizmet ilkeleri sunar. Azure hizmet sorumlusu, uygulamalar, barındırılan hizmetler ve otomatik araçlarla kullanılmak üzere oluşturulmuş bir kimliktir. Bu kimlik kaynaklara erişmek için kullanılır.
Bu eğitimde şunları öğreniyorsunuz:
- Hizmet sorumlusu oluşturma
- Hizmet sorumlusu ve parola kullanarak oturum açma
- Hizmet sorumlusu ve sertifika kullanarak oturum açma
- Hizmet sorumlusu rollerini yönet
- Hizmet sorumlusu kullanarak Azure kaynağı oluşturma
- Hizmet sorumlusu kimlik bilgilerini sıfırlama
Önkoşullar
- Bir abonelikte, bir hizmet sorumlusu oluşturmak için
User Access AdministratorveyaRole Based Access Control Administratorizinlerine veya daha yüksek izinlere sahip olmanız gerekir. Azure rol tabanlı erişim denetimi (Azure RBAC) için kullanılabilen rollerin listesi için bkz . Azure yerleşik rolleri.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz. Azure Cloud Shell'i kullanmaya başlama.
CLI referans komutlarını yerel olarak çalıştırmayı tercih ediyorsanız, Azure CLI'yi yükleyin. Windows veya macOS üzerinde çalışıyorsanız, Azure CLI'yi bir Docker konteynerinde çalıştırmayı düşünün. Daha fazla bilgi için Azure CLI'nin bir Docker konteynerında nasıl çalıştırılacağını inceleyin.
Yerel bir kurulum kullanıyorsanız, az login komutunu kullanarak Azure CLI'ye giriş yapın. Kimlik doğrulama işlemini tamamlamak için, terminalinizde görüntülenen adımları takip edin. Diğer oturum açma seçenekleri için bkz. Azure CLI kullanarak Azure'da kimlik doğrulaması.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma ve yönetme.
Yüklü olan sürümü ve bağımlı kütüphaneleri bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
Hizmet sorumlusu oluşturma
Hizmet sorumlusu oluşturmak için az ad sp create-for-rbac Azure CLI reference komutunu kullanın.
Bu örnekte parametre --name belirtilmez, bu nedenle zaman damgası içeren bir ad otomatik olarak oluşturulur.
Uyarı
Komut, az ad sp create-for-rbac başka bir nesne aynı görünen adı paylaşıyorsa mevcut bir uygulama veya servis prensibini değiştirebilir. Görünen adlar benzersiz değildir ve değişebilir, bu da kimlik bilgisi kaybına veya hatalı RBAC atamalarına neden olabilir. Bunun yerine benzersiz bir nesne kimliği veya uygulama kimliği kullanın.
az ad sp create-for-rbac
Çıkış konsolu:
{
"appId": "myAppId",
"displayName": "myServicePrincipalName",
"password": "myServicePrincipalPassword",
"tenant": "myTentantId"
}
Kaynak adlandırma kurallarına uygun değilseniz ve daha sonra yeni hizmet sorumlunuz için bir rol ve kapsam oluşturmayı planlıyorsanız, az ad sp create-for-rbac parametresiz komut kabul edilebilir bir çözümdür. Ancak, bir rol ve kapsam olmadan, yeni hizmet sorumlusunun kaynaklara erişimi yoktur. Sadece var.
Parametresiz bir hizmet sorumlusu oluşturduğunuzda şu adımları da tamamlayın:
- Sistem tarafından atanan parolanızı bir kez daha alamayacağınız için kaydedin. Parolayı kaybederseniz hizmet sorumlusu kimlik bilgilerini sıfırlama bölümünde açıklandığı gibi az ad sp credential reset komutunu kullanarak sıfırlayın.
- Yeni hizmet sorumlusunun rol atamasını, az role assignment create komutunu kullanarak, Hizmet sorumlusu rollerini yönetme bölümünde açıklandığı gibi ayarlayın.
Uyarı
Hesabınızın hizmet ana hesabı oluşturma izni yoksa, az ad sp create-for-rbac "İşlemi tamamlamak için yetkiler yetersiz" hata mesajını döndürür. Microsoft Entra yöneticinizle iletişime geçerek bir hizmet sorumlusu oluşturun.
Microsoft Entra ID dizininde "Kullanıcılar uygulama kaydedebilir" ayarının Hayır olarak ayarlandığı bir durumda, aşağıdaki Microsoft Entra ID yerleşik rollerinden birinin üyesi olmalısınız (şu eylemi içermelidir: veya microsoft.directory/applications/createAsOwner):
- Uygulama Geliştirici
- Uygulama Yöneticisi
- Bulut Uygulaması Yöneticisi
- Genel Yönetici
- Hibrit Kimlik Yöneticisi
Daha fazla bilgi için, Microsoft Entra ID'deki kullanıcı ayarları hakkında Uygulamaları kimlerin oluşturabileceğini kısıtla'ya bakın.
Rol ve kapsam ile hizmet ilkesi oluşturun
En iyi yöntem olarak, hizmet sorumlusu oluşturduğunuzda her zaman belirli bir --role ve --scopes atayın. Şu adımları izleyin:
Doğru rolü belirleyin.
Rol belirlerken her zaman en az ayrıcalık ilkesini kullanın. Örneğin, hizmet sorumlusunun
contributoryalnızca bir kaynak grubu içinde Azure depolamaya erişmesi gerekiyorsa, hizmet sorumlusuna abonelik için izin vermeyin. Depolama blobu veri katkıda bulunanı gibi bir uzman rolü düşünün. Azure RBAC'deki kullanılabilir rollerin tam listesi için bkz . Azure yerleşik rolleri.Scopes parametresi için bir değer alın.
Yeni hizmet sorumlusunun erişmesi gereken Azure kaynağının Kaynak Kimliğini bulun ve kopyalayın. Bu bilgiler genellikle her kaynağın Azure portalının Özellikler veya Uç Noktalar sayfasında bulunur. Burada yaygın
--scopesörnekler verilmiştir, ancak gerçek bir biçim ve değer için Kaynak Kimliğinize güvenebilirsiniz.Kapsam Örnek Abonelik /subscriptions/mySubscriptionIDKaynak grubu /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupNameSanal makine /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myVMnameDepolama hesabı dosya hizmeti /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Storage/storageAccounts/myStorageAccountName/fileServices/defaultVeri fabrikası /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.DataFactory/factories/myDataFactoryNameDiğer kapsam örnekleri için bkz . Azure RBAC kapsamını anlama.
Hizmet sorumlusunu oluşturun.
Bu örnekte, RG1 kaynak grubundaki tüm kaynaklar için okuyucu izinleriyle myServicePrincipalName1 adlı yeni bir hizmet sorumlusu oluşturulur.
# Bash script az ad sp create-for-rbac --name myServicePrincipalName1 \ --role reader \ --scopes /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG1--scopesparametresi, boşlukla ayrılmış kapsam listesini kabul eder. Bu örnekte, myRG1 kaynak grubundaki tüm kaynaklar için okuyucu izinleriyle myServicePrincipalName2 adlı yeni bir hizmet sorumlusu oluşturulur. Bu hizmet sorumlusuna myRG2'de bulunan myVM için okuyucu izinleri de verilir.# Bash script az ad sp create-for-rbac --name myServicePrincipalName2 \ --role reader \ --scopes /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG2/providers/Microsoft.Compute/virtualMachines/myVM
Yeni hizmet sorumlunuza çok az veya çok fazla izin vermenize karar verirseniz, hizmet sorumlusu rollerini yöneterek izinleri değiştirin.
Değişkenleri kullanarak hizmet sorumlusu oluşturma
Değişkenleri kullanarak bir hizmet sorumlusu da oluşturabilirsiniz:
# Bash script
let "randomIdentifier=$RANDOM*$RANDOM"
servicePrincipalName="msdocs-sp-$randomIdentifier"
roleName="azureRoleName"
subscriptionID=$(az account show --query id --output tsv)
# Verify the ID of the active subscription
echo "Using subscription ID $subscriptionID"
resourceGroup="myResourceGroupName"
echo "Creating SP for RBAC with name $servicePrincipalName, with role $roleName and in scopes /subscriptions/$subscriptionID/resourceGroups/$resourceGroup"
az ad sp create-for-rbac --name $servicePrincipalName \
--role $roleName \
--scopes /subscriptions/$subscriptionID/resourceGroups/$resourceGroup
Hizmet sorumlusu özelliklerinin tam listesini almak için az ad sp list komutunu kullanın ve Mevcut bir hizmet sorumlusunu alın.
Uyarı
komutunu kullanarak az ad sp create-for-rbac bir Azure hizmet sorumlusu oluşturduğunuzda, çıkışta korumanız gereken kimlik bilgileri bulunur. Bu kimlik bilgilerini kodunuza eklemediğinizden emin olun veya kaynak denetiminizdeki kimlik bilgilerini denetleyin. Alternatif olarak, kimlik bilgilerini kullanma gereksinimini önlemek için varsa yönetilen kimlikleri kullanmayı göz önünde bulundurun.
Sonraki Adımlar
Azure hizmet sorumlusu oluşturmayı öğrendiğinize göre, hizmet sorumlularını parola tabanlı kimlik doğrulamasıyla kullanmayı öğrenmek için sonraki adıma geçin.