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 kaynakları için yönetilen kimlikler, Azure hizmetlerine Microsoft Entra ID üzerinde otomatik olarak yönetilen bir kimlik 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.
Azure İlkesi tanımı ve ayrıntıları hakkında bilgi için bkz. Yönetilen kimlikleri atamak için Azure İlkesi kullanma (önizleme).
Bu makalede, Azure portalını kullanarak Azure Sanal Makinesi (VM) için sistem ve kullanıcı tarafından atanan yönetilen kimlikleri etkinleştirmeyi ve devre dışı bırakmayı öğreneceksiniz.
Önkoşullar
- Azure kaynakları için yönetilen kimlikleri bilmiyorsanız genel bakış bölümüne göz atın.
- Henüz bir Azure hesabınız yoksa, devam etmeden önce ücretsiz bir hesaba kaydolun.
Sistem tarafından atanan yönetilen kimlik
Bu bölümde, Azure portalını kullanarak VM için sistem tarafından atanan yönetilen kimliği etkinleştirmeyi ve devre dışı bırakmayı öğreneceksiniz.
VM oluşturma sırasında sistem tarafından yönetilen kimliği etkinleştirme
Oluşturma sırasında bir VM'de sistem tarafından atanan yönetilen kimliği etkinleştirmek için hesabınızın Sanal Makine Katılımcısı rol atamasına ihtiyacı vardır. Başka Microsoft Entra dizin rolü ataması gerekmez.
Windows sanal makinesi veya Linux sanal makinesioluştururken Yönetim sekmesini seçin.
Kimlik bölümünde Sistem tarafından atanan yönetilen kimlik etkinleştir onay kutusunu seçin.
Var olan bir VM'de sistem tarafından yönetilen kimliği etkinleştirme
Sistem tarafından atanan yönetilen kimliği, başlangıçta bu olmadan sağlanmış bir VM'de etkinleştirmek için hesabınızda Sanal Makine Katkıda Bulunanı rol atamasının olması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
VM'yi içeren Azure aboneliğiyle ilişkilendirilmiş bir hesabı kullanarak Azure portalında oturum açın.
İstediğiniz Sanal Makineye gidin ve Güvenlik bölümünde kimlik seçin.
Sistem atandı, Durum altında Açık'ı seçin ve ardından Kaydet'e tıklayın:
Vm'den sistem tarafından atanan yönetilen kimliği kaldırma
Sistem tarafından atanan yönetilen kimliği bir VM'den kaldırmak için hesabınızın Sanal Makine Katılımcısı rol atamasına ihtiyacı vardır. Başka Microsoft Entra dizin rolü ataması gerekmez.
Artık sistem tarafından atanan yönetilen kimliğe ihtiyaç olmayan bir Sanal Makineniz varsa:
VM'yi içeren Azure aboneliğiyle ilişkilendirilmiş bir hesabı kullanarak Azure portalında oturum açın.
İstediğiniz Sanal Makineye gidin ve Güvenlik bölümünde kimlik seçin.
Sistem atandı altında, Durum için Kapalı seçeneğini seçin ve ardından Kaydet'e tıklayın:
Kullanıcı atamalı yönetilen kimlik
Bu bölümde, Azure portalını kullanarak kullanıcı tarafından atanan yönetilen kimliği eklemeyi ve vm'den kaldırmayı öğreneceksiniz.
VM oluşturulurken kullanıcı tarafından atanan bir kimlik atanması
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınıza Sanal Makine Katkıda Bulunanı ve Yönetilen Kimlik Operatörü rol atamaları gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Şu anda Azure portalı, vm oluşturulurken kullanıcı tarafından atanan yönetilen kimlik atamayı desteklememektedir. önce bir Windows sanal makinesi veya Linux sanal makinesioluşturun, ardından vm'ye kullanıcı tarafından atanan yönetilen kimliği atayın.
Mevcut vm'ye kullanıcı tarafından atanan yönetilen kimlik atama
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınıza Sanal Makine Katkıda Bulunanı ve Yönetilen Kimlik Operatörü rol atamaları gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
VM'yi içeren Azure aboneliğiyle ilişkilendirilmiş bir hesabı kullanarak Azure portalında oturum açın.
İstenen VM'ye gidin ve Güvenlik>Kimliği, Kullanıcı tarafından atanan ve ardından +Ekleöğesine tıklayın. VM'ye eklemek istediğiniz kullanıcı tarafından atanan kimliğe tıklayın ve ardından Ekle'ye tıklayın.
Daha önce oluşturulmuş kullanıcı tarafından atanan yönetilen kimlik listeden seçin.
Vm'den kullanıcı tarafından atanan yönetilen kimliği kaldırma
Vm'den kullanıcı tarafından atanan bir kimliği kaldırmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
VM'yi içeren Azure aboneliğiyle ilişkilendirilmiş bir hesabı kullanarak Azure portalında oturum açın.
İstediğiniz VM'ye gidin ve Güvenlik>Kimliğiöğesini Kullanıcı tarafından atanan, silmek istediğiniz kullanıcı tarafından atanan yönetilen kimliğin adını seçin ve ardından Kaldır'a tıklayın (onay bölmesinde Evet tıklayın).
Sonraki adımlar
- Azure portalını kullanarak bir Azure VM'sinin yönetilen kimliğine başka bir Azure kaynağına erişim verin.
Bu makalede, Azure CLI'yı kullanarak azure vm'sinde Azure kaynakları işlemleri için aşağıdaki yönetilen kimlikleri gerçekleştirmeyi öğreneceksiniz:
- Azure VM'de sistem tarafından atanan yönetilen kimliği etkinleştirme ve devre dışı bırakma
- Azure VM'de 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.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.
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 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ü 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 CLI kullanarak Bir Azure VM'de sistem tarafından atanan yönetilen kimliği etkinleştirmeyi ve devre dışı bırakmayı öğreneceksiniz.
Azure VM oluşturulurken sistem tarafından atanan yönetilen kimliği etkinleştirme
Sistem tarafından atanan yönetilen kimliğin etkinleştirildiği bir Azure VM oluşturmak için hesabınızın Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
VM'nizin ve onunla ilgili kaynakların kapsaması ve dağıtımı için, az group create komutunu kullanarak 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
az vm create kullanarak VM oluşturun. Aşağıdaki örnek, parametresi tarafından talep edilen, belirtilen
--assign-identity
ve--role
ile sistem tarafından atanan yönetilen kimliğe sahip--scope
adlı bir VM oluşturur.--admin-username
ve--admin-password
parametreleri, sanal makinede oturum açmak için yönetici hesabının kullanıcı adı ve parolasını belirtir. Bu değerleri ortamınıza uyacak şekilde güncelleştirin:az vm create --resource-group myResourceGroup --name myVM --image win2016datacenter --generate-ssh-keys --assign-identity --role contributor --scope /Subscriptions/mySubscriptionId/resourceGroups/myResourceGroup --admin-username azureuser --admin-password myPassword12
Mevcut Bir Azure VM'de sistem tarafından atanan yönetilen kimliği etkinleştirme
Vm'de sistem tarafından atanan yönetilen kimliği etkinleştirmek için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Azure CLI'yi yerel bir konsolda kullanıyorsanız, önce az login kullanarak Azure'da oturum açın. VM'yi içeren Azure aboneliğiyle ilişkilendirilmiş bir hesap kullanın.
az login
Az vm identity assign komutunu kullanarak
identity assign
mevcut bir VM'ye sistem tarafından atanan kimliği etkinleştirin:az vm identity assign -g myResourceGroup -n myVm
Azure VM'den sistem tarafından atanan kimliği devre dışı bırakma
Vm'de sistem tarafından atanan yönetilen kimliği devre dışı bırakmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Artık sistem tarafından atanan kimliğe ihtiyacı olmayan ancak yine de kullanıcı tarafından atanan kimliklere ihtiyaç duyan bir Sanal Makineniz varsa aşağıdaki komutu kullanın:
az vm update -n myVM -g myResourceGroup --set identity.type='UserAssigned'
Artık sistem tarafından atanan kimliğe ihtiyacı olmayan ve kullanıcı tarafından atanan kimlikleri olmayan bir sanal makineniz varsa aşağıdaki komutu kullanın:
Uyarı
Değer none
büyük/küçük harfe duyarlıdır. Küçük harfle yazılmalıdır.
az vm update -n myVM -g myResourceGroup --set identity.type="none"
Kullanıcı atamalı yönetilen kimlik
Bu bölümde, Azure CLI kullanarak Azure VM'de kullanıcı tarafından atanan yönetilen kimliği eklemeyi ve kaldırmayı öğreneceksiniz. Kullanıcı tarafından atanan yönetilen kimliğinizi VM'nizden farklı bir RG'de oluşturursanız. Vm'nize atamak için yönetilen kimliğinizin URL'sini kullanmanız gerekir. Örneğin:
--identities "/subscriptions/<SUBID>/resourcegroups/<RESROURCEGROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER_ASSIGNED_ID_NAME>"
Azure VM oluşturma sırasında kullanıcı tarafından atanan yönetilen kimlik atayın
Oluşturma sırasında bir VM'ye kullanıcı tarafından atanan bir kimlik atamak için, hesabınızın Sanal Makine Katkıda Bulunan ve Yönetilen Kimlik Operatörü rol atamalarına ihtiyacı vardır. Başka Microsoft Entra dizin rolü ataması gerekmez.
Kullanmak istediğiniz bir kaynak grubunuz varsa bu adımı atlayabilirsiniz. az group create komutunu kullanarak, kullanıcı tarafından atanan yönetilen kimliğinizin saklanması ve dağıtımı için bir kaynak grubu oluşturun.
<RESOURCE GROUP>
ve<LOCATION>
parametre değerlerini kendi değerlerinizle değiştirmeyi unutmayın. :az group create --name <RESOURCE GROUP> --location <LOCATION>
Kullanıcı tarafından atanan yönetilen kimliği oluşturmak için az identity create kullanın.
-g
parametresi kullanıcı tarafından atanan yönetilen kimliğin oluşturulduğu kaynak grubunu belirtirken,-n
parametresi de bunun adını belirtir.Önemli
Kullanıcı tarafından atanan yönetilen kimlikler oluşturduğunuzda, ad bir harf veya sayı ile başlamalıdır ve alfasayısal karakterler, kısa çizgi (-) ve alt çizgi (_) birleşimini içerebilir. Bir sanal makineye veya sanal makine ölçek kümesine atamanın düzgün çalışması için ad 24 karakterle sınırlıdır. Daha fazla bilgi için bkz. SSS ve bilinen sorunlar.
az identity create -g myResourceGroup -n myUserAssignedIdentity
Yanıt, aşağıdakine benzer şekilde, oluşturulan kullanıcı tarafından atanan yönetilen kimliğin ayrıntılarını içerir. Kullanıcı tarafından atanan yönetilen kimliğe atanan kaynak kimliği değeri aşağıdaki adımda kullanılır.
{ "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444", "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<myUserAssignedIdentity>/credentials?tid=5678&oid=9012&aid=aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "id": "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>", "location": "westcentralus", "name": "<USER ASSIGNED IDENTITY NAME>", "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222", "resourceGroup": "<RESOURCE GROUP>", "tags": {}, "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "type": "Microsoft.ManagedIdentity/userAssignedIdentities" }
az vm create kullanarak VM oluşturun. Aşağıdaki örnek,
--assign-identity
parametresi ile belirtilen ve yeni kullanıcı tarafından atanan kimlikle ilişkilendirilen, ayrıca--role
ve--scope
ile belirlenen bir VM oluşturur.<RESOURCE GROUP>
,<VM NAME>
,<USER NAME>
,<PASSWORD>
,<USER ASSIGNED IDENTITY NAME>
,<ROLE>
ve<SUBSCRIPTION>
parametre değerlerini kendi değerlerinizle değiştirmeyi unutmayın.az vm create --resource-group <RESOURCE GROUP> --name <VM NAME> --image <SKU linux image> --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY NAME> --role <ROLE> --scope <SUBSCRIPTION>
Mevcut Azure VM'sine kullanıcı tarafından atanan yönetilen kimlik atama
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınıza Sanal Makine Katkıda Bulunanı ve Yönetilen Kimlik Operatörü rol atamaları gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Kullanıcı tarafından atanan kimliği oluşturmak için az identity create kullanın.
-g
parametresi, kullanıcı tarafından atanan kimliğin oluşturulduğu kaynak grubunu, parametresi ise-n
adını belirtir.<RESOURCE GROUP>
ve<USER ASSIGNED IDENTITY NAME>
parametre değerlerini kendi değerlerinizle değiştirmeyi unutmayın:Önemli
Addaki özel karakterlerle (alt çizgi) kullanıcı tarafından atanan yönetilen kimliklerin oluşturulması şu anda desteklenmemektedir. Lütfen alfasayısal karakterler kullanın. Güncellemeler için tekrar kontrol edin. Daha fazla bilgi için bkz . SSS ve bilinen sorunlar
az identity create -g <RESOURCE GROUP> -n <USER ASSIGNED IDENTITY NAME>
Yanıt, aşağıdakine benzer şekilde, oluşturulan kullanıcı tarafından atanan yönetilen kimliğin ayrıntılarını içerir.
{ "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444", "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/credentials?tid=5678&oid=9012&aid=aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "id": "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>", "location": "westcentralus", "name": "<USER ASSIGNED IDENTITY NAME>", "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222", "resourceGroup": "<RESOURCE GROUP>", "tags": {}, "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee", "type": "Microsoft.ManagedIdentity/userAssignedIdentities" }
az vm identity assign komutunu kullanarak vm'nize kullanıcı tarafından atanan kimliği atayın.
<RESOURCE GROUP>
ve<VM NAME>
parametre değerlerini kendi değerlerinizle değiştirmeyi unutmayın.<USER ASSIGNED IDENTITY NAME>
, önceki adımda oluşturulduğu gibi kullanıcı tarafından atanan yönetilen kimliğin kaynakname
özelliğidir. Kullanıcı tarafından atanan yönetilen kimliğinizi VM'nizden farklı bir RG'de oluşturduysanız. Yönetilen kimliğinizin URL'sini kullanmanız gerekir.az vm identity assign -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>
Azure VM'den kullanıcı tarafından atanan yönetilen kimliği kaldırma
Vm'ye kullanıcı tarafından atanan bir kimliği kaldırmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir.
Sanal makineye atanan tek kullanıcı tarafından atanan yönetilen kimlik buysa, UserAssigned
kimlik türü değerinden kaldırılır.
<RESOURCE GROUP>
ve <VM NAME>
parametre değerlerini kendi değerlerinizle değiştirmeyi unutmayın.
<USER ASSIGNED IDENTITY>
, kullanıcı tarafından atanan kimliğin name
özelliğidir ve bunu, sanal makinenin kimlik bölümünde az vm identity show
kullanarak bulabilirsiniz.
az vm identity remove -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>
VM'nizin sistem tarafından atanan yönetilen kimliği yoksa ve kullanıcı tarafından atanan tüm kimlikleri kaldırmak istiyorsanız aşağıdaki komutu kullanın:
Uyarı
Değer none
büyük/küçük harfe duyarlıdır. Küçük harfle yazılmalıdır.
az vm update -n myVM -g myResourceGroup --set identity.type="none" identity.userAssignedIdentities=null
VM'nizde hem sistem tarafından atanan hem de kullanıcı tarafından atanan kimlikler varsa, yalnızca sistem tarafından atanan kimlikleri kullanmaya geçerek kullanıcı tarafından atanan tüm kimlikleri kaldırabilirsiniz. Aşağıdaki komutu kullanın:
az vm update -n myVM -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null
Sonraki adımlar
- Azure kaynakları için yönetilen kimliklere genel bakış
- Azure VM oluşturma hızlı başlangıçlarının tam listesi için şuraya bakın:
Bu makalede, PowerShell'i kullanarak azure vm'sinde Azure kaynakları işlemleri için aşağıdaki yönetilen kimlikleri gerçekleştirmeyi öğreneceksiniz.
Uyarı
Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.
Önkoşullar
- Azure kaynakları için yönetilen kimlikleri bilmiyorsanız genel bakış bölümüne göz atın. Sistem tarafından atanan ve kullanıcı tarafından atanan yönetilen kimlik arasındaki farkı gözden geçirmeyi unutmayın.
- Henüz bir Azure hesabınız yoksa, devam etmeden önce ücretsiz bir hesaba kaydolun.
- Örnek betikleri çalıştırmak için iki seçeneğiniz vardır:
- Kod bloklarının sağ üst köşesindeki Deneyin düğmesini kullanarak açabileceğiniz Azure Cloud Shell'i kullanın.
- Azure PowerShell'in en son sürümünü yükleyerek betikleri yerel olarak çalıştırın, ardından kullanarak
Connect-AzAccount
Azure'da oturum açın.
Sistem tarafından atanan yönetilen kimlik
Bu bölümde, Azure PowerShell kullanarak sistem tarafından atanan yönetilen kimliği etkinleştirme ve devre dışı bırakma adımlarını ele aacağız.
Azure VM oluşturulurken sistem tarafından atanan yönetilen kimliği etkinleştirme
Sistem tarafından atanan yönetilen kimliğin etkinleştirildiği bir Azure VM oluşturmak için hesabınızın Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Yalnızca gerekli bölümleri tamamlayarak ("Azure'da oturum açın", "Kaynak grubu oluştur", "Ağ grubu oluştur", "VM'yi oluşturma") aşağıdaki Azure VM Hızlı Başlangıçlarından birine bakın.
"VM Oluşturma" bölümüne gittiğiniz zaman New-AzVMConfig cmdlet söz diziminde küçük bir değişiklik yapın. Vm'yi sistem tarafından atanan kimlik etkin olarak sağlamak için bir
-IdentityType SystemAssigned
parametre eklediğinizden emin olun, örneğin:$vmConfig = New-AzVMConfig -VMName myVM -IdentityType SystemAssigned ...
Mevcut Bir Azure VM'de sistem tarafından atanan yönetilen kimliği etkinleştirme
Sistem tarafından atanan yönetilen kimliği, başlangıçta bu olmadan sağlanmış bir VM'de etkinleştirmek için hesabınızda Sanal Makine Katkıda Bulunanı rol atamasının olması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Get-AzVM
cmdlet'ini kullanarak VM özelliklerini alın. Ardından sistem tarafından atanan yönetilen kimliği etkinleştirmek için-IdentityType
anahtarını Update-AzVM cmdlet'i ile kullanın:$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM Update-AzVM -ResourceGroupName myResourceGroup -VM $vm -IdentityType SystemAssigned
Gruba VM sistem tarafından atanan kimlik ekleme
Vm'de sistem tarafından atanan kimliği etkinleştirdikten sonra bir gruba ekleyebilirsiniz. Aşağıdaki yordam, sanal makinenin sistem tarafından atanan kimliğini bir gruba ekler.
VM'nin hizmet sorumlusunun
ObjectID
(döndürülen değerlerinId
alanında belirtildiği gibi) değerini alın ve not edin:Get-AzADServicePrincipal -displayname "myVM"
ObjectID
'ı (döndürülen değerlerinId
alanında belirtildiği gibi) alın ve grubun notunu alın.Get-AzADGroup -searchstring "myGroup"
VM'nin hizmet sorumlusunu gruba ekleyin:
New-MgGroupMember -GroupId "<Id of group>" -DirectoryObjectId "<Id of VM service principal>"
Azure VM'den sistem tarafından atanan yönetilen kimliği devre dışı bırakma
Vm'de sistem tarafından atanan yönetilen kimliği devre dışı bırakmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Artık sistem tarafından atanan yönetilen kimliğe ihtiyacı olmayan ancak yine de kullanıcı tarafından atanan yönetilen kimliklere ihtiyaç duyan bir Sanal Makineniz varsa aşağıdaki cmdlet'i kullanın:
cmdlet'ini
Get-AzVM
kullanarak VM özelliklerini alın ve parametresini-IdentityType
olarakUserAssigned
ayarlayın:$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType "UserAssigned" -IdentityID "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>..."
Artık sistem tarafından atanan yönetilen kimliğe ihtiyacı olmayan bir sanal makineniz varsa ve kullanıcı tarafından atanan yönetilen kimlikleri yoksa aşağıdaki komutları kullanın:
$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM
Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType None
Kullanıcı atamalı yönetilen kimlik
Bu bölümde, Azure PowerShell kullanarak bir VM'de kullanıcı tarafından atanan yönetilen kimliği eklemeyi ve kaldırmayı öğreneceksiniz.
Oluşturma sırasında bir VM'ye kullanıcıya atanmış bir yönetilen kimlik atama
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınıza Sanal Makine Katkıda Bulunanı ve Yönetilen Kimlik Operatörü rol atamaları gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Yalnızca gerekli bölümleri tamamlayarak ("Azure'da oturum açın", "Kaynak grubu oluştur", "Ağ grubu oluştur", "VM'yi oluşturma") aşağıdaki Azure VM Hızlı Başlangıçlarından birine bakın.
"VM oluşturma" bölümüne gittiğiniz zaman, cmdlet söz diziminde
New-AzVMConfig
küçük bir değişiklik yapın. VM'ye kullanıcı tarafından atanan bir kimlik sağlamak için-IdentityType UserAssigned
ve-IdentityID
parametrelerini ekleyin. ,<VM NAME>
,<SUBSCRIPTION ID>
ve<RESOURCE GROUP>
değerlerini kendi değerlerinizle değiştirin<USER ASSIGNED IDENTITY NAME>
. Örneğin:$vmConfig = New-AzVMConfig -VMName <VM NAME> -IdentityType UserAssigned -IdentityID "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>..."
Mevcut Azure VM'sine kullanıcı tarafından atanan yönetilen kimlik atama
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınıza Sanal Makine Katkıda Bulunanı ve Yönetilen Kimlik Operatörü rol atamaları gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
New-AzUserAssignedIdentity cmdlet'ini kullanarak kullanıcı tarafından atanan bir yönetilen kimlik oluşturun. Çıktıdaki
Id
öğesini not edin çünkü bu bilgilere sonraki adımda ihtiyacınız olacak.Önemli
Kullanıcı tarafından atanan yönetilen kimlikler oluşturmak yalnızca alfasayısal, alt çizgi ve kısa çizgi (0-9 veya a-z veya A-Z, _ veya -) karakterleri destekler. Ayrıca, VM/VMSS'ye atamanın düzgün çalışması için ad 3 ile 128 karakter uzunluğunda sınırlandırılmalıdır. Daha fazla bilgi için bkz . SSS ve bilinen sorunlar
New-AzUserAssignedIdentity -ResourceGroupName <RESOURCEGROUP> -Name <USER ASSIGNED IDENTITY NAME>
Get-AzVM
cmdlet'ini kullanarak VM özelliklerini alın. Ardından Azure VM'ye kullanıcı tarafından atanan bir yönetilen kimlik atamak için-IdentityType
ve-IdentityID
anahtarlarını Update-AzVM cmdlet'inde kullanın. parametresinin-IdentityId
değeri, önceki adımda not ettiğiniz değerdirId
. ,<VM NAME>
,<SUBSCRIPTION ID>
ve<RESOURCE GROUP>
değerlerini kendi değerlerinizle değiştirin<USER ASSIGNED IDENTITY NAME>
.Uyarı
Vm'ye daha önce kullanıcı tarafından atanan yönetilen kimlikleri korumak için, VM nesnesinin özelliğini (örneğin,
Identity
) sorgular$vm.Identity
. Kullanıcı tarafından atanan yönetilen kimlikler döndürülürse, bunları, VM'ye atamak istediğiniz yeni kullanıcı tarafından atanan yönetilen kimlikle birlikte aşağıdaki komuta ekleyin.$vm = Get-AzVM -ResourceGroupName <RESOURCE GROUP> -Name <VM NAME> # Get the list of existing identity IDs and then append to it $identityIds = $vm.Identity.UserAssignedIdentities.Keys $uid = "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>" $identityIds = $identityIds + $uid # Update the VM with added identity IDs Update-AzVM -ResourceGroupName <RESOURCE GROUP> -VM $vm -IdentityType UserAssigned -IdentityID $uid
Azure VM'den kullanıcı tarafından atanan yönetilen kimliği kaldırma
Vm'ye kullanıcı tarafından atanan bir kimliği kaldırmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir.
VM'nizde kullanıcı tarafından atanan birden çok yönetilen kimlik varsa, aşağıdaki komutları kullanarak sonuncusu dışında tümünü kaldırabilirsiniz.
<RESOURCE GROUP>
ve <VM NAME>
parametre değerlerini kendi değerlerinizle değiştirmeyi unutmayın.
<USER ASSIGNED IDENTITY NAME>
, vm'de kalması gereken kullanıcı tarafından atanan yönetilen kimliğin ad özelliğidir. Bu bilgiler, VM nesnesinin Identity
özelliğini aramak için bir sorgu kullanılarak bulunabilir. Örneğin, $vm.Identity
:
$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VirtualMachine $vm -IdentityType UserAssigned -IdentityID <USER ASSIGNED IDENTITY NAME>
VM'nizin sistem tarafından atanan yönetilen kimliği yoksa ve kullanıcı tarafından atanan tüm yönetilen kimlikleri kaldırmak istiyorsanız aşağıdaki komutu kullanın:
$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType None
VM'nizde hem sistem tarafından atanan hem de kullanıcı tarafından atanan yönetilen kimlikler varsa, yalnızca sistem tarafından atanan yönetilen kimlikleri kullanmaya geçerek kullanıcı tarafından atanan tüm yönetilen kimlikleri kaldırabilirsiniz.
$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VirtualMachine $vm -IdentityType "SystemAssigned"
Sonraki adımlar
Azure VM oluşturma ile ilgili tüm hızlı başlangıçlar için bkz:
Bu makalede, Azure Resource Manager dağıtım şablonunu kullanarak bir Azure VM'de Azure kaynakları işlemleri için aşağıdaki yönetilen kimlikleri gerçekleştirmeyi öğreneceksiniz:
Önkoşullar
- Azure Resource Manager dağıtım şablonunu kullanmayı bilmiyorsanız genel bakış bölümüne göz atın. Sistem tarafından atanan ve kullanıcı tarafından atanan yönetilen kimlik arasındaki farkı gözden geçirmeyi unutmayın.
- Henüz bir Azure hesabınız yoksa, devam etmeden önce ücretsiz bir hesaba kaydolun.
Azure Resource Manager şablonları
Azure portalı ve betik oluşturmada olduğu gibi Azure Resource Manager şablonları da bir Azure kaynak grubu tarafından tanımlanan yeni veya değiştirilmiş kaynakları dağıtmanıza olanak sağlar. Şablon düzenleme ve dağıtım için hem yerel hem de portal tabanlı çeşitli seçenekler mevcuttur:
- Azure Market özel bir şablon kullanarak sıfırdan bir şablon oluşturabilir veya şablonu mevcut ortak veya hızlı başlangıç şablonuna dayandırabilirsiniz.
- Şablonu özgün dağıtımdan veya dağıtımın geçerli durumundan dışarı aktararak mevcut bir kaynak grubundan türetme.
- JSON düzenleyicisini (VS Code gibi) yerel olarak kullanarak ve ardından PowerShell veya CLI ile karşıya yükleyip dağıtarak.
- Şablon oluşturmak ve dağıtmak için Visual Studio Azure Kaynak Grubu projesini kullanma.
Seçtiğiniz seçenek ne olursa olsun, şablon söz dizimi ilk dağıtım ve yeniden dağıtım sırasında aynıdır. Yeni veya mevcut bir VM'de sistem veya kullanıcı tarafından atanan yönetilen kimliği etkinleştirme işlemi aynı şekilde yapılır. Ayrıca Azure Resource Manager varsayılan olarak dağıtımlara yönelik artımlı bir güncelleştirme yapar.
Sistem tarafından atanan yönetilen kimlik
Bu bölümde, Azure Resource Manager şablonu kullanarak sistem tarafından atanan yönetilen kimliği etkinleştirecek ve devre dışı bırakacaksınız.
Azure VM'sinin oluşturulması sırasında veya mevcut bir VM'de sistem tarafından atanan yönetilen kimliği etkinleştirme
Vm'de sistem tarafından atanan yönetilen kimliği etkinleştirmek için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Azure'da yerel olarak veya Azure portalı aracılığıyla oturum açtığınızda, VM'yi içeren Azure aboneliğiyle ilişkili bir hesap kullanın.
Sistem tarafından atanan yönetilen kimliği etkinleştirmek için, şablonu bir düzenleyiciye yükleyin,
Microsoft.Compute/virtualMachines
bölümündeki ilgilendiğinizresources
kaynağını bulun ve"identity"
özelliği ile aynı seviyede"type": "Microsoft.Compute/virtualMachines"
özelliğini ekleyin. Aşağıdaki sözdizimini kullanın:"identity": { "type": "SystemAssigned" },
İşiniz bittiğinde, şablonunuzun bölümüne aşağıdaki bölümler eklenmelidir
resource
ve aşağıdakine benzer olmalıdır:"resources": [ { //other resource provider properties... "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "SystemAssigned", } } ]
VM'ye sistem tarafından atanan yönetilen kimlik için bir rol atayın
VM'nizde sistem tarafından atanan yönetilen kimliği etkinleştirdikten sonra, oluşturulduğu kaynak grubuna Okuyucu gibi erişim rolü vermek isteyebilirsiniz. Bu adımda size yardımcı olacak ayrıntılı bilgileri Azure Resource Manager şablonlarını kullanarak Azure rollerini atama makalesinde bulabilirsiniz.
Azure VM'den sistem tarafından atanan yönetilen kimliği devre dışı bırakma
Sistem tarafından atanan yönetilen kimliği bir VM'den kaldırmak için hesabınızın Sanal Makine Katılımcısı rol atamasına ihtiyacı vardır. Başka Microsoft Entra dizin rolü ataması gerekmez.
Azure'da yerel olarak veya Azure portalı aracılığıyla oturum açtığınızda, VM'yi içeren Azure aboneliğiyle ilişkili bir hesap kullanın.
Şablonu bir düzenleyiciye yükleyin ve bölümün
Microsoft.Compute/virtualMachines
içinderesources
ilgili kaynağı bulun. Yalnızca sistem tarafından atanan yönetilen kimliğe sahip bir VM'niz varsa, kimlik türünüNone
olarak değiştirerek vm'yi devre dışı bırakabilirsiniz.Microsoft.Compute/virtualMachines API sürüm 2018-06-01
VM'nizde hem sistem hem de kullanıcı tarafından atanan yönetilen kimlikler varsa, kimlik türünden
SystemAssigned
'yu kaldırın ve sözlük değerleriyle birlikteUserAssigned
,userAssignedIdentities
tutun.Microsoft.Compute/virtualMachines API sürüm 2018-06-01
Sizin
apiVersion
2017-12-01
ve VM'nizin hem sistem hem de kullanıcı tarafından atanan yönetilen kimlikleri varsa,SystemAssigned
öğesini kimlik türünden kaldırın veUserAssigned
ile birlikteidentityIds
kullanıcı tarafından atanan yönetilen kimlikler dizisini tutun.
Aşağıdaki örnekte, kullanıcı tarafından atanan yönetilen kimlikler olmadan bir VM'den sistem tarafından atanan yönetilen kimliğin nasıl kaldırılacağı gösterilmektedir:
{
"apiVersion": "2018-06-01",
"type": "Microsoft.Compute/virtualMachines",
"name": "[parameters('vmName')]",
"location": "[resourceGroup().location]",
"identity": {
"type": "None"
}
}
Kullanıcı atamalı yönetilen kimlik
Bu bölümde, Azure Resource Manager şablonunu kullanarak Bir Azure VM'ye kullanıcı tarafından atanan yönetilen kimlik atayacaksınız.
Uyarı
Azure Resource Manager Şablonu kullanarak kullanıcı tarafından atanan yönetilen kimlik oluşturmak için Kullanıcı tarafından atanan yönetilen kimlik oluşturma bölümüne bakın.
Azure VM'ye kullanıcı tarafından atanan yönetilen kimlik atama
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınızın Yönetilen Kimlik Operatörü rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
öğesinin
resources
altına aşağıdaki girdiyi ekleyerek vm'nize kullanıcı tarafından atanan yönetilen kimliği atayın. Oluşturduğunuz kullanıcı tarafından atanan yönetilen kimliğin adıyla<USERASSIGNEDIDENTITY>
değerini değiştirdiğinizden emin olun.Microsoft.Compute/virtualMachines API sürüm 2018-06-01
Eğer
apiVersion
'nız2018-06-01
ise, kullanıcı tarafından atanan yönetilen kimliklerinizuserAssignedIdentities
sözlük biçiminde depolanır ve<USERASSIGNEDIDENTITYNAME>
değeri, şablonunuzunvariables
bölümünde tanımlanan bir değişkende saklanmalıdır.{ "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "userAssignedIdentities": { "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {} } } }
Microsoft.Compute/virtualMachines API sürüm 2017-12-01
Yetkilendirilmiş yönetilen kimlikleriniz
apiVersion
ise2017-12-01
,identityIds
dizisinde depolanır ve<USERASSIGNEDIDENTITYNAME>
değeri, şablonunuzunvariables
bölümünde tanımlanan bir değişkende depolanması gerekir.{ "apiVersion": "2017-12-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "identityIds": [ "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]" ] } }
İşiniz bittiğinde, şablonunuzun bölümüne aşağıdaki bölümler eklenmelidir
resource
ve aşağıdakine benzer olmalıdır:Microsoft.Compute/virtualMachines API sürüm 2018-06-01
"resources": [ { //other resource provider properties... "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "userAssignedIdentities": { "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {} } } } ]
Microsoft.Compute/virtualMachines API sürüm 2017-12-01
"resources": [ { //other resource provider properties... "apiVersion": "2017-12-01", "type": "Microsoft.Compute/virtualMachines", "name": "[variables('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "userAssigned", "identityIds": [ "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]" ] } } ]
Azure VM'den kullanıcı tarafından atanan yönetilen kimliği kaldırma
Vm'den kullanıcı tarafından atanan bir kimliği kaldırmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Azure'da yerel olarak veya Azure portalı aracılığıyla oturum açtığınızda, VM'yi içeren Azure aboneliğiyle ilişkili bir hesap kullanın.
Şablonu bir düzenleyiciye yükleyin ve bölümün
Microsoft.Compute/virtualMachines
içinderesources
ilgili kaynağı bulun. Yalnızca kullanıcı tarafından atanan yönetilen kimliğe sahip bir VM'niz varsa, kimlik türünüNone
olarak değiştirerek vm'yi devre dışı bırakabilirsiniz.Aşağıdaki örnekte, sistem tarafından atanan yönetilen kimlikler olmadan sanal makineden kullanıcı tarafından atanan tüm yönetilen kimliklerin nasıl kaldırılacağı gösterilmektedir:
{ "apiVersion": "2018-06-01", "type": "Microsoft.Compute/virtualMachines", "name": "[parameters('vmName')]", "location": "[resourceGroup().location]", "identity": { "type": "None" }, }
Microsoft.Compute/virtualMachines API sürüm 2018-06-01
VM'den kullanıcı tarafından atanan tek bir yönetilen kimliği kaldırmak için, bunu
userAssignedIdentities
sözlüğünden kaldırın.Sistem tarafından atanan bir yönetilen kimliğiniz varsa, bunu
type
değerinin altındakiidentity
değerinde tutun.Microsoft.Compute/virtualMachines API sürüm 2017-12-01
Vm'den kullanıcı tarafından atanan tek bir yönetilen kimliği kaldırmak için diziden
identityIds
kaldırın.Sistem tarafından atanan bir yönetilen kimliğiniz varsa, bunu
type
değerinin altındakiidentity
değerinde tutun.
Sonraki adımlar
Azure Resource Manager REST uç noktasına çağrı yapmak için CURL'yi kullanarak bu makalede, azure vm'sinde Azure kaynakları işlemleri için aşağıdaki yönetilen kimlikleri gerçekleştirmeyi öğreneceksiniz:
- Azure VM'de sistem tarafından atanan yönetilen kimliği etkinleştirme ve devre dışı bırakma
- Azure VM'de 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.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.
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 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ü 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 Azure VM'de sistem tarafından atanan yönetilen kimliği etkinleştirmeyi ve devre dışı bırakmayı öğreneceksiniz.
Azure VM oluşturulurken sistem tarafından atanan yönetilen kimliği etkinleştirme
Sistem tarafından atanan yönetilen kimliğin etkinleştirildiği bir Azure VM oluşturmak için hesabınızın Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
VM'nizin ve onunla ilgili kaynakların kapsaması ve dağıtımı için, az group create komutunu kullanarak 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
VM'niz için bir ağ arabirimi oluşturun:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Vm'nizi sistem tarafından atanan yönetilen kimlikle 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 VM oluşturun. Aşağıdaki örnek, istek gövdesinde değeri ile tanımlanarak, sistem tarafından atanan yönetilen kimliğe sahip bir VM oluşturur ve bu VM'ye
"identity":{"type":"SystemAssigned"}
adını verir. Önceki adımda Bearer erişim jetonu istediğinizde aldığınız değeri<ACCESS TOKEN>
ile ve ortamınız için uygun değeri<SUBSCRIPTION ID>
ile değiştirin.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"SystemAssigned"},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"<SECURE PASSWORD STRING>"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.İstek gövdesi
{ "location":"westus", "name":"myVM", "identity":{ "type":"SystemAssigned" }, "properties":{ "hardwareProfile":{ "vmSize":"Standard_D2_v2" }, "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "name":"myVM3osdisk", "createOption":"FromImage" }, "dataDisks":[ { "diskSizeGB":1023, "createOption":"Empty", "lun":0 }, { "diskSizeGB":1023, "createOption":"Empty", "lun":1 } ] }, "osProfile":{ "adminUsername":"azureuser", "computerName":"myVM", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaces":[ { "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic", "properties":{ "primary":true } } ] } } }
Mevcut bir Azure VM'de sistem tarafından atanan kimliği etkinleştirme
Sistem tarafından atanan yönetilen kimliği, başlangıçta bu olmadan sağlanmış bir VM'de etkinleştirmek için hesabınızda Sanal Makine Katkıda Bulunanı rol atamasının olması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Vm'nizi sistem tarafından atanan yönetilen kimlikle 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 Resource Manager REST uç noktasını çağırarak, istek gövdesinde
{"identity":{"type":"SystemAssigned"}
değeri ile tanımlanan myVM adındaki VM'de sistem tarafından atanan yönetilen kimliği etkinleştirmek için aşağıdaki CURL komutunu kullanın. Önceki adımda Bearer erişim jetonu istediğinizde aldığınız değeri<ACCESS TOKEN>
ile ve ortamınız için uygun değeri<SUBSCRIPTION ID>
ile değiştirin.Önemli
VM'ye 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/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
. Yanıttaki değerdeidentity
tanımlanan şekilde VM'ye kullanıcı tarafından atanan yönetilen kimlikleriniz varsa, vm'nizde 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/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned" } }
Kullanıcı tarafından atanan mevcut yönetilen kimliklere sahip bir VM'de sistem tarafından atanan yönetilen kimliği etkinleştirmek için değere
SystemAssigned
eklemeniztype
gerekir.Örneğin, VM'nizde
ID1
veID2
olarak atanmış kullanıcı tarafından atanan yönetilen kimlikler varsa ve VM'ye sistem tarafından atanan bir yönetilen kimlik eklemek istiyorsanız, aşağıdaki CURL çağrısını kullanın. ve<ACCESS TOKEN>
değerlerini ortamınıza uygun değerlerle değiştirin<SUBSCRIPTION ID>
.API sürümü
2018-06-01
, kullanıcı tarafından atanan yönetilen kimlikleriuserAssignedIdentities
, API sürümündeidentityIds
kullanılan dizi biçimindeki değerden2017-12-01
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/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci 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/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci 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" ] } }
Azure VM'den sistem tarafından atanan yönetilen kimliği devre dışı bırakma
Vm'de sistem tarafından atanan yönetilen kimliği devre dışı bırakmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Vm'nizi sistem tarafından atanan yönetilen kimlikle 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 VM'yi güncelleştirin. Aşağıdaki örnek, istek gövdesinde
{"identity":{"type":"None"}}
değeri ile tanımlanan sistem tarafından atanan yönetilen kimliği, myVM adlı VM'den devre dışı bırakır. Önceki adımda Bearer erişim jetonu istediğinizde aldığınız değeri<ACCESS TOKEN>
ile ve ortamınız için uygun değeri<SUBSCRIPTION ID>
ile değiştirin.Önemli
VM'ye 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/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
. Yanıttaki değerdeidentity
tanımlanan şekilde VM'ye kullanıcı tarafından atanmış yönetilen kimlikleriniz varsa, vm'nizde sistem tarafından atanan yönetilen kimliği devre dışı bırakırken 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/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.İstek gövdesi
{ "identity":{ "type":"None" } }
Kullanıcı tarafından atanan yönetilen kimliklere sahip bir sanal makineden sistem tarafından atanan yönetilen kimliği kaldırmak için,
SystemAssigned
değerini{"identity":{"type:" "}}
değerinden çıkarın veUserAssigned
değerini ileuserAssignedIdentities
sözlük değerlerini saklayın. API sürümünü 2018-06-01 kullanıyorsanız. "Eğer API'nin 2017-12-01 veya daha önceki bir sürümünü kullanıyorsanız, diziyiidentityIds
koruyun."
Kullanıcı atamalı yönetilen kimlik
Bu bölümde, Azure Resource Manager REST uç noktasına çağrı yapmak için CURL kullanarak Azure VM'de kullanıcı tarafından atanan yönetilen kimliği eklemeyi ve kaldırmayı öğreneceksiniz.
Azure VM oluşturma sırasında kullanıcı tarafından atanan yönetilen kimlik atayın
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınıza Sanal Makine Katkıda Bulunanı ve Yönetilen Kimlik Operatörü rol atamaları gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Vm'nizi sistem tarafından atanan yönetilen kimlikle 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
VM'niz için bir ağ arabirimi oluşturun:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Vm'nizi sistem tarafından atanan yönetilen kimlikle 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 VM oluşturun. Aşağıdaki örnek, kullanıcı tarafından atanan yönetilen kimliğine sahip myResourceGroup kaynak grubunda, istek gövdesinde değerine
ID1
göre tanımlanan myVM"identity":{"type":"UserAssigned"}
bir VM oluşturur. Önceki adımda Bearer erişim jetonu istediğinizde aldığınız değeri<ACCESS TOKEN>
ile ve ortamınız için uygun değeri<SUBSCRIPTION ID>
ile değiştirin.API SÜRÜM 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.İstek gövdesi
{ "location":"westus", "name":"myVM", "identity":{ "type":"UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] }, "properties":{ "hardwareProfile":{ "vmSize":"Standard_D2_v2" }, "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "name":"myVM3osdisk", "createOption":"FromImage" }, "dataDisks":[ { "diskSizeGB":1023, "createOption":"Empty", "lun":0 }, { "diskSizeGB":1023, "createOption":"Empty", "lun":1 } ] }, "osProfile":{ "adminUsername":"azureuser", "computerName":"myVM", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaces":[ { "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic", "properties":{ "primary":true } } ] } } }
API SÜRÜM 2017-12-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.İstek gövdesi
{ "location":"westus", "name":"myVM", "identity":{ "type":"UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] }, "properties":{ "hardwareProfile":{ "vmSize":"Standard_D2_v2" }, "storageProfile":{ "imageReference":{ "sku":"2016-Datacenter", "publisher":"MicrosoftWindowsServer", "version":"latest", "offer":"WindowsServer" }, "osDisk":{ "caching":"ReadWrite", "managedDisk":{ "storageAccountType":"StandardSSD_LRS" }, "name":"myVM3osdisk", "createOption":"FromImage" }, "dataDisks":[ { "diskSizeGB":1023, "createOption":"Empty", "lun":0 }, { "diskSizeGB":1023, "createOption":"Empty", "lun":1 } ] }, "osProfile":{ "adminUsername":"azureuser", "computerName":"myVM", "adminPassword":"myPassword12" }, "networkProfile":{ "networkInterfaces":[ { "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic", "properties":{ "primary":true } } ] } } }
Mevcut Azure VM'sine kullanıcı tarafından atanan yönetilen kimlik atama
Vm'ye kullanıcı tarafından atanan bir kimlik atamak için hesabınıza Sanal Makine Katkıda Bulunanı ve Yönetilen Kimlik Operatörü rol atamaları gerekir. Başka Microsoft Entra dizin rolü ataması gerekmez.
Vm'nizi sistem tarafından atanan yönetilen kimlikle 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.
VM'ye atanan mevcut kullanıcı veya sistem tarafından atanan yönetilen kimlikleri silmediğinizden emin olmak için aşağıdaki CURL komutunu kullanarak VM'ye atanan kimlik türlerini listelemeniz gerekir. Sanal makine ölçek kümesine atanmış yönetilen kimlikleriniz varsa, bunlar değerinin
identity
altında listelenir.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM 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/virtualMachines/<VM NAME>?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.Yanıttaki değerde
identity
tanımlanan şekilde VM'ye atanmış kullanıcı veya sistem tarafından atanmış yönetilen kimlikleriniz varsa, vm'nize kullanıcı tarafından atanan yönetilen kimliği eklerken sistem tarafından atanan yönetilen kimliği nasıl tutabileceğinizi gösteren 5. adıma geçin.VM'nize kullanıcı tarafından atanmış yönetilen kimlikleriniz yoksa, vm'ye 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.
Aşağıdaki örnek,
ID1
myResourceGroup kaynak grubundaki myVM adlı vm'ye kullanıcı tarafından atanan bir yönetilen kimlik atar. Önceki adımda Bearer erişim jetonu istediğinizde aldığınız değeri<ACCESS TOKEN>
ile ve ortamınız için uygun değeri<SUBSCRIPTION ID>
ile değiştirin.API SÜRÜM 2018-06-01
curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci 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/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.İstek gövdesi
{ "identity":{ "type":"userAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
VM'nize kullanıcı tarafından atanmış veya sistem tarafından atanmış yönetilen bir 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 VM'nize atanmış olan kullanıcı tarafından atanan yönetilen kimliğiniz
ID1
varsa ve kullanıcı tarafından atanan yönetilen kimliğiID2
buna eklemek istiyorsanız:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci 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
Yeni kullanıcı tarafından atanan yönetilen kimliği eklerken,
identityIds
dizi değerinde saklamak istediğiniz mevcut kullanıcı tarafından atanan yönetilen kimlikleri koruyun.Örneğin, sistem tarafından atanan yönetilen kimliğiniz ve şu anda VM'nize atanmış olan kullanıcı tarafından atanan yönetilen kimliğiniz
ID1
varsa ve kullanıcı tarafından atanan yönetilen kimliğiID2
buna eklemek istiyorsanız:curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci 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" ] } }
Azure VM'den kullanıcı tarafından atanan yönetilen kimliği kaldırma
Vm'ye kullanıcı tarafından atanan bir kimliği kaldırmak için hesabınıza Sanal Makine Katılımcısı rol ataması gerekir.
Vm'nizi sistem tarafından atanan yönetilen kimlikle 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
VM'ye atanmış olarak tutmak istediğiniz mevcut kullanıcı atanmış yönetilen kimlikleri yanlışlıkla 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/virtualMachines/<VM 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/virtualMachines/<VM NAME>?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.VM'ye atanmış yönetilen kimlikleriniz varsa, bunlar yanıtın
identity
değeri içinde listelenir.Örneğin, kullanıcı tarafından atanan yönetilen kimlikleriniz
ID1
varsa veID2
VM'nize atanmışsa ve yalnızca sistem tarafından atanan 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
null
ekleyin.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci 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
identityIds
dizisinde tutmak istediğiniz kullanıcıya atanan yönetilen kimlik(ler)i koruyun.curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
İstek başlıkları
İstek başlığı Açıklama İçerik Türü Gerekli. application/json
olarak ayarlayın.Yetkilendirme Gerekli. Geçerli bir Bearer
erişim belirteci ayarlayın.İstek gövdesi
{ "identity":{ "type":"SystemAssigned, UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
VM'nizde 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 yönetilen kimliği 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/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı | Açıklama |
---|---|
İçerik Türü | Gerekli.
application/json olarak ayarlayın. |
Yetkilendirme | Gerekli. Geçerli bir Bearer erişim belirteci ayarlayın. |
İstek gövdesi
{
"identity":{
"type":"SystemAssigned"
}
}
VM'nizde 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/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
İstek başlıkları
İstek başlığı | Açıklama |
---|---|
İçerik Türü | Gerekli.
application/json olarak ayarlayın. |
Yetkilendirme | Gerekli. Geçerli bir Bearer erişim belirteci 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:
Bu makalede, Azure SDK kullanarak azure vm için Azure kaynakları için yönetilen kimlikleri etkinleştirmeyi ve kaldırmayı öğreneceksiniz.
Önkoşullar
- Azure kaynakları için yönetilen kimlikler özelliği hakkında bilgi sahibi değilseniz bu genel bakışı inceleyin. Azure hesabınız yoksa, devam etmeden önce ücretsiz bir hesaba kaydolun.
Azure kaynakları için yönetilen kimlikleri destekleyen Azure SDK'ları
Azure, bir dizi Azure SDK'ları aracılığıyla birden çok programlama platformunu destekler. Bunların bazıları Azure kaynakları için yönetilen kimlikleri destekleyecek şekilde güncelleştirildi ve kullanımı göstermek için ilgili örnekleri sağladı. Diğer destek eklendikçe bu liste güncelleştirilir:
Sonraki adımlar
- Azure portalını, PowerShell'i, CLI'yı ve kaynak şablonlarını nasıl kullanabileceğinizi öğrenmek için Azure VM için Kimlik Yapılandırma altındaki ilgili makalelere bakın.