İngilizce dilinde oku

Aracılığıyla paylaş


Azure kaynak sağlayıcıları ve türleri

Azure kaynak sağlayıcısı, belirli bir Azure hizmeti için işlevselliği destekleyen rest işlemleri kümesidir. Örneğin, Azure Key Vault hizmeti Microsoft.KeyVault adlı bir kaynak sağlayıcısından oluşur. Kaynak sağlayıcısı kasaları, gizli dizileri, anahtarları ve sertifikaları yönetmek için REST işlemlerini tanımlar.

Kaynak sağlayıcısı, hesabınıza dağıtabileceğiniz Azure kaynaklarını tanımlar. Kaynak türünün adı şu biçimdedir: {resource-provider}/{resource-type}. Anahtar kasasının kaynak türü Microsoft.KeyVault/vaults'tur.

Bu makalede şunları öğreneceksiniz:

  • Azure'daki tüm kaynak sağlayıcılarını görüntüleyin.
  • Kaynak sağlayıcısının kayıt durumunu denetleyin.
  • Bir kaynak sağlayıcısı kaydedin.
  • Kaynak sağlayıcısının kaynak türlerini görüntüleme.
  • Kaynak türü için geçerli konumları görüntüleme.
  • Kaynak türü için geçerli API sürümlerini görüntüleyin.

Kaynak sağlayıcılarını Azure hizmetlerine eşleyen bir liste için bkz . Azure kaynak sağlayıcıları ve türleri.

Kaynak sağlayıcısını kaydetme

Kaynak sağlayıcısını kullanmadan önce Azure aboneliğinizin kaynak sağlayıcısı için kayıtlı olduğundan emin olun. Kayıt, aboneliğinizi kaynak sağlayıcısıyla çalışacak şekilde yapılandırıyor.

Önemli

Bir kaynak sağlayıcısını yalnızca kullanmaya hazır olduğunuzda kaydedin. Bu kayıt adımı, aboneliğinizde en az ayrıcalıkların korunmasına yardımcı olur. Kötü amaçlı bir kullanıcı, kayıtlı olmayan kaynak sağlayıcılarını kullanamaz.

Bir kaynak sağlayıcısı kaydettiğinizde Microsoft, kaynak sağlayıcısı için bir uygulama ekler. Gereksiz kaynak sağlayıcılarının kaydedilmesi, tanımadığınız uygulamaların Microsoft Entra kiracınızda görünmesine neden olabilir. Windows Azure Hizmet Yönetimi API'si genellikle bu uygulamaları ekler. Kiracınızdaki gereksiz uygulamaları sınırlamak için yalnızca ihtiyacınız olan kaynak sağlayıcılarını kaydedin.

Bazı kaynak sağlayıcıları varsayılan olarak kaydedilir. Örneklerin listesi için bkz . Azure hizmetleri için kaynak sağlayıcıları.

Belirli eylemleri gerçekleştirdiğinizde Azure, diğer kaynak sağlayıcılarını otomatik olarak kaydeder. Azure portalında bir kaynak oluşturduğunuzda portal genellikle kaynak sağlayıcısını sizin için kaydeder. Bir Azure Resource Manager şablonu veya Bicep dosyası dağıttığınızda Azure, şablonda tanımlanan kaynak sağlayıcılarını otomatik olarak kaydeder. Bazen şablondaki bir kaynak, şablonda olmayan destekleyici kaynaklar gerektirir. yaygın örnekler izleme veya güvenlik kaynaklarıdır. Bu kaynak sağlayıcılarını el ile kaydetmeniz gerekir.

Diğer senaryolarda kaynak sağlayıcısını el ile kaydetmeniz gerekebilir.

Önemli

Uygulama kodunuz, kayıt durumundaki bir kaynak sağlayıcısı için kaynak oluşturulmasını engellememelidir. Kaynak sağlayıcısını kaydettiğinizde, işlem desteklenen her bölge için ayrı ayrı gerçekleştirilir. Bir bölgede kaynak oluşturmak için kaydın yalnızca o bölgede tamamlanması gerekir. Uygulamanız kayıt durumundaki bir kaynak sağlayıcısını engellemediğinde, tüm bölgelerin tamamlanmasını beklemekten daha erken devam edebilir.

Kaynak sağlayıcısı için /register/action işlemi yapma izniniz olmalıdır. İzin Katkıda Bulunan ve Sahip rollerine eklenir.

Aboneliğinizde bu kaynak sağlayıcısının kaynak türleri hala varken kaynak sağlayıcısının kaydını kaldıramazsınız.

Kaynak sağlayıcısı kullanmanız gereken yeni konumları desteklediğinde kaynak sağlayıcısını yeniden kaydedin.

Azure portal

Kaynak sağlayıcısını kaydetme

Tüm kaynak sağlayıcılarını ve aboneliğinizin kayıt durumunu görmek için:

  1. Azure Portal’ında oturum açın.

  2. Azure portal menüsünde Abonelikler için arama yapın. Kullanılabilir seçeneklerden bunu seçin.

    Azure portalında abonelik arama işleminin ekran görüntüsü.

  3. Görüntülemek istediğiniz aboneliği seçin.

  4. Soldaki menüde ve Ayarlar'ın altında Kaynak sağlayıcıları'nı seçin.

    Azure portalında kaynak sağlayıcıları seçme işleminin ekran görüntüsü.

  5. Kaydetmek istediğiniz kaynak sağlayıcısını bulun.

    Azure portalında kaynak sağlayıcılarını bulma işleminin ekran görüntüsü.

  6. Kaynak sağlayıcısının ayrıntılarını görmek için kaynak sağlayıcısını seçin.

    Azure portalında Kaynak sağlayıcısı ayrıntılarının ekran görüntüsü.

  7. Kaynak sağlayıcısını seçin ve Kaydet'i seçin. Aboneliğinizde en az ayrıcalıkları korumak için yalnızca kullanmaya hazır olduğunuz kaynak sağlayıcılarını kaydedin.

    Azure portalında kaynak sağlayıcısı kaydetme işleminin ekran görüntüsü.

    Önemli

    Daha önce belirtildiği gibi, kayıt durumundaki bir kaynak sağlayıcısı için kaynak oluşturulmasını engellemeyin. Uygulamanız kayıt durumundaki bir kaynak sağlayıcısını engellemediğinde, tüm bölgelerin tamamlanmasını beklemekten daha erken devam edebilir.

  8. Önceki kayıt sonrasında eklediğiniz konumları kullanmak için bir kaynak sağlayıcısını yeniden kaydedin .

    Azure portalında kaynak sağlayıcısını yeniden kaydetme işleminin ekran görüntüsü.

Kaynak sağlayıcısını görüntüleme

Belirli bir kaynak sağlayıcısının bilgilerini görmek için:

  1. Azure Portal’ında oturum açın.

  2. Azure portalı menüsünde Tüm hizmetler'i seçin.

  3. Tüm hizmetler kutusuna kaynak gezgini yazın ve Kaynak Gezgini'ni seçin.

    Azure Kaynak Gezgini'ne erişmek için Azure portalında Tüm hizmetler'i seçme işleminin ekran görüntüsü.

  4. Sağlayıcılar'ı genişletmek için sağ oku seçin.

    Kaynak Gezgini'nde Sağlayıcılar bölümünü genişletme işleminin ekran görüntüsü.

  5. Görüntülemek istediğiniz kaynak sağlayıcısını ve kaynak türünü genişletin.

  6. Resource Manager tüm bölgelerde desteklenir, ancak dağıttığınız kaynaklar tüm bölgelerde desteklenmeyebilir. Ayrıca, aboneliğinizde kaynağı destekleyen bazı bölgeleri kullanmanızı engelleyen sınırlamalar olabilir. Kaynak Gezgini kaynak türü için geçerli konumları görüntüler.

    Kaynak Gezgini'nde bir kaynak türü için geçerli konumları görüntüleme işleminin ekran görüntüsü.

  7. API sürümü, kaynak sağlayıcısının REST API işlemlerinin bir sürümüne karşılık gelir. Kaynak sağlayıcısı yeni özellikleri etkinleştirdiğinden REST API'nin yeni bir sürümünü yayınlar. Kaynak Gezgini, kaynak türü için geçerli API sürümlerini görüntüler.

    Kaynak Gezgini'nde bir kaynak türü için geçerli API sürümlerini görüntüleme işleminin ekran görüntüsü.

Azure PowerShell

Azure'daki tüm kaynak sağlayıcılarını ve aboneliğinizin kayıt durumunu görmek için şunu kullanın:

Azure PowerShell
Get-AzResourceProvider -ListAvailable | Select-Object ProviderNamespace, RegistrationState

Komut şunu döndürür:

Output
ProviderNamespace                RegistrationState
-------------------------------- ------------------
Microsoft.ClassicCompute         Registered
Microsoft.ClassicNetwork         Registered
Microsoft.ClassicStorage         Registered
Microsoft.CognitiveServices      Registered
...

Aboneliğinizin tüm kayıtlı kaynak sağlayıcılarını görmek için şunu kullanın:

Azure PowerShell
 Get-AzResourceProvider -ListAvailable | Where-Object RegistrationState -eq "Registered" | Select-Object ProviderNamespace, RegistrationState | Sort-Object ProviderNamespace

Aboneliğinizdeki en düşük ayrıcalıkları korumak için yalnızca kullanmaya hazır olduğunuz kaynak sağlayıcılarını kaydedin. Kaynak sağlayıcısını kaydetmek için şunu kullanın:

Azure PowerShell
Register-AzResourceProvider -ProviderNamespace Microsoft.Batch

Komut şunu döndürür:

Output
ProviderNamespace : Microsoft.Batch
RegistrationState : Registering
ResourceTypes     : {batchAccounts, operations, locations, locations/quotas}
Locations         : {West Europe, East US, East US 2, West US...}

Önemli

Daha önce belirtildiği gibi, kayıt durumundaki bir kaynak sağlayıcısı için kaynak oluşturulmasını engellemeyin. Uygulamanız kayıt durumundaki bir kaynak sağlayıcısını engellemediğinde, tüm bölgelerin tamamlanmasını beklemekten daha erken devam edebilir.

Azure'ın önceki kayıt sonrasında eklediği konumları kullanmak için bir kaynak sağlayıcısını yeniden kaydedin. Kaydı yeniden kaydetmek için kayıt komutunu yeniden çalıştırın.

Belirli bir kaynak sağlayıcısının bilgilerini görmek için şunu kullanın:

Azure PowerShell
Get-AzResourceProvider -ProviderNamespace Microsoft.Batch

Komut şunu döndürür:

Output
{ProviderNamespace : Microsoft.Batch
RegistrationState : Registered
ResourceTypes     : {batchAccounts}
Locations         : {West Europe, East US, East US 2, West US...}

...

Bir kaynak sağlayıcısının kaynak türlerini görmek için şunu kullanın:

Azure PowerShell
(Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes.ResourceTypeName

Komut şunu döndürür:

Output
batchAccounts
operations
locations
locations/quotas

API sürümü, kaynak sağlayıcısının REST API işlemlerinin bir sürümüne karşılık gelir. Kaynak sağlayıcısı yeni özellikleri etkinleştirdiğinden REST API'nin yeni bir sürümünü yayınlar.

Bir kaynak türü için kullanılabilir API sürümlerini almak için şunu kullanın:

Azure PowerShell
((Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes | Where-Object ResourceTypeName -eq batchAccounts).ApiVersions

Komut şunu döndürür:

Output
2023-05-01
2022-10-01
2022-06-01
2022-01-01
2021-06-01
2021-01-01
...

Resource Manager tüm bölgelerde desteklenir, ancak dağıttığınız kaynaklar tüm bölgelerde desteklenmeyebilir. Ayrıca, aboneliğinizde kaynağı destekleyen bazı bölgeleri kullanmanızı engelleyen sınırlamalar olabilir.

Bir kaynak türü için desteklenen konumları almak için şunu kullanın:

Azure PowerShell
((Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes | Where-Object ResourceTypeName -eq batchAccounts).Locations

Komut şunu döndürür:

Output
West Europe
East US
East US 2
West US
...

Azure CLI

Azure'daki tüm kaynak sağlayıcılarını ve aboneliğinizin kayıt durumunu görmek için şunu kullanın:

Azure CLI
az provider list --query "[].{Provider:namespace, Status:registrationState}" --out table

Komut şunu döndürür:

Output
Provider                         Status
-------------------------------- ----------------
Microsoft.ClassicCompute         Registered
Microsoft.ClassicNetwork         Registered
Microsoft.ClassicStorage         Registered
Microsoft.CognitiveServices      Registered
...

Aboneliğinizin tüm kayıtlı kaynak sağlayıcılarını görmek için şunu kullanın:

Azure CLI
az provider list --query "sort_by([?registrationState=='Registered'].{Provider:namespace, Status:registrationState}, &Provider)" --out table

Aboneliğinizdeki en düşük ayrıcalıkları korumak için yalnızca kullanmaya hazır olduğunuz kaynak sağlayıcılarını kaydedin. Kaynak sağlayıcısını kaydetmek için şunu kullanın:

Azure CLI
az provider register --namespace Microsoft.Batch

komutu, kaydın devam ettiğini belirten bir ileti döndürür.

Belirli bir kaynak sağlayıcısının bilgilerini görmek için şunu kullanın:

Azure CLI
az provider show --namespace Microsoft.Batch

Komut şunu döndürür:

Output
{
    "id": "/subscriptions/####-####/providers/Microsoft.Batch",
    "namespace": "Microsoft.Batch",
    "registrationsState": "Registering",
    "resourceTypes:" [
        ...
    ]
}

Önemli

Daha önce belirtildiği gibi, kayıt durumundaki bir kaynak sağlayıcısı için kaynak oluşturulmasını engellemeyin. Uygulamanız kayıt durumundaki bir kaynak sağlayıcısını engellemediğinde, tüm bölgelerin tamamlanmasını beklemekten daha erken devam edebilir.

Bir kaynak sağlayıcısının kaynak türlerini görmek için şunu kullanın:

Azure CLI
az provider show --namespace Microsoft.Batch --query "resourceTypes[*].resourceType" --out table

Komut şunu döndürür:

Output
Result
---------------
batchAccounts
operations
locations
locations/quotas

API sürümü, kaynak sağlayıcısının REST API işlemlerinin bir sürümüne karşılık gelir. Kaynak sağlayıcısı yeni özellikleri etkinleştirdiğinden REST API'nin yeni bir sürümünü yayınlar.

Bir kaynak türü için kullanılabilir API sürümlerini almak için şunu kullanın:

Azure CLI
az provider show --namespace Microsoft.Batch --query "resourceTypes[?resourceType=='batchAccounts'].apiVersions | [0]" --out table

Komut şunu döndürür:

Output
Result
---------------
2023-05-01
2022-10-01
2022-06-01
2022-01-01
...

Resource Manager tüm bölgelerde desteklenir, ancak dağıttığınız kaynaklar tüm bölgelerde desteklenmeyebilir. Ayrıca, aboneliğinizde kaynağı destekleyen bazı bölgeleri kullanmanızı engelleyen sınırlamalar olabilir.

Bir kaynak türü için desteklenen konumları almak için şunu kullanın:

Azure CLI
az provider show --namespace Microsoft.Batch --query "resourceTypes[?resourceType=='batchAccounts'].locations | [0]" --out table

Komut şunu döndürür:

Output
Result
---------------
West Europe
East US
East US 2
West US
...

Python

Azure'daki tüm kaynak sağlayıcılarını ve aboneliğinizin kayıt durumunu görmek için şunu kullanın:

Python
import os  
from azure.identity import DefaultAzureCredential  
from azure.mgmt.resource import ResourceManagementClient  
  
# Authentication  
credential = DefaultAzureCredential()  
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]  
  
# Initialize Resource Management client  
resource_management_client = ResourceManagementClient(credential, subscription_id)  
  
# List available resource providers and select ProviderNamespace and RegistrationState  
providers = resource_management_client.providers.list()  
  
for provider in providers:  
    print(f"ProviderNamespace: {provider.namespace}, RegistrationState: {provider.registration_state}")  

Komut şunu döndürür:

Output
ProviderNamespace: Microsoft.AlertsManagement, RegistrationState: Registered
ProviderNamespace: Microsoft.AnalysisServices, RegistrationState: Registered
ProviderNamespace: Microsoft.ApiManagement, RegistrationState: Registered
ProviderNamespace: Microsoft.Authorization, RegistrationState: Registered
ProviderNamespace: Microsoft.Batch, RegistrationState: Registered
...

Aboneliğinizin tüm kayıtlı kaynak sağlayıcılarını görmek için şunu kullanın:

Python
# List available resource providers with RegistrationState "Registered" and select ProviderNamespace and RegistrationState  
providers = resource_management_client.providers.list()  
registered_providers = [provider for provider in providers if provider.registration_state == "Registered"]  
  
# Sort by ProviderNamespace  
sorted_registered_providers = sorted(registered_providers, key=lambda x: x.namespace)  
  
for provider in sorted_registered_providers:  
    print(f"ProviderNamespace: {provider.namespace}, RegistrationState: {provider.registration_state}")  

Aboneliğinizdeki en düşük ayrıcalıkları korumak için yalnızca kullanmaya hazır olduğunuz kaynak sağlayıcılarını kaydedin. Kaynak sağlayıcısını kaydetmek için şunu kullanın:

Python
import os  
from azure.identity import DefaultAzureCredential  
from azure.mgmt.resource import ResourceManagementClient  
  
# Authentication  
credential = DefaultAzureCredential()  
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]  
  
# Initialize Resource Management client  
resource_management_client = ResourceManagementClient(credential, subscription_id)  
  
# Register resource provider  
provider_namespace = "Microsoft.Batch"  
registration_result = resource_management_client.providers.register(provider_namespace)  
  
print(f"ProviderNamespace: {registration_result.namespace}, RegistrationState: {registration_result.registration_state}")  

Komut şunu döndürür:

Output
ProviderNamespace: Microsoft.Batch, RegistrationState: Registered

Önemli

Daha önce belirtildiği gibi, kayıt durumundaki bir kaynak sağlayıcısı için kaynak oluşturulmasını engellemeyin. Uygulamanız kayıt durumundaki bir kaynak sağlayıcısını engellemediğinde, tüm bölgelerin tamamlanmasını beklemekten daha erken devam edebilir.

Önceki kayıt sonrasında Azure tarafından eklenen konumları kullanmak için kaynak sağlayıcısının kaydını yeniden kaydedin. Kaydı yeniden kaydetmek için kayıt komutunu yeniden çalıştırın.

Belirli bir kaynak sağlayıcısının bilgilerini görmek için şunu kullanın:

Python
import os  
from azure.identity import DefaultAzureCredential  
from azure.mgmt.resource import ResourceManagementClient  
  
# Authentication  
credential = DefaultAzureCredential()  
subscription_id = os.environ["AZURE_SUBSCRIPTION_ID"]  
  
# Initialize Resource Management client  
resource_management_client = ResourceManagementClient(credential, subscription_id)  
  
# Get resource provider by ProviderNamespace  
provider_namespace = "Microsoft.Batch"  
provider = resource_management_client.providers.get(provider_namespace)  
  
print(f"ProviderNamespace: {provider.namespace}, RegistrationState: {provider.registration_state}\n")  
  
# Add resource types, locations, and API versions with new lines to separate results  
for resource_type in provider.resource_types:  
    print(f"ResourceType: {resource_type.resource_type}\nLocations: {', '.join(resource_type.locations)}\nAPIVersions: {', '.join(resource_type.api_versions)}\n")  

Komut şunu döndürür:

Output
ProviderNamespace: Microsoft.Batch, RegistrationState: Registered

ResourceType: batchAccounts
Locations: West Europe, East US, East US 2, West US, North Central US, Brazil South, North Europe, Central US, East Asia, Japan East, Australia Southeast, Japan West, Korea South, Korea Central, Southeast Asia, South Central US, Australia East, Jio India West, South India, Central India, West India, Canada Central, Canada East, UK South, UK West, West Central US, West US 2, France Central, South Africa North, UAE North, Australia Central, Germany West Central, Switzerland North, Norway East, Brazil Southeast, West US 3, Sweden Central, Qatar Central, Poland Central, East US 2 EUAP, Central US EUAP
APIVersions: 2023-05-01, 2022-10-01, 2022-06-01, 2022-01-01, 2021-06-01, 2021-01-01, 2020-09-01, 2020-05-01, 2020-03-01-preview, 2020-03-01, 2019-08-01, 2019-04-01, 2018-12-01, 2017-09-01, 2017-05-01, 2017-01-01, 2015-12-01, 2015-09-01, 2015-07-01, 2014-05-01-privatepreview

...

Bir kaynak sağlayıcısının kaynak türlerini görmek için şunu kullanın:

Python
# Get resource provider by ProviderNamespace  
provider_namespace = "Microsoft.Batch"  
provider = resource_management_client.providers.get(provider_namespace)  
  
# Get ResourceTypeName of the resource types  
resource_type_names = [resource_type.resource_type for resource_type in provider.resource_types]  
  
for resource_type_name in resource_type_names:  
    print(resource_type_name)  

Komut şunu döndürür:

Output
batchAccounts
batchAccounts/pools
batchAccounts/detectors
batchAccounts/certificates
operations
locations
locations/quotas
locations/checkNameAvailability
locations/accountOperationResults
locations/virtualMachineSkus
locations/cloudServiceSkus

API sürümü, kaynak sağlayıcısının REST API işlemlerinin bir sürümüne karşılık gelir. Kaynak sağlayıcısı yeni özellikleri etkinleştirdiğinden REST API'nin yeni bir sürümünü yayınlar.

Bir kaynak türü için kullanılabilir API sürümlerini almak için şunu kullanın:

Python
# Get resource provider by ProviderNamespace  
provider_namespace = "Microsoft.Batch"  
provider = resource_management_client.providers.get(provider_namespace)  
  
# Filter resource type by ResourceTypeName and get its ApiVersions  
resource_type_name = "batchAccounts"  
api_versions = [  
    resource_type.api_versions  
    for resource_type in provider.resource_types  
    if resource_type.resource_type == resource_type_name  
]  
  
for api_version in api_versions[0]:  
    print(api_version)  

Komut şunu döndürür:

Output
2023-05-01
2022-10-01
2022-06-01
2022-01-01
...

Resource Manager tüm bölgelerde desteklenir, ancak dağıttığınız kaynaklar tüm bölgelerde desteklenmeyebilir. Ayrıca, aboneliğinizde kaynağı destekleyen bazı bölgeleri kullanmanızı engelleyen sınırlamalar olabilir.

Bir kaynak türü için desteklenen konumları almak için şunu kullanın:

Python
# Get resource provider by ProviderNamespace  
provider_namespace = "Microsoft.Batch"  
provider = resource_management_client.providers.get(provider_namespace)  
  
# Filter resource type by ResourceTypeName and get its Locations  
resource_type_name = "batchAccounts"  
locations = [  
    resource_type.locations  
    for resource_type in provider.resource_types  
    if resource_type.resource_type == resource_type_name  
]  
  
for location in locations[0]:  
    print(location)  

Komut şunu döndürür:

Output
West Europe
East US
East US 2
West US
...

Sonraki adımlar

Not: Yazar bu makaleyi yapay zeka yardımıyla oluşturmuştur. Daha fazla bilgi edinin