Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Neste início rápido, você cria um provedor de recursos personalizado e implanta recursos personalizados para esse provedor de recursos. Para obter mais informações sobre provedores de recursos personalizados, consulte Visão geral dos provedores de recursos personalizados do Azure.
Pré-requisitos
- Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
- Para concluir os passos neste guia de início rápido, é necessário chamar as operações
REST. Existem diferentes formas de enviar pedidos REST.
- da CLI do Azure
- PowerShell
Prepare seu ambiente para a CLI do Azure.
Utilize o ambiente Bash no Azure Cloud Shell. Para mais informações, veja Get started with Azure Cloud Shell.
Se preferir executar comandos de referência da CLI localmente, instale o CLI do Azure. Se estiver a usar Windows ou macOS, considere executar o Azure CLI num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.
Se você estiver usando uma instalação local, entre na CLI do Azure usando o comando az login . Para concluir o processo de autenticação, siga os passos exibidos no seu terminal. Para outras opções de entrada, consulte Autenticar no Azure usando a CLI do Azure.
Quando solicitado, instale a extensão do Azure CLI na primeira utilização. Para obter mais informações sobre extensões, consulte Usar e gerenciar extensões com a CLI do Azure.
Execute az version para descobrir a versão e as bibliotecas dependentes que estão instaladas. Para atualizar para a versão mais recente, execute az upgrade.
Exemplos de CLI do Azure usam az rest para REST solicitações. Para obter mais informações, consulte az rest.
Implantar provedor de recursos personalizado
Para configurar o provedor de recursos personalizado, implante um modelo de exemplo em sua assinatura do Azure.
O modelo implanta os seguintes recursos na sua assinatura:
- Aplicativo de função com as operações para os recursos e ações.
- Conta de armazenamento para armazenar usuários criados por meio do provedor de recursos personalizado.
- Provedor de recursos personalizado que define os tipos e ações de recursos personalizados. Ele usa o ponto de extremidade do aplicativo de função para enviar solicitações.
- Recurso personalizado do provedor de recursos personalizados.
Para implantar o provedor de recursos personalizado, use a CLI do Azure, o PowerShell ou o portal do Azure.
- da CLI do Azure
- PowerShell
Este exemplo solicita que você insira um grupo de recursos, um local e o nome do aplicativo de função do provedor. Os nomes são armazenados em variáveis que são usadas em outros comandos. Os comandos az group create e az deployment group create implantam os recursos.
read -p "Enter a resource group name:" rgName &&
read -p "Enter the location (i.e. eastus):" location &&
read -p "Enter the provider's function app name:" funcName &&
templateUri="https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/custom-providers/customprovider.json" &&
az group create --name $rgName --location "$location" &&
az deployment group create --resource-group $rgName --template-uri $templateUri --parameters funcName=$funcName &&
echo "Press [ENTER] to continue ..." &&
read
Para implantar o modelo a partir do portal do Azure, selecione o botão Implantar no Azure .
Exibir provedor de recurso personalizado e recursos
No portal, o provedor de recursos personalizado é um tipo de recurso oculto. Para verificar que o provedor de recursos foi implementado, aceda ao grupo de recursos e selecione Mostrar tipos ocultos.
Para ver o recurso personalizado que o utilizador implantou, use a operação GET no seu tipo de recurso. O tipo Microsoft.CustomProviders/resourceProviders/users de recurso mostrado na resposta JSON inclui o recurso que foi criado pelo modelo.
GET https://management.azure.com/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceProviders/<provider-name>/users?api-version=2018-09-01-preview
- da CLI do Azure
- PowerShell
subID=$(az account show --query id --output tsv)
requestURI="https://management.azure.com/subscriptions/$subID/resourceGroups/$rgName/providers/Microsoft.CustomProviders/resourceProviders/$funcName/users?api-version=2018-09-01-preview"
az rest --method get --uri $requestURI
Você recebe a resposta:
{
"value": [
{
"id": "/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceProviders/<provider-name>/users/ana",
"name": "ana",
"properties": {
"FullName": "Ana Bowman",
"Location": "Moon",
"provisioningState": "Succeeded"
},
"type": "Microsoft.CustomProviders/resourceProviders/users"
}
]
}
Ação de chamada
Seu provedor de recursos personalizado também tem uma ação chamada ping. O código que processa a solicitação é implementado no aplicativo de função. A ação ping responde com uma saudação.
Para enviar uma ping solicitação, use a POST operação em sua ação.
POST https://management.azure.com/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceProviders/<provider-name>/ping?api-version=2018-09-01-preview
- da CLI do Azure
- PowerShell
pingURI="https://management.azure.com/subscriptions/$subID/resourceGroups/$rgName/providers/Microsoft.CustomProviders/resourceProviders/$funcName/ping?api-version=2018-09-01-preview"
az rest --method post --uri $pingURI
Você recebe a resposta:
{
"message": "hello <function-name>.azurewebsites.net",
"pingcontent": {
"source": "<function-name>.azurewebsites.net"
}
}
Use PUT para criar recursos
Neste início rápido, o modelo usou o tipo Microsoft.CustomProviders/resourceProviders/users de recurso para implantar um recurso. Você também pode usar uma PUT operação para criar um recurso. Por exemplo, se um recurso não for implantado com o modelo, a PUT operação criará um recurso.
Neste exemplo, como o modelo já implantou um recurso, a PUT operação cria um novo recurso.
PUT https://management.azure.com/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceProviders/<provider-name>/users/<resource-name>?api-version=2018-09-01-preview
{"properties":{"FullName": "Test User", "Location": "Earth"}}
- da CLI do Azure
- PowerShell
addURI="https://management.azure.com/subscriptions/$subID/resourceGroups/$rgName/providers/Microsoft.CustomProviders/resourceProviders/$funcName/users/testuser?api-version=2018-09-01-preview"
az rest --method put --uri $addURI --body "{'properties':{'FullName': 'Test User', 'Location': 'Earth'}}"
Você recebe a resposta:
{
"id": "/subscriptions/<sub-ID>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceProviders/<provider-name>/users/testuser",
"name": "testuser",
"properties": {
"FullName": "Test User",
"Location": "Earth",
"provisioningState": "Succeeded"
},
"type": "Microsoft.CustomProviders/resourceProviders/users"
}
Você pode executar novamente a GET operação na seção exibir provedor de recursos personalizado e recurso para mostrar os dois recursos que foram criados. Este exemplo mostra a saída do comando CLI do Azure.
{
"value": [
{
"id": "/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceProviders/<provider-name>/users/ana",
"name": "ana",
"properties": {
"FullName": "Ana Bowman",
"Location": "Moon",
"provisioningState": "Succeeded"
},
"type": "Microsoft.CustomProviders/resourceProviders/users"
},
{
"id": "/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceProviders/<provider-name>/users/testuser",
"name": "testuser",
"properties": {
"FullName": "Test User",
"Location": "Earth",
"provisioningState": "Succeeded"
},
"type": "Microsoft.CustomProviders/resourceProviders/users"
}
]
}
Comandos personalizados do provedor de recursos
Use os comandos custom-providers para trabalhar com seu provedor de recursos personalizado.
Listar provedores de recursos personalizados
Use o list comando para exibir todos os provedores de recursos personalizados em uma assinatura. O padrão lista os provedores de recursos personalizados da assinatura atual ou você pode especificar o --subscription parâmetro. Para listar um grupo de recursos, use o --resource-group parâmetro.
az custom-providers resource-provider list --subscription $subID
[
{
"actions": [
{
"endpoint": "https://<provider-name>.azurewebsites.net/api/{requestPath}",
"name": "ping",
"routingType": "Proxy"
}
],
"id": "/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.CustomProviders/resourceproviders/<provider-name>",
"location": "eastus",
"name": "<provider-name>",
"provisioningState": "Succeeded",
"resourceGroup": "<rg-name>",
"resourceTypes": [
{
"endpoint": "https://<provider-name>.azurewebsites.net/api/{requestPath}",
"name": "users",
"routingType": "Proxy, Cache"
}
],
"tags": {},
"type": "Microsoft.CustomProviders/resourceproviders",
"validations": null
}
]
Mostrar as propriedades
Use o show comando para exibir as propriedades do provedor de recursos personalizado. O formato de saída parece-se com a saída list.
az custom-providers resource-provider show --resource-group $rgName --name $funcName
Criar um novo recurso
Use o create comando para criar ou atualizar um provedor de recursos personalizado. Este exemplo atualiza o actions e resourceTypes.
az custom-providers resource-provider create --resource-group $rgName --name $funcName \
--action name=ping endpoint=https://myTestSite.azurewebsites.net/api/{requestPath} routing_type=Proxy \
--resource-type name=users endpoint=https://myTestSite.azurewebsites.net/api/{requestPath} routing_type="Proxy, Cache"
"actions": [
{
"endpoint": "https://myTestSite.azurewebsites.net/api/{requestPath}",
"name": "ping",
"routingType": "Proxy"
}
],
"resourceTypes": [
{
"endpoint": "https://myTestSite.azurewebsites.net/api/{requestPath}",
"name": "users",
"routingType": "Proxy, Cache"
}
],
Atualizar as etiquetas do provedor
O update comando apenas atualiza tags para um provedor de recursos personalizado. No portal do Azure, o serviço de aplicação do provedor de recursos personalizado mostra a etiqueta.
az custom-providers resource-provider update --resource-group $rgName --name $funcName --tags new=tag
"tags": {
"new": "tag"
},
Excluir um provedor de recursos personalizado
O comando delete solicita uma resposta e exclui apenas o provedor de recursos personalizado. A conta de armazenamento, o serviço de aplicativo e o plano de serviço de aplicativo não são excluídos. Depois que o provedor for excluído, você retornará a um prompt de comando.
az custom-providers resource-provider delete --resource-group $rgName --name $funcName
Limpeza de recursos
Se tiver terminado com os recursos criados neste artigo, pode eliminar o grupo de recursos. Quando você exclui um grupo de recursos, todos os recursos desse grupo de recursos são excluídos.
- da CLI do Azure
- PowerShell
az group delete --resource-group $rgName
Próximos passos
Para obter uma introdução aos provedores de recursos personalizados, consulte o seguinte artigo: