REST API çağrılarını kullanarak sanal makine ölçek kümesinde Azure kaynakları için yönetilen kimlikleri yapılandırma
Azure kaynakları için yönetilen kimlikler, Azure hizmetlerine Microsoft Entra Id'de otomatik olarak yönetilen bir sistem kimliği sağlar. Bu kimliği kullanarak, Microsoft Entra kimlik doğrulamasını destekleyen tüm hizmetlerde kodunuzda kimlik bilgileri bulunmasına gerek kalmadan kimlik doğrulaması yapabilirsiniz.
Bu makalede, Azure Resource Manager REST uç noktasına çağrı yapmak için CURL kullanarak, bir sanal makine ölçek kümesinde Azure kaynakları işlemleri için aşağıdaki yönetilen kimlikleri gerçekleştirmeyi öğreneceksiniz:
- Azure sanal makine ölçek kümesinde sistem tarafından atanan yönetilen kimliği etkinleştirme ve devre dışı bırakma
- Azure sanal makine ölçek kümesinde kullanıcı tarafından atanan yönetilen kimliği ekleme ve kaldırma
Henüz bir Azure hesabınız yoksa, devam etmeden önce ücretsiz bir hesaba kaydolun.
Önkoşullar
Azure kaynakları için yönetilen kimlikleri bilmiyorsanız bkz . Azure kaynakları için yönetilen kimlikler nelerdir?. Sistem tarafından atanan ve kullanıcı tarafından atanan yönetilen kimlik türleri hakkında bilgi edinmek için bkz . Yönetilen kimlik türleri.
Bu makaledeki yönetim işlemlerini gerçekleştirmek için hesabınız aşağıdaki Azure rol atamalarına ihtiyaç duyar:
Kullanıcı tarafından atanan yönetilen kimlik oluşturmak için Yönetilen Kimlik Katkıda Bulunanı rolü.
Dekont
Ek Microsoft Entra dizin rolü ataması gerekmez.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'de Bash için hızlı başlangıç.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz . Docker kapsayıcısında Azure CLI'yi çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz . Azure CLI ile oturum açma.
İ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.
Yüklü sürümü ve bağımlı kitaplıkları 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.
Sistem tarafından atanan yönetilen kimlik
Bu bölümde, Azure Resource Manager REST uç noktasına çağrı yapmak için CURL kullanarak sanal makine ölçek kümesinde sistem tarafından atanan yönetilen kimliği etkinleştirmeyi ve devre dışı bırakmayı öğreneceksiniz.
Sanal makine ölçek kümesi oluşturulurken sistem tarafından atanan yönetilen kimliği etkinleştirme
Sistem tarafından atanan yönetilen kimliğin etkinleştirildiği bir sanal makine ölçek kümesi oluşturmak için, sistem tarafından atanan yönetilen kimlik türü değeriyle Resource Manager uç noktasını çağırmak üzere CURL kullanmak üzere bir sanal makine ölçek kümesi oluşturmanız ve erişim belirteci almanız gerekir.
az group create komutunu kullanarak sanal makine ölçek kümenizin ve ilgili kaynaklarının kapsaması ve dağıtımı için bir kaynak grubu oluşturun. Bunun yerine kullanmak istediğiniz bir kaynak grubunuz varsa, bu adımı atlayabilirsiniz:
az group create --name myResourceGroup --location westus
Sanal makine ölçek kümeniz için bir ağ arabirimi oluşturun:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Sistem tarafından atanan yönetilen kimlikle sanal makine ölçek kümenizi oluşturmak için Yetkilendirme üst bilgisindeki bir sonraki adımda kullanacağınız Taşıyıcı erişim belirtecini alın.
az account get-access-token
Azure Cloud Shell'i kullanarak AZURE Resource Manager REST uç noktasını çağırmak için CURL kullanarak bir sanal makine ölçek kümesi oluşturun. Aşağıdaki örnek, myResourceGroup içinde, istek gövdesinde değeriyle
"identity":{"type":"SystemAssigned"}
tanımlandığı şekilde sistem tarafından atanan yönetilen kimlikle myVMSS adlı bir sanal makine ölçek kümesi oluşturur. değerini bir Taşıyıcı erişim belirteci istediğinizde önceki adımda aldığınız değerle ve<SUBSCRIPTION ID>
ortamınız için uygun değerle değiştirin<ACCESS TOKEN>
.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"location":"eastus","identity":{"type":"SystemAssigned"},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "sku":{ "tier":"Standard", "capacity":3, "name":"Standard_D1_v2" }, "location":"eastus", "identity":{ "type":"SystemAssigned" }, "properties":{ "overprovision":true, "virtualMachineProfile":{ "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "createOption":"FromImage" } }, "osProfile":{ "computerNamePrefix":"myVMSS", "adminUsername":"azureuser", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaceConfigurations":[ { "name":"myVMSS", "properties":{ "primary":true, "enableIPForwarding":true, "ipConfigurations":[ { "name":"myVMSS", "properties":{ "subnet":{ "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" } } } ] } } ] } }, "upgradePolicy":{ "mode":"Manual" } } }
Mevcut bir sanal makine ölçek kümesinde sistem tarafından atanan yönetilen kimliği etkinleştirme
Mevcut bir sanal makine ölçek kümesinde sistem tarafından atanan yönetilen kimliği etkinleştirmek için bir erişim belirteci almanız ve ardından kimlik türünü güncelleştirmek üzere Resource Manager REST uç noktasını çağırmak için CURL kullanmanız gerekir.
Sistem tarafından atanan yönetilen kimlikle sanal makine ölçek kümenizi oluşturmak için Yetkilendirme üst bilgisindeki bir sonraki adımda kullanacağınız Taşıyıcı erişim belirtecini alın.
az account get-access-token
İstek gövdesinde myVMSS adlı bir sanal makine ölçek kümesinin değeriyle
{"identity":{"type":"SystemAssigned"}
tanımlandığı şekilde sanal makine ölçek kümenizde sistem tarafından atanan yönetilen kimliği etkinleştirmek üzere Azure Resource Manager REST uç noktasını çağırmak için aşağıdaki CURL komutunu kullanın. değerini bir Taşıyıcı erişim belirteci istediğinizde önceki adımda aldığınız değerle ve<SUBSCRIPTION ID>
ortamınız için uygun değerle değiştirin<ACCESS TOKEN>
.Önemli
Sanal makine ölçek kümesine atanan mevcut kullanıcı tarafından atanan yönetilen kimlikleri silmediğinizden emin olmak için şu CURL komutunu kullanarak kullanıcı tarafından atanan yönetilen kimlikleri listelemeniz gerekir:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
. Yanıttaki değerdeidentity
tanımlandığı gibi sanal makine ölçek kümesine kullanıcı tarafından atanan yönetilen kimlikleriniz varsa, sanal makine ölçek kümenizde sistem tarafından atanan yönetilen kimliği etkinleştirirken kullanıcı tarafından atanan yönetilen kimlikleri nasıl tutabileceğinizi gösteren 3. adıma geçin.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned" } }
Kullanıcı tarafından atanan mevcut yönetilen kimliklerle bir sanal makine ölçek kümesinde sistem tarafından atanan yönetilen kimliği etkinleştirmek için değere
type
eklemenizSystemAssigned
gerekir.Örneğin, sanal makine ölçek kümenizde kullanıcı tarafından atanan yönetilen kimlikler
ID1
varsa veID2
sanal makine ölçek kümesine sistem tarafından atanan yönetilen kimlik eklemek istiyorsanız aşağıdaki CURL çağrısını kullanın. ve<SUBSCRIPTION ID>
değerlerini ortamınıza uygun değerlerle değiştirin<ACCESS TOKEN>
.API sürümü
2018-06-01
, kullanıcı tarafından atanan yönetilen kimlikleriuserAssignedIdentities
, API sürümünde2017-12-01
kullanılan dizi biçimindeki değerdenidentityIds
farklı olarak sözlük biçiminde depolar.API SÜRÜM 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned,UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{ }, "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{ } } } }
API SÜRÜM 2017-12-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned,UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1", "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2" ] } }
Sanal makine ölçek kümesinden sistem tarafından atanan yönetilen kimliği devre dışı bırakma
Mevcut bir sanal makine ölçek kümesinde sistem tarafından atanan bir kimliği devre dışı bırakmak için bir erişim belirteci almanız ve ardından kimlik türünü None
olarak güncelleştirmek üzere Resource Manager REST uç noktasını çağırmak için CURL kullanmanız gerekir.
Sistem tarafından atanan yönetilen kimlikle sanal makine ölçek kümenizi oluşturmak için Yetkilendirme üst bilgisindeki bir sonraki adımda kullanacağınız Taşıyıcı erişim belirtecini alın.
az account get-access-token
Sistem tarafından atanan yönetilen kimliği devre dışı bırakmak üzere Azure Resource Manager REST uç noktasını çağırmak için CURL kullanarak sanal makine ölçek kümesini güncelleştirin. Aşağıdaki örnek, istek gövdesinde tanımlanan sistem tarafından atanan yönetilen kimliği myVMSS adlı bir sanal makine ölçek kümesinden alınan değerle
{"identity":{"type":"None"}}
devre dışı bırakır. değerini bir Taşıyıcı erişim belirteci istediğinizde önceki adımda aldığınız değerle ve<SUBSCRIPTION ID>
ortamınız için uygun değerle değiştirin<ACCESS TOKEN>
.Önemli
Sanal makine ölçek kümesine atanan mevcut kullanıcı tarafından atanan yönetilen kimlikleri silmediğinizden emin olmak için şu CURL komutunu kullanarak kullanıcı tarafından atanan yönetilen kimlikleri listelemeniz gerekir:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
. Sanal makine ölçek kümesine kullanıcı tarafından atanan yönetilen bir kimliğiniz varsa, sanal makine ölçek kümenizden sistem tarafından atanan yönetilen kimliği kaldırırken kullanıcı tarafından atanan yönetilen kimlikleri nasıl koruyabileceğinizi gösteren 3. adıma geçin.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"None" } }
Kullanıcı tarafından atanan yönetilen kimlikleri olan bir sanal makine ölçek kümesinden sistem tarafından atanan yönetilen kimliği kaldırmak için, API sürüm 2018-06-01 kullanıyorsanız değeri ve
userAssignedIdentities
sözlük değerlerini koruyarakUserAssigned
değerden{"identity":{"type:" "}}
kaldırınSystemAssigned
. API 2017-12-01 veya önceki bir sürümünü kullanıyorsanız diziyiidentityIds
koruyun.
Kullanıcı tarafından atanan yönetilen kimlik
Bu bölümde, Azure Resource Manager REST uç noktasına çağrı yapmak için CURL kullanarak sanal makine ölçek kümesinde kullanıcı tarafından atanan yönetilen kimliği eklemeyi ve kaldırmayı öğreneceksiniz.
Sanal makine ölçek kümesi oluşturulurken kullanıcı tarafından atanan yönetilen kimlik atama
Sistem tarafından atanan yönetilen kimlikle sanal makine ölçek kümenizi oluşturmak için Yetkilendirme üst bilgisindeki bir sonraki adımda kullanacağınız Taşıyıcı erişim belirtecini alın.
az account get-access-token
Sanal makine ölçek kümeniz için bir ağ arabirimi oluşturun:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Sistem tarafından atanan yönetilen kimlikle sanal makine ölçek kümenizi oluşturmak için Yetkilendirme üst bilgisindeki bir sonraki adımda kullanacağınız Taşıyıcı erişim belirtecini alın.
az account get-access-token
Burada bulunan yönergeleri kullanarak kullanıcı tarafından atanan bir yönetilen kimlik oluşturun: Kullanıcı tarafından atanan yönetilen kimlik oluşturma.
Azure Resource Manager REST uç noktasını çağırmak için CURL kullanarak bir sanal makine ölçek kümesi oluşturun. Aşağıdaki örnek, kullanıcı tarafından atanan yönetilen kimliğe
ID1
sahip myResourceGroup kaynak grubunda, istek gövdesinde değeriyle"identity":{"type":"UserAssigned"}
tanımlandığı gibi myVMSS adlı bir sanal makine ölçek kümesi oluşturur. değerini bir Taşıyıcı erişim belirteci istediğinizde önceki adımda aldığınız değerle ve<SUBSCRIPTION ID>
ortamınız için uygun değerle değiştirin<ACCESS TOKEN>
.API SÜRÜM 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"location":"eastus","identity":{"type":"UserAssigned","userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{}}},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "sku":{ "tier":"Standard", "capacity":3, "name":"Standard_D1_v2" }, "location":"eastus", "identity":{ "type":"UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{ } } }, "properties":{ "overprovision":true, "virtualMachineProfile":{ "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "createOption":"FromImage" } }, "osProfile":{ "computerNamePrefix":"myVMSS", "adminUsername":"azureuser", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaceConfigurations":[ { "name":"myVMSS", "properties":{ "primary":true, "enableIPForwarding":true, "ipConfigurations":[ { "name":"myVMSS", "properties":{ "subnet":{ "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" } } } ] } } ] } }, "upgradePolicy":{ "mode":"Manual" } } }
API SÜRÜM 2017-12-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"location":"eastus","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "sku":{ "tier":"Standard", "capacity":3, "name":"Standard_D1_v2" }, "location":"eastus", "identity":{ "type":"UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] }, "properties":{ "overprovision":true, "virtualMachineProfile":{ "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "createOption":"FromImage" } }, "osProfile":{ "computerNamePrefix":"myVMSS", "adminUsername":"azureuser", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaceConfigurations":[ { "name":"myVMSS", "properties":{ "primary":true, "enableIPForwarding":true, "ipConfigurations":[ { "name":"myVMSS", "properties":{ "subnet":{ "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" } } } ] } } ] } }, "upgradePolicy":{ "mode":"Manual" } } }
Mevcut bir Azure sanal makine ölçek kümesine kullanıcı tarafından atanan yönetilen kimlik atama
Sistem tarafından atanan yönetilen kimlikle sanal makine ölçek kümenizi oluşturmak için Yetkilendirme üst bilgisindeki bir sonraki adımda kullanacağınız Taşıyıcı erişim belirtecini alın.
az account get-access-token
Burada bulunan Kullanıcı tarafından atanan yönetilen kimlik oluşturma yönergelerini kullanarak kullanıcı tarafından atanan bir yönetilen kimlik oluşturun.
Sanal makine ölçek kümesine atanan mevcut kullanıcı veya sistem tarafından atanan yönetilen kimlikleri silmediğinizden emin olmak için aşağıdaki CURL komutunu kullanarak sanal makine ölçek kümesine atanan kimlik türlerini listelemeniz gerekir. Sanal makine ölçek kümesine atanmış yönetilen kimlikleriniz varsa, bunlar değerde
identity
listelenir.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.Sanal makine ölçek kümenize atanmış kullanıcı veya sistem tarafından atanmış yönetilen kimlikleriniz yoksa, sanal makine ölçek kümesine kullanıcı tarafından atanan ilk yönetilen kimliği atamak üzere Azure Resource Manager REST uç noktasını çağırmak için aşağıdaki CURL komutunu kullanın. Sanal makine ölçek kümesine atanmış bir kullanıcı veya sistem tarafından atanan yönetilen kimlikleriniz varsa, bir sanal makine ölçek kümesine kullanıcı tarafından atanan birden çok yönetilen kimliği ekleme ve sistem tarafından atanan yönetilen kimliği koruma adımlarını gösteren 5. adıma geçin.
Aşağıdaki örnek,
ID1
myResourceGroup kaynak grubundaki myVMSS adlı bir sanal makine ölçek kümesine kullanıcı tarafından atanan bir yönetilen kimlik atar. değerini bir Taşıyıcı erişim belirteci istediğinizde önceki adımda aldığınız değerle ve<SUBSCRIPTION ID>
ortamınız için uygun değerle değiştirin<ACCESS TOKEN>
.API SÜRÜM 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-12-01' -X PATCH -d '{"identity":{"type":"userAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-12-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"userAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{ } } } }
API SÜRÜM 2017-12-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"userAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"userAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
Sanal makine ölçek kümenize kullanıcı tarafından atanmış veya sistem tarafından atanmış bir yönetilen kimliğiniz varsa:
API SÜRÜM 2018-06-01
Kullanıcı tarafından atanan yönetilen kimliği
userAssignedIdentities
sözlük değerine ekleyin.Örneğin, sistem tarafından atanan yönetilen kimliğiniz ve şu anda sanal makine ölçeğinize atanmış olan kullanıcı tarafından atanan yönetilen kimliğiniz
ID1
varsa ve buna kullanıcı tarafından atanan yönetilen kimliğiID2
eklemek istiyorsanız:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{ }, "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{ } } } }
API SÜRÜM 2017-12-01
Kullanıcı tarafından atanan yeni yönetilen kimliği eklerken dizi değerinde tutmak istediğiniz kullanıcı tarafından atanan yönetilen kimlikleri koruyun
identityIds
.Örneğin, sistem tarafından atanan kimliğiniz ve şu anda sanal makine ölçek kümenize atanmış kullanıcı tarafından atanan yönetilen kimliğiniz
ID1
varsa ve buna kullanıcı tarafından atanan yönetilen kimliğiID2
eklemek istiyorsanız:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned, UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1", "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2" ] } }
Sanal makine ölçek kümesinden kullanıcı tarafından atanan yönetilen kimliği kaldırma
Sistem tarafından atanan yönetilen kimlikle sanal makine ölçek kümenizi oluşturmak için Yetkilendirme üst bilgisindeki bir sonraki adımda kullanacağınız Taşıyıcı erişim belirtecini alın.
az account get-access-token
Sanal makine ölçek kümesine atanmasını istediğiniz mevcut kullanıcı tarafından atanan yönetilen kimlikleri silmediğinizden veya sistem tarafından atanan yönetilen kimliği kaldırmadığınızdan emin olmak için, aşağıdaki CURL komutunu kullanarak yönetilen kimlikleri listelemeniz gerekir:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.VM'ye atanmış yönetilen kimlikleriniz varsa, bunlar yanıtta değerde
identity
listelenir.Örneğin, kullanıcı tarafından atanan yönetilen kimlikleriniz
ID1
varsa veID2
sanal makine ölçek kümenize atanmışsanız ve yalnızca sistem tarafından atanan yönetilen kimliğin atanmasını ve korunmasını istiyorsanızID1
:API SÜRÜM 2018-06-01
Kaldırmak istediğiniz kullanıcı tarafından atanan yönetilen kimliğe ekleyin
null
:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null } } }
API SÜRÜM 2017-12-01
Yalnızca dizide tutmak istediğiniz kullanıcı tarafından atanan yönetilen kimlikleri
identityIds
koruyun:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli Bearer
bir erişim belirteci olarak ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned,UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
Sanal makine ölçek kümenizde hem sistem tarafından atanan hem de kullanıcı tarafından atanan yönetilen kimlikler varsa, aşağıdaki komutu kullanarak yalnızca sistem tarafından atanan kimlikleri kullanmaya geçerek kullanıcı tarafından atanan tüm yönetilen kimlikleri kaldırabilirsiniz:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi | Açıklama |
---|---|
İçerik Türü | Gerekli. application/json olarak ayarlayın. |
Yetkilendirme | Gerekli. Geçerli Bearer bir erişim belirteci olarak ayarlayın. |
İstek gövdesi
{
"identity":{
"type":"SystemAssigned"
}
}
Sanal makine ölçek kümenizde yalnızca kullanıcı tarafından atanan yönetilen kimlikler varsa ve bunların tümünü kaldırmak istiyorsanız aşağıdaki komutu kullanın:
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
İstek üst bilgileri
İstek üst bilgisi | Açıklama |
---|---|
İçerik Türü | Gerekli. application/json olarak ayarlayın. |
Yetkilendirme | Gerekli. Geçerli Bearer bir erişim belirteci olarak ayarlayın. |
İstek gövdesi
{
"identity":{
"type":"None"
}
}
Sonraki adımlar
REST kullanarak kullanıcı tarafından atanan yönetilen kimlikleri oluşturma, listeleme veya silme hakkında bilgi için bkz: