Azure CLI ile Azure aboneliklerini yönetme
Azure CLI, Azure aboneliğinizi yönetmenize, yönetim grupları oluşturmanıza ve abonelikleri kilitlemenize yardımcı olur. Azure'da birden çok aboneliğiniz olabilir. Birden fazla kuruluşun parçası olabilirsiniz veya kuruluşunuz erişimi gruplandırmalar arasında belirli kaynaklara bölebilir. Azure CLI, hem genel olarak hem de komut başına abonelik seçmeyi destekler.
Abonelikler, faturalama ve maliyet yönetimi hakkında ayrıntılı bilgi için, faturalama ve maliyet yönetimi belgelerine bakın.
Terminoloji
Kiracı, tek bir kuruluş hakkındaki bilgilerin bulunduğu Bir Microsoft Entra Kimliği örneğidir. Çok kiracılı bir kuruluş , birden fazla Microsoft Entra Id örneğine sahip olan bir kuruluştır. Kiracının bir veya daha fazla aboneliği ve kullanıcısı vardır.
Kullanıcılar, kaynakları oluşturmak, yönetmek ve kullanmak için Azure’da oturum açan hesaplardır. Bir kullanıcının birden çok kiracıya ve aboneliğe erişimi olabilir.
Abonelikler , Azure dahil olmak üzere bulut hizmetlerini kullanmak için Microsoft ile yapılan sözleşmelerdir. Her kaynak bir abonelik ile ilişkilidir. Abonelikler kaynak grupları içerir.
Azure kaynak grubu, bir Azure çözümü için ilgili kaynakları barındıran bir kapsayıcıdır. Aboneliğinizdeki kaynak gruplarını yönetmeyi öğrenmek için bkz . Azure CLI ile Azure kaynak gruplarını yönetme
Etkin kiracıyı alma
Etkin kiracı kimliğini almak için az account tenant list veya az account show kullanın.
az account tenant list
az account show
Etkin kiracıyı değiştirme
Kiracıları değiştirmek için iki seçeneğiniz vardır.
İstenen kiracıda kullanıcı olarak oturum açın. Etkin kiracıyı değiştirmek ve ait olduğunuz abonelik listesini güncelleştirmek için az login komutunu kullanın.
# sign in as a different user az login --user <myAlias@myCompany.com> --password <myPassword> # sign in with a different tenant az login --tenant <myTenantID>
Kuruluşunuz çok faktörlü kimlik doğrulaması gerektiriyorsa, kullanırken
az login --user
bu hatayı alabilirsiniz:Due to a configuration change made by your administrator, or because you moved to a new location, you must use multi-factor authentication to access...
Alternatif
az login --tenant
komut kullanıldığında bir HTTPS sayfası açmanız ve sağlanan kodu girmeniz istenir. Daha sonra çok faktörlü kimlik doğrulamasını kullanabilir ve başarıyla oturum açabilirsiniz. Azure CLI ile oturum açma seçenekleri hakkında daha fazla bilgi edinmek için bkz . Azure CLI ile oturum açma.
Abonelik bilgilerini alma
Azure CLI komutlarının çoğu bir abonelik içinde görev alır. Komutunuzda parametresini kullanarak hangi aboneliğin --subscription
çalışacağını belirtebilirsiniz. Abonelik belirtmezseniz, komut geçerli, etkin aboneliğinizi kullanır.
Kullanmakta olduğunuz aboneliği görmek veya kullanılabilir aboneliklerin listesini almak için az account show veya az account list komutunu çalıştırın. Bu komutları kullanmanın diğer yollarını görmek için Bash'i Azure CLI ile kullanmayı öğrenin bölümüne gidin.
Abonelik bilgilerini almayı gösteren örnekler aşağıda verilmiştir:
# get the current default subscription using show
az account show --output table
# get the current default subscription using list
az account list --query "[?isDefault]"
# get a subscription that contains search words or phrases
az account list --query "[?contains(name,'search phrase')].{SubscriptionName:name, SubscriptionID:id, TenantID:tenantId}" --output table
Ayrıca, abonelik bilgilerini bir betik içinde kullanmak üzere bir değişkende depolayabilirsiniz.
# store the default subscription in a variable
subscriptionId="$(az account list --query "[?isDefault].id" --output tsv)"
echo $subscriptionId
# store a subscription of certain name in a variable
subscriptionId="$(az account list --query "[?name=='my case sensitive subscription full name'].id" --output tsv)"
echo $subscriptionId
İpucu
--output
parametresi, tüm komutlar için kullanılabilen genel bir parametredir. Tablo değeri, çıkışı kolay bir biçimde sunar. Daha fazla bilgi için bkz . Azure CLI komutları için çıkış biçimleri.
Etkin aboneliği değiştirme
Azure aboneliklerinin hem adı hem de kimliği vardır. İstenen abonelik kimliğini veya adını belirten az account set komutunu kullanarak farklı bir aboneliğe geçebilirsiniz.
# change the active subscription using the subscription name
az account set --subscription "My Demos"
# change the active subscription using the subscription ID
az account set --subscription "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
Ayrıca bir değişken kullanarak aboneliğinizi değiştirebilirsiniz. Örnek aşağıda verilmiştir:
# change the active subscription using a variable
subscriptionId="$(az account list --query "[?name=='my case sensitive subscription full name'].id" --output tsv)"
az account set --subscription $subscriptionId
Farklı bir kiracıdaki bir aboneliğe değiştirirseniz, etkin kiracıyı da değiştirmiş olursunuz. Microsoft Entra kiracınıza yeni abonelik eklemeyi öğrenmek için bkz . Microsoft Entra kiracınıza azure aboneliği ekleme veya ilişkilendirme.
"Aboneliğiniz... yok..." hatasına bakın . Olası çözümler için sorun giderme .
Azure yönetim grupları oluşturma
Azure yönetim grupları abonelikler içerir. Yönetim grupları bu abonelikler için erişimi, ilkeleri ve uyumluluğu yönetmek için bir yol sağlar. Daha fazla bilgi için bkz . Azure yönetim grupları nedir?
Azure Yönetim Grupları oluşturmak ve yönetmek için az account management-group komutlarını kullanın.
az account management-group create komutunu kullanarak birkaç aboneliğiniz için bir yönetim grubu oluşturabilirsiniz :
az account management-group create --name Contoso01
Tüm yönetim gruplarınızı görmek için az account management-group list komutunu kullanın:
az account management-group list
az account management-group subscription add komutunu kullanarak yeni grubunuza abonelik ekleyin :
az account management-group subscription add --name Contoso01 --subscription "My Demos"
az account management-group subscription add --name Contoso01 --subscription "My Second Demos"
Aboneliği kaldırmak için az account management-group subscription remove komutunu kullanın:
az account management-group subscription remove --name Contoso01 --subscription "My Demos"
Bir yönetim grubunu kaldırmak için az account management-group delete komutunu çalıştırın:
az account management-group delete --name Contoso01
Aboneliği kaldırmak veya yönetim grubunu silmek, aboneliği silmez veya devre dışı bırakmaz.
Azure abonelik kilidi ayarlama
Yönetici olarak, kullanıcıların aboneliği silmesini veya değiştirmesini önlemek için aboneliği kilitlemeniz gerekebilir. Daha fazla bilgi için bkz. Beklenmeyen değişiklikleri önlemek için kaynakları kilitleme.
Azure CLI'da az account lock komutlarını kullanın. Örneğin, az account lock create komutu kullanıcıların bir aboneliği silmesini engelleyebilir:
az account lock create --name "Cannot delete subscription" --lock-type CanNotDelete
Not
Kilitleri oluşturmak veya değiştirmek için abonelik üzerinde izinlere sahip contributor
olmanız gerekir.
Aboneliğinizdeki geçerli kilitleri görmek için az account lock list komutunu kullanın:
az account lock list --output table
Bir hesabı salt okunur hale getirirseniz sonuç, Okuyucu rolünün izinlerini tüm kullanıcılara atamaya benzer. Tek tek kullanıcılar ve roller için izinleri ayarlama hakkında bilgi edinmek için bkz . Azure CLI kullanarak Azure rol atamaları ekleme veya kaldırma.
Kilidin ayrıntılarını görmek için az account lock show komutunu kullanın:
az account lock show --name "Cannot delete subscription"
az account lock delete komutunu kullanarak kilidi kaldırabilirsiniz:
az account lock delete --name "Cannot delete subscription"
Sorun giderme
Abonelik yok
Yazım hatasına ek olarak, izin zamanlama sorunu olduğunda bu hatayı alabilirsiniz. Örneğin, geçerli terminal pencereniz açıkken size yeni bir abonelik için izin verildiyse, bu hata oluşabilir. Çözüm, terminal pencerenizi kapatıp yeniden açmak veya kullanılabilir abonelikler listenizi yenilemek için bunu az login
kullanmaktıraz logout
.
Aboneliği bulmanıza ve değiştirmenize yardımcı olacak bir betik aşağıdadır.
# See what subscription you are currently using.
az account show
# Get a list of available subscriptions.
az account list --output table
# If the subscription you are seeking is not in the list
# close and reopen your terminal window,
# or logout and then sign in again.
az logout
az login
# Did your available subscription list change?
az account list --output table
# If the subscription you are seeking is still not in the list,
# contact your system administrator. You cannot change your
# subscription to an ID that is not in the list.
# If the subscription you are seeking is now in the list,
# change your subscription.
az account set --subscription 00000000-0000-0000-0000-00000000000