Operar o SQL Server habilitado pelo Azure Arc com privilégios mínimos
Aplica-se: SQL Server
O princípio de segurança da informação de privilégios mínimos afirma que as contas e os aplicativos apenas têm acesso aos dados e às operações de que necessitam. Com o SQL Server habilitado pelo Azure Arc, você pode executar o serviço de extensão de agente com menos privilégios. Este artigo explica como executar o serviço de extensão de agente com privilégios mínimos.
Para configurar opcionalmente o serviço para ser executado com privilégios mínimos, siga as etapas neste artigo. Atualmente, o serviço não é executado automaticamente com privilégios mínimos.
Configurar contas de serviço do Windows e permissões para a Extensão do Azure para SQL Server descreve as permissões de privilégios mínimos para o serviço de extensão de agente.
Observação
Os servidores existentes com a extensão da versão de novembro de 2024 ou posterior terão a configuração com privilégios mínimos aplicada. A aplicação acontecerá de forma gradual.
Bloqueie as atualizações de extensão para a versão de novembro de 2024 ou posterior para evitar a aplicação automática de privilégios mínimos.
Depois de configurar o serviço de extensão do agente para execução com privilégios mínimos, ele usa a conta de serviço NT Service\SQLServerExtension
.
A conta NT Service\SQLServerExtension
é uma conta de serviço local do Windows:
- Criada e gerenciada pela Extensão do Azure para SQL Server quando a opção de privilégios mínimos está habilitada.
- Recebe as permissões e privilégios mínimos necessários para executar a extensão do Azure para o serviço SQL Server no sistema operacional Windows. Só tem acesso a pastas e diretórios usados para ler e armazenar logs de configuração ou de gravação.
- Recebe permissão para se conectar e consultar no SQL Server com um novo logon especificamente para a conta de serviço que tem as permissões mínimas necessárias. As permissões mínimas dependem dos recursos habilitados.
- Atualizada quando as permissões não são mais necessárias. Por exemplo, as permissões são revogadas quando você desabilita um recurso, desabilita a configuração de privilégios mínimos ou desinstala a extensão do Azure para SQL Server. A revogação garante que nenhuma permissão permaneça depois que não forem mais necessárias.
Pré-requisitos
Esta seção identifica os requisitos de sistema e as ferramentas necessárias para concluir o exemplo neste artigo.
Requisitos do sistema
A configuração com privilégios mínimos requer:
- Windows Server 2012 ou posterior
- SQL Server 2012 ou posterior
- A conta de serviço do SQL Server deve ser membro da função
sysadmin
de servidor fixa - Todos os bancos de dados devem estar online e atualizáveis
No momento, não há suporte para a configuração com privilégios mínimos no Linux.
Outros requisitos, conforme listados em Pré-requisitos – SQL Server habilitado pelo Azure Arc, ainda se aplicam.
Ferramentas
Para concluir as etapas neste artigo, você precisa das seguintes ferramentas:
- CLI do Azure
arcdata
Extensão da CLI do Azure versão1.5.9
ou posterior- Extensão do Azure para o SQL Server versão
1.1.2504.99
ou posterior
Habilitar privilégios mínimos
Faça login com a CLI do Azure.
az login
Verifique a versão da extensão
arcdata
.az extension list -o table
Se os resultados incluírem uma versão com suporte do
arcdata
, avance para a etapa seguinte.Se necessário, instale ou atualize a extensão da
arcdata
CLI do Azure.Para instalar a extensão:
az extension add --name arcdata
Para atualizar a extensão:
az extension update --name arcdata
Habilite privilégios mínimos com a CLI do Azure.
Para habilitar privilégios mínimos, defina o sinalizador de recurso
LeastPrivilege
comotrue
. Para concluir essa tarefa, execute o seguinte comando com valores atualizados para<resource-group>
e<machine-name>
.az sql server-arc extension feature-flag set --name LeastPrivilege --enable true --resource-group <resource-group> --machine-name <machine-name>
Por exemplo, o comando a seguir habilita privilégios mínimos para um servidor nomeado
myserver
em um grupo de recursos chamadomyrg
:az sql server-arc extension feature-flag set --name LeastPrivilege --enable true --resource-group myrg --machine-name myserver
Verificar a configuração de privilégios mínimos
Para verificar se o SQL Server habilitado pelo Azure Arc está configurado para execução com privilégios mínimos:
Nos serviços do Windows, localize o serviço Extensão do Microsoft SQL Server. Verifique se o serviço está sendo executado na conta como o serviço
NT Service\SqlServerExtension
.Abra o agendador de tarefas no servidor e verifique se uma tarefa promovida por evento com o nome
SqlServerExtensionPermissionProvider
foi criada emMicrosoft\SqlServerExtension
.Observação
Antes da versão de julho de 2024,
SqlServerExtensionPermissionProvider
é uma tarefa agendada. Ela funciona de hora em hora.Abra o agendador de tarefas no servidor e verifique se uma tarefa agendada com nome
SqlServerExtensionPermissionProvider
foi criada emMicrosoft\SqlServerExtension
.Abra o SQL Server Management Studio e verifique o logon denominado
NT Service\SqlServerExtension
. Verifique se a conta recebeu estas permissões:- Conectar SQL
- Exibir estado do banco de dados
- Exibir estado do servidor
Valide as permissões com as seguintes consultas:
Para verificar permissões no nível do servidor, execute a seguinte consulta:
EXECUTE AS LOGIN = 'NT Service\SqlServerExtension' SELECT * FROM fn_my_permissions (NULL, 'SERVER");
Para verificar permissões no nível do banco de dados, substitua
<database name>
pelo nome de um dos bancos de dados e execute a seguinte consulta:EXECUTE AS LOGIN = 'NT Service\SqlServerExtension' USE <database name>; SELECT * FROM fn_my_permissions (NULL, 'database");