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
Azure SQL Managed Instance
Importante
No Azure SQL Managed Instance, a maioria dos recursos do SQL Server Agent, mas não todos, são suportados no momento. Consulte Diferenças de T-SQL da Instância Gerenciada do Azure SQL em relação ao SQL Server ou as limitações de trabalho do SQL Agent na Instância Gerenciada do SQL para obter detalhes.
O SQL Server tem as seguintes msdb funções fixas de banco de dados, que dão aos administradores um controlo mais fino sobre o acesso ao SQL Server Agent. As funções listadas do acesso menos ao mais privilegiado são:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Quando os usuários que não são membros de uma dessas funções são conectados ao SQL Server no SQL Server Management Studio, o nó SQL Server Agent no Pesquisador de Objetos não fica visível. Um usuário deve ser membro de uma dessas funções de banco de dados fixas ou membro da função de servidor fixa sysadmin para usar o SQL Server Agent.
Permissões de funções de banco de dados fixas do SQL Server Agent
As permissões de função de banco de dados do SQL Server Agent são concêntricas em relação umas às outras. Em outras palavras, funções mais privilegiadas herdam as permissões de funções menos privilegiadas em objetos do SQL Server Agent (incluindo alertas, operadores, trabalhos, agendas e proxies). Por exemplo, se membros de SQLAgentUserRole menos privilegiados tiverem recebido acesso ao proxy_A, os membros de SQLAgentReaderRole e SQLAgentOperatorRole automaticamente terão acesso a esse proxy, mesmo que o acesso a proxy_A não tenha sido explicitamente concedido a eles. Isso pode ter implicações de segurança, que são discutidas nas seções a seguir sobre cada função.
Permissões SQLAgentUserRole
SQLAgentUserRole é o menos privilegiado das funções de banco de dados fixas do SQL Server Agent. Ele tem permissões apenas em operadores, trabalhos locais e agendas de trabalho. Os membros de SQLAgentUserRole têm permissões apenas em trabalhos locais e agendas de trabalho que possuem. Eles não podem usar trabalhos multisservidor (trabalhos de servidor mestre e de destino) e não podem alterar a propriedade do trabalho para obter acesso a trabalhos que ainda não possuem. Os membros SQLAgentUserRole podem exibir uma lista de proxies disponíveis somente na caixa de diálogo Propriedades da Etapa de Trabalho do SQL Server Management Studio. Somente o nó Jobs no Explorador de Objetos do SQL Server Management Studio é visível para os membros do SQLAgentUserRole.
Importante
O SQLAgentReaderRole e o SQLAgentOperatorRole são automaticamente membros do SQLAgentUserRole. Isso significa que os membros de SQLAgentReaderRole e SQLAgentOperatorRole têm acesso a todos os proxies do SQL Server Agent que foram concedidos ao SQLAgentUserRole e podem usar esses proxies.
A tabela a seguir resume as permissões SQLAgentUserRole em objetos do SQL Server Agent.
| Ação | Operadores | Empregos locais (apenas empregos próprios) | Agendas de trabalho (somente agendas próprias) | Proxies |
|---|---|---|---|---|
| Criar/modificar/excluir | Não | Sim Não é possível alterar a propriedade do trabalho. |
Sim | Não |
| Ver lista (enumerar) | Sim Pode obter a lista de operadores disponíveis para uso e sp_notify_operator a caixa de diálogo Propriedades do Trabalho do Management Studio. |
Sim | Sim | Sim Lista de proxies disponível apenas na caixa de diálogo Propriedades da Etapa de Trabalho do Management Studio. |
| Ativar/desativar | Não | Sim | Sim | Não aplicável |
| Ver imóveis | Não | Sim | Sim | Não |
| Executar/parar/iniciar | Não aplicável | Sim | Não aplicável | Não aplicável |
| Ver histórico de tarefas | Não aplicável | Sim | Não aplicável | Não aplicável |
| Excluir histórico de trabalhos | Não aplicável | Não Os membros do SQLAgentUserRole devem receber explicitamente a permissão em EXECUTE para excluir o histórico de trabalhos em sp_purge_jobhistory de sua responsabilidade. Eles não podem excluir o histórico de trabalhos de nenhum outro trabalho. |
Não aplicável | Não aplicável |
| Anexar/separar | Não aplicável | Não aplicável | Sim | Não aplicável |
Permissões SQLAgentReaderRole
SQLAgentReaderRole inclui todas as permissões SQLAgentUserRole , bem como permissões para exibir a lista de trabalhos multisservidor disponíveis, suas propriedades e seu histórico. Os membros desta função também podem consultar a lista de todos os empregos e programações de trabalho disponíveis e suas propriedades, não apenas os empregos e programações de trabalho que eles possuem. Os membros SQLAgentReaderRole não podem alterar a propriedade do trabalho para obter acesso a trabalhos que ainda não possuem. Somente o nó Trabalhos no Pesquisador de Objetos do SQL Server Management Studio é visível para os membros do SQLAgentReaderRole.
Importante
Os membros de SQLAgentReaderRole são automaticamente membros do SQLAgentUserRole. Isso significa que os membros de SQLAgentReaderRole têm acesso a todos os proxies do SQL Server Agent que foram concedidos a SQLAgentUserRole e podem usar esses proxies.
A tabela a seguir resume as permissões SQLAgentReaderRole em objetos do SQL Server Agent.
| Ação | Operadores | Empregos locais | Trabalhos multisservidor | Horários de trabalho | Proxies |
|---|---|---|---|---|---|
| Criar/modificar/excluir | Não | Sim (apenas trabalhos próprios) Não é possível alterar a propriedade do trabalho. |
Não | Sim (apenas horários próprios) | Não |
| Ver lista (enumerar) | Sim Pode obter a lista de operadores disponíveis para uso e sp_notify_operator a caixa de diálogo Propriedades do Trabalho do Management Studio. |
Sim | Sim | Sim | Sim Lista de proxies disponível apenas na caixa de diálogo Propriedades da Etapa de Trabalho do Management Studio. |
| Ativar/desativar | Não | Sim (apenas trabalhos próprios) | Não | Sim (apenas horários próprios) | Não aplicável |
| Ver imóveis | Não | Sim | Sim | Sim | Não |
| Editar propriedades | Não | Sim (apenas trabalhos próprios) | Não | Sim (apenas horários próprios) | Não |
| Executar/parar/iniciar | Não aplicável | Sim (apenas trabalhos próprios) | Não | Não aplicável | Não aplicável |
| Ver histórico de tarefas | Não aplicável | Sim | Sim | Não aplicável | Não aplicável |
| Excluir histórico de trabalhos | Não aplicável | Não Os membros de SQLAgentReaderRole devem receber explicitamente a permissão para EXECUTE excluir o sp_purge_jobhistory histórico de trabalhos de sua propriedade. Eles não podem excluir o histórico de trabalhos de nenhum outro trabalho. |
Não | Não aplicável | Não aplicável |
| Anexar/separar | Não aplicável | Não aplicável | Não aplicável | Sim (apenas horários próprios) | Não aplicável |
Permissões SQLAgentOperatorRole
SQLAgentOperatorRole é a mais privilegiada das funções de banco de dados fixas do SQL Server Agent. Ele inclui todas as permissões de SQLAgentUserRole e SQLAgentReaderRole. Os membros dessa função também podem exibir propriedades para operadores e proxies e enumerar proxies e alertas disponíveis no servidor.
Os membros SQLAgentOperatorRole têm permissões extras em trabalhos e agendas locais. Eles podem executar, parar ou iniciar todos os trabalhos locais e podem excluir o histórico de trabalhos de qualquer trabalho local no servidor. Eles também podem habilitar ou desabilitar todos os trabalhos e agendas locais no servidor. Para ativar ou desativar trabalhos ou agendas locais, os membros deste papel devem usar os procedimentos armazenados sp_update_job e sp_update_schedule. Somente os parâmetros que especificam o nome ou identificador de trabalho ou agendamento e o @enabled parâmetro podem ser especificados por membros de SQLAgentOperatorRole. Se eles especificarem quaisquer outros parâmetros, a execução desses procedimentos armazenados falhará.
Os membros SQLAgentOperatorRole não podem alterar a propriedade do trabalho para obter acesso a trabalhos que ainda não possuem.
Os nós Trabalhos, Alertas, Operadores e Proxies no Pesquisador de Objetos do SQL Server Management Studio são visíveis para os membros do SQLAgentOperatorRole. Apenas o nó Logs de Erros não é visível para os membros dessa função.
Importante
Os membros de SQLAgentOperatorRole são automaticamente membros de SQLAgentUserRole e SQLAgentReaderRole. Isso significa que os membros de SQLAgentOperatorRole têm acesso a todos os proxies do SQL Server Agent que foram concedidos a SQLAgentUserRole ou SQLAgentReaderRole e podem usar esses proxies.
A tabela a seguir resume as permissões SQLAgentOperatorRole em objetos do SQL Server Agent.
| Ação | Alertas | Operadores | Empregos locais | Trabalhos multisservidor | Horários de trabalho | Proxies |
|---|---|---|---|---|---|---|
| Criar/modificar/excluir | Não | Não | Sim (apenas trabalhos próprios) Não é possível alterar a propriedade do trabalho. |
Não | Sim (apenas horários próprios) | Não |
| Ver lista (enumerar) | Sim | Sim Pode obter a lista de operadores disponíveis para uso e sp_notify_operator a caixa de diálogo Propriedades do Trabalho do Management Studio. |
Sim | Sim | Sim | Sim |
| Ativar/desativar | Não | Não | Sim Os membros SQLAgentOperatorRole podem ativar ou desativar trabalhos locais dos quais não são proprietários, usando o procedimento armazenado sp_update_job e especificando valores para os parâmetros @enabled e @job_id (ou @job_name). Se um membro dessa função especificar quaisquer outros parâmetros para esse procedimento armazenado, a execução do procedimento falhará. |
Não | Sim Os membros SQLAgentOperatorRole podem habilitar ou desabilitar agendas que não possuem usando o procedimento sp_update_schedule armazenado e especificando valores para os @enabled parâmetros e ( @schedule_id ou @name). Se um membro dessa função especificar quaisquer outros parâmetros para esse procedimento armazenado, a execução do procedimento falhará. |
Não aplicável |
| Ver imóveis | Sim | Sim | Sim | Sim | Sim | Sim |
| Editar propriedades | Não | Não | Sim (apenas trabalhos próprios) | Não | Sim (apenas horários próprios) | Não |
| Executar/parar/iniciar | Não aplicável | Não aplicável | Sim | Não | Não aplicável | Não aplicável |
| Ver histórico de tarefas | Não aplicável | Não aplicável | Sim | Sim | Não aplicável | Não aplicável |
| Excluir histórico de trabalhos | Não aplicável | Não aplicável | Sim | Não | Não aplicável | Não aplicável |
| Anexar/separar | Não aplicável | Não aplicável | Não aplicável | Não aplicável | Sim (apenas horários próprios) | Não aplicável |
Atribuir várias funções aos usuários
Os membros da função de servidor fixa sysadmin têm acesso a todas as funcionalidades do SQL Server Agent. Se um usuário não for membro da função sysadmin , mas for membro de mais de uma função de banco de dados fixa do SQL Server Agent, é importante lembrar o modelo de permissões concêntricas dessas funções. Como as funções mais privilegiadas sempre contêm todas as permissões de funções menos privilegiadas, um usuário que é membro de mais de uma função tem automaticamente as permissões associadas à função mais privilegiada da qual o usuário é membro.