Compartilhar via


Obtenha os valores necessários para autenticar um aplicativo para acessar o Banco de Dados SQL do Azure do código

Aplica-se a: Banco de Dados SQL do Azure

Para criar e gerenciar um Banco de Dados SQL do Azure com base no código, você deve registrar seu aplicativo com o Microsoft Entra ID (anteriormente, Azure Active Directory). O aplicativo deve ser registrado no mesmo locatário do Microsoft Entra que seu recurso do Banco de Dados SQL do Azure.

Criar uma entidade de serviço para acessar os recursos de um aplicativo

Os seguintes exemplos criam o aplicativo do Microsoft Entra e a entidade de serviço de que precisamos para autenticar nosso aplicativo C#. O script gera os valores necessários para o exemplo anterior do C#. Para obter informações detalhadas, consulte usar o Azure PowerShell para criar uma entidade de serviço para acessar os recursos.

Importante

O módulo RM (Azure Resource Manager) do PowerShell ainda tem suporte do Banco de Dados SQL, mas todo o desenvolvimento futuro é para o módulo Az.Sql. O módulo AzureRM continuará a receber as correções de bugs até pelo menos dezembro de 2020. Os argumentos para os comandos no módulo Az e nos módulos AzureRm são substancialmente idênticos. Para saber mais sobre a compatibilidade entre eles, confira Apresentação do novo módulo Az do Azure PowerShell.

# sign in to Azure
Connect-AzAccount

# for multiple subscriptions, uncomment and set to the subscription you want to work with
#$subscriptionId = "{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}"
#Set-AzContext -SubscriptionId $subscriptionId

$appName = "{app-name}" # display name for your app, must be unique in your directory
$uri = "http://{app-name}" # does not need to be a real uri
$secret = "{app-password}"

# create an AAD app
$azureAdApplication = New-AzADApplication -DisplayName $appName -HomePage $Uri -IdentifierUris $Uri -Password $secret

# create a Service Principal for the app
$svcprincipal = New-AzADServicePrincipal -ApplicationId $azureAdApplication.ApplicationId

Start-Sleep -s 15 # to avoid a PrincipalNotFound error, pause here for 15 seconds

# if you still get a PrincipalNotFound error, then rerun the following until successful.
$roleassignment = New-AzRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $azureAdApplication.ApplicationId.Guid

# output the values we need for our C# application to successfully authenticate
Write-Output "Copy these values into the C# sample app"

Write-Output "_subscriptionId:" (Get-AzContext).Subscription.SubscriptionId
Write-Output "_tenantId:" (Get-AzContext).Tenant.TenantId
Write-Output "_applicationId:" $azureAdApplication.ApplicationId.Guid
Write-Output "_applicationSecret:" $secret

Confira também

Criar um banco de dados no Banco de Dados SQL do Azure com C#
Conectar-se ao Banco de Dados SQL do Azure usando a autenticação do Microsoft Entra