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.
Aplica-se a:SQL Server
Este artigo lista as permissões que a extensão do Azure para SQL Server concede à conta quando você usa o NT Service\SQLServerExtensionmenor privilégio para instâncias do SQL Server habilitadas pelo Azure Arc. Com a configuração de privilégios mínimos, a extensão concede apenas as permissões necessárias quando você habilita recursos no portal do Azure.
Note
NT Authority\System deve ter acesso para modificar permissões em diretórios listados e chaves do Registro. Esse acesso é necessário para que NT Authority\System possa conceder o acesso necessário à conta para o NT Service\SqlServerExtension modo de privilégio mínimo.
Overview
Quando você conecta o SQL Server ao Azure Arc com o menor privilégio habilitado, a extensão do Azure Arc concede sua conta de serviço, NT SERVICE\SQLServerExtension, somente as permissões de que cada recurso precisa quando você habilita esse recurso. A extensão remove automaticamente essas permissões se você desativar o recurso. Se um recurso estiver inativo, a extensão não concederá permissões para esse recurso.
Não há suporte para a configuração manual das permissões para a conta do agente.
Note
Atualmente, a configuração menos privilegiada não é aplicada por padrão.
Os servidores existentes com versão 1.1.2859.223 de extensão ou superior acabarão por ter a configuração menos privilegiada aplicada. Esta extensão foi lançada em novembro de 2024. Para evitar a atribuição automática do privilégio mínimo, bloqueie as atualizações de extensão após 1.1.2859.223.
A seção Privilégios SQL por recurso explica as permissões que a extensão concede quando você habilita os seguintes recursos:
- Permissões padrão para a extensão
- Backups automatizados
- Grupos de disponibilidade
- Avaliação das melhores práticas
- Avaliação da migração
- Migração de banco de dados
- Restauro para um ponto anterior no tempo
- Purview
Permissões de diretório
| Caminho do diretório | Permissões necessárias | Details | Feature |
|---|---|---|---|
<SystemDrive>\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SQLServer |
Controlo total | DLLs e arquivos EXE relacionados à extensão. | Default |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\RuntimeSettings |
Controlo total | Arquivo de configurações de extensão. | Default |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status |
Controlo total | Arquivo de status da extensão. | Default |
C:\ProgramData\GuestConfig\extension_logs\Microsoft.AzureData.WindowsAgent.SqlServer |
Controlo total | Arquivos de log de extensão. | Default |
C:\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SqlServer\<extension_version>\status\HeartBeat.Json |
Controlo total | Arquivo de pulsação de extensão. | Default |
%ProgramFiles%\Sql Server Extension |
Controlo total | Arquivos de serviço de extensão. | Default |
<SystemDrive>\Windows\system32\extensionUpload |
Controlo total | Necessário para gravar o arquivo de uso necessário para faturamento. | Default |
<SystemDrive>\Windows\system32\ExtensionHandler.log |
Controlo total | Pasta pré-log criada por extensão. | Default |
<ProgramData>\AzureConnectedMachineAgent\Config |
Read | Arc config files diretório. | Default |
C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft SQL Server Extension Agent |
Controlo total | Necessário para escrever relatórios de avaliação e status. | Default |
Diretório de log SQL (conforme definido no registro) 1 :C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\log |
Read | Necessário para extrair informações do SQL vCores de logs SQL. | Default |
Diretório de backup SQL (conforme definido no registro) 1 :C:\Program Files\Microsoft SQL Server\MSSQL<base_version>.<instance_name>\MSSQL\Backup |
ReadAndExecute/Write/Delete | Necessário para backups | Backup |
1 Para obter mais informações, consulte Locais de arquivos e mapeamento do Registro.
Permissões do Registro
Chave base: HKEY_LOCAL_MACHINE
| Chave de registo | Permissão necessária | Details | Feature |
|---|---|---|---|
SOFTWARE\Microsoft\Microsoft SQL Server |
Read | Leia as propriedades do SQL Server como installedInstances. |
Default |
SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRegistryName>\MSSQLSERVER |
Controlo total | Microsoft Entra ID e Purview. | Microsoft Entra ID Purview |
SOFTWARE\Microsoft\SystemCertificates |
Controlo total | Necessário para o Microsoft Entra ID. | Microsoft Entra ID |
SYSTEM\CurrentControlSet\Services |
Read | Nome da conta do SQL Server. | Default |
SOFTWARE\Microsoft\AzureDefender\SQL |
Read | Status do Azure Defender e hora da última atualização. | Default |
SOFTWARE\Microsoft\SqlServerExtension |
Controlo total | Valores relacionados à extensão. | Default |
SOFTWARE\Policies\Microsoft\Windows |
Ler e escrever | Ativando a atualização automática do Windows via extensão. | Atualizações automáticas |
Permissões de grupo
NT Service\SQLServerExtension é adicionado aos aplicativos de extensão de agente híbrido. Isso permite que o handshake do IMDS (Serviço de Metadados de Instância) do Azure recupere o token de identidade gerenciado por recurso de máquina necessário para se comunicar com os serviços de plano de dados do Azure, como o DPS (Serviço de Processamento de Dados) e o ponto de extremidade de telemetria para uso de cobrança, logs de extensão e coleta de dados do painel de monitoramento.
Permissões SQL
A NT Service\SQLServerExtension conta é adicionada:
- Como um logon SQL para todas as instâncias atualmente presentes na máquina
- Como utilizador em cada base de dados
A extensão também concede permissões para objetos de instância e banco de dados à medida que os recursos são habilitados.
Note
As permissões mínimas dependem dos recursos habilitados. A extensão atualiza as permissões quando elas não são mais necessárias. Ele concede as permissões necessárias quando você habilita recursos.
NT Service\SQLServerExtension Detalhes da permissão da conta
| Caminho do Registro | Permissão | O risco associado às permissões se a NT Service\SQLServerExtension conta for comprometida |
|---|---|---|
SOFTWARE\Microsoft\Microsoft SQL Server |
Read | A extensão pode ver quais versões do SQL Server estão instaladas. |
SOFTWARE\Microsoft\Microsoft SQL Server\\MSSQLSERVER |
Controlo total | Apenas necessário quando a autenticação do Microsoft Entra ou o Purview está ativado. A extensão pode modificar a configuração do SQL Server. |
SOFTWARE\Microsoft\SystemCertificates |
Controlo total | Apenas necessário quando a autenticação do Microsoft Entra está ativada. A extensão pode substituir as autoridades de certificação raiz confiáveis. |
SYSTEM\CurrentControlSet\Services |
Read | A extensão pode ver os nomes das contas de serviço. |
SOFTWARE\Microsoft\AzureDefender\SQL |
Read | A extensão pode aprender o status do Microsoft Defender e os tempos de atualização. |
SOFTWARE\Microsoft\SqlServerExtension |
Controlo total | A extensão pode alterar as configurações da extensão. |
SOFTWARE\Policies\Microsoft\Windows |
Ler e escrever | Apenas necessário quando a atualização automática está ativada. A extensão pode alterar as políticas do Windows Update e desativar o Device Guard, que controla a integridade do código e a segurança baseada em virtualização, exposição estendida devido a patches perdidos. |
Privilégios SQL por recurso
A tabela a seguir lista o comportamento padrão para os recursos que controlam as permissões concedidas pela Extensão do Azure para SQL Server:
| Feature | Comportamento padrão |
|---|---|
| Permissões de extensão padrão | Ativado por padrão |
| Backups automatizados | Desabilitado por padrão |
| Grupos de disponibilidade | Ativado por padrão |
| Avaliação das melhores práticas | Desabilitado por padrão |
| Avaliação da migração | Ativado por padrão |
| Migração de banco de dados | Ativado por padrão |
| Restauro para um ponto anterior no tempo | Desabilitado por padrão |
| Purview | Desabilitado por padrão |
Permissões de extensão padrão
As seguintes permissões padrão são o requisito mínimo para o nível básico de funcionalidade fornecido pela Extensão do Azure para SQL Server e devem ser aplicadas:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Database | master |
VIEW DATABASE STATE |
| Database | msdb |
ALTER ANY SCHEMA |
| Database | msdb |
CREATE TABLE |
| Database | msdb |
CREATE TYPE |
| Database | msdb |
DB DATA READER |
| Database | msdb |
DB DATA WRITER |
| Database | msdb |
EXECUTE |
| Database | msdb |
SELECT dbo.backupfile |
| Database | msdb |
SELECT dbo.backupmediaset |
| Database | msdb |
SELECT dbo.backupmediafamily |
| Database | msdb |
SELECT dbo.backupset |
| Database | msdb |
SELECT dbo.syscategories |
| Database | msdb |
SELECT dbo.sysjobactivity |
| Database | msdb |
SELECT dbo.sysjobhistory |
| Database | msdb |
SELECT dbo.sysjobs |
| Database | msdb |
SELECT dbo.sysjobsteps |
| Database | msdb |
SELECT dbo.syssessions |
| Database | msdb |
SELECT dbo.sysoperators |
| Database | msdb |
SELECT dbo.suspectpages |
| Server | CONNECT ANY DATABASE |
|
| Server | CONNECT SQL |
|
| Server | VIEW ANY DATABASE |
|
| Server | VIEW ANY DEFINITION |
|
| Server | VIEW SERVER STATE |
Backups automatizados
Os backups automatizados são desativados por padrão. A extensão concede permissões de backup para qualquer banco de dados que tenha backups automatizados habilitados. Habilitar o recurso de backup também habilita o recurso de restauração point-in-time , portanto, a permissão para criar um banco de dados também é concedida.
Se os recursos estiverem habilitados, a extensão concede automaticamente as seguintes permissões:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Database | Todas as bases de dados | DB BACKUP OPERATOR |
| Server | CREATE ANY DATABASE |
|
| Server | master |
DB CREATOR |
Grupos de disponibilidade
Os recursos de descoberta e gerenciamento de grupos de disponibilidade, como failover, são habilitados por padrão, mas você pode desativá-los por meio do AvailabilityGroupDiscovery sinalizador de recursos.
Se o recurso estiver habilitado, a extensão concede automaticamente as seguintes permissões:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Server | ALTER ANY AVAILABILITY GROUP |
|
| Server | VIEW ANY DEFINITION |
Avaliação das melhores práticas
A avaliação de práticas recomendadas é desabilitada por padrão.
Se o recurso estiver habilitado, a extensão concede automaticamente as seguintes permissões:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Database | master |
SELECT |
| Database | master |
VIEW DATABASE STATE |
| Database | msdb |
SELECT |
| Server | VIEW ANY DATABASE |
|
| Server | VIEW ANY DEFINITION |
|
| Server | VIEW SERVER STATE |
|
| StoredProcedure | EnumErrorLogsSP | EXECUTE |
| StoredProcedure | ReadErrorLogsSP | EXECUTE |
Migração de bases de dados
O recurso de migração de banco de dados é habilitado por padrão e requer apenas as permissões listadas nas permissões de extensão padrão, embora algumas permissões usadas pelo recurso de migração de banco de dados recebam permissões just-in-time quando uma ação de migração específica é executada.
As seguintes ações exigem permissões adicionais que a extensão concede just-in-time:
- Criar migração de link de instância gerenciada
- Substituição completa da migração do link de instância gerenciada
- Cancelar migração de link de instância gerenciada
Note
Os usuários com as SqlServerAvailabilityGroups_CreateManagedInstanceLinkpermissões , SqlServerAvailabilityGroups_failoverMiLinke SqlServerAvailabilityGroups_deleteMiLink no Azure podem executar ações na página Migração de banco de dados durante o processo de migração que elevam as permissões do SQL Server da conta usada pela extensão, incluindo a sysadmin função.
Criar migração de link de instância gerenciada
Na etapa Migrar dados , a extensão concede permissões just-in-time quando você seleciona Iniciar migração de dados na guia Revisar + Criar para uma migração de link de Instância Gerenciada. A conta de serviço precisa de permissões elevadas para configurar o grupo de disponibilidade distribuída. Ele revoga as permissões depois que o grupo de disponibilidade distribuído é criado e a implantação visível no portal do Azure está no estado concluído. Se outra migração estiver sendo executada ao mesmo tempo, a extensão não revogará as permissões até que o último grupo de disponibilidade distribuído seja criado.
A ação para criar uma migração de link de Instância Gerenciada adquire as seguintes permissões para a duração da solicitação de criação:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Server | CREATE AVAILABILITY GROUP |
|
| Server | ALTER ANY AVAILABILITY GROUP |
|
| Server | ALTER ANY DATABASE |
|
| Server | CREATE ENDPOINT |
|
| Server | ALTER ANY ENDPOINT |
|
| Server | CREATE CERTIFICATE |
|
| Database | master |
IMPERSONATE ON USER::[dbo] |
Substituição completa da migração do link de instância gerenciada
Na etapa Monitor e substituição , a extensão concede permissões just-in-time quando você seleciona a opção de substituição completa para uma migração de link de instância gerenciada. A extensão revoga as permissões após a conclusão da substituição.
A ação para concluir a substituição de uma migração de link de Instância Gerenciada adquire as seguintes permissões para a duração da solicitação completa:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Server | CREATE AVAILABILITY GROUP |
|
| Server | ALTER ANY AVAILABILITY GROUP |
|
| Server | ALTER ANY DATABASE |
|
| Server |
sysadmin
1 |
1 Se o privilégio mínimo estiver habilitado, a ação de substituição completa também concederá a sysadmin função à NT Service\SQLServerExtension conta durante a substituição. Essa função é necessária para fazer failover do grupo de disponibilidade distribuída para transferência para a Instância Gerenciada SQL do Azure.
Cancelar migração de link de instância gerenciada
Na etapa Monitor e transferência, a extensão concede permissões just-in-time quando você seleciona a opção Cancelar migração para uma migração de link de Instância Gerenciada. A extensão revoga as permissões depois que a migração é cancelada.
A ação para cancelar uma migração de link de Instância Gerenciada adquire as seguintes permissões para a duração da solicitação de cancelamento:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Server | ALTER ANY AVAILABILITY GROUP |
|
| Server | ALTER ANY DATABASE |
|
| Server |
sysadmin
1 |
1 Se o privilégio mínimo estiver habilitado, a ação cancelar também concederá a sysadmin função à NT Service\SQLServerExtension conta durante a duração da solicitação de cancelamento. Essa função é necessária ao excluir um grupo de disponibilidade distribuído.
Avaliação da migração
As avaliações de migração são habilitadas por padrão.
Se o recurso estiver desativado, a extensão revogará as seguintes permissões, a menos que outros recursos habilitados exijam isso:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Database | Todas as bases de dados | SELECT sys.sqlexpressiondependencies |
| Database | msdb |
EXECUTE dbo.agentdatetime |
| Database | msdb |
SELECT dbo.syscategories |
| Database | msdb |
SELECT dbo.sysjobhistory |
| Database | msdb |
SELECT dbo.sysjobs |
| Database | msdb |
SELECT dbo.sysjobsteps |
| Database | msdb |
SELECT dbo.sysmailaccount |
| Database | msdb |
SELECT dbo.sysmailprofile |
| Database | msdb |
SELECT dbo.sysmailprofileaccount |
| Database | msdb |
SELECT dbo.syssubsystems |
Purview
Os recursos do Purview são desativados por padrão.
Se o recurso estiver habilitado, a extensão concede automaticamente as seguintes permissões:
| Tipo de objeto | Nome do banco de dados ou objeto | Privilege |
|---|---|---|
| Database | Todas as bases de dados | EXECUTE |
| Database | Todas as bases de dados | SELECT |
| Server | CONNECT ANY DATABASE |
|
| Server | VIEW ANY DATABASE |
Permissões SQL just-in-time
Algumas permissões SQL são atribuídas apenas no momento em que são necessárias para executar uma ação específica e são revogadas assim que a operação que requer as permissões é concluída. Se a revogação não for executada, um trabalho de limpeza em segundo plano executado a cada 50 minutos revogará automaticamente as permissões que se tornaram obsoletas.
As permissões just-in-time são atribuídas à conta de serviço:
-
NT Service\SQLServerExtensionse o privilégio mínimo estiver habilitado - Conta do sistema local se o privilégio mínimo estiver desativado.
Atualmente, o seguinte recurso usa permissões just-in-time:
- Migração de banco de dados ao usar a opção de migração de link de Instância Gerenciada.
Permissões adicionais
- Permissões para a conta de serviço para acessar o serviço de extensão e configurar a recuperação automática.
- Log-on-as-direitos de serviço para a conta de serviço.