Permissões administrativas no SSISDB
Quando a instância é criada ou modificada com a opção SSIS, o resultado é um banco de dados SSISDB com as funções ssis_admin e ssis_logreader concedidas ao usuário mestre. O usuário mestre tem os seguintes privilégios no SSISDB:
-
alterar na função ssis_admin
-
alterar na função ssis_logreader
-
alterar qualquer usuário
Como o usuário mestre é um usuário autenticado pelo SQL, você não pode usar o usuário mestre para executar pacotes do SSIS. O usuário mestre pode usar esses privilégios para criar usuários do SSISDB e adicioná-los às funções ssis_admin e ssis_logreader. Fazer isso é útil para dar acesso aos usuários do domínio para usar o SSIS.
Configurar um usuário autenticado pelo Windows para o SSIS
O usuário mestre pode usar o exemplo de código a seguir para configurar um logon autenticado pelo Windows no SSISDB e conceder as permissões de procedimento necessárias. Fazer isso concede permissões ao usuário do domínio para implantar e executar pacotes do SSIS, usar procedimentos de transferência de arquivos do S3, criar credenciais e trabalhar com o proxy do SQL Server Agent. Para obter mais informações, consulte Credenciais (mecanismo de banco de dados)
nota
Você pode conceder algumas ou todas as seguintes permissões, conforme necessário, aos usuários autenticados pelo Windows.
-- Create a server-level SQL login for the domain user, if it doesn't already exist USE [master] GO CREATE LOGIN [
mydomain
\user_name
] FROM WINDOWS GO -- Create a database-level account for the domain user, if it doesn't already exist USE [SSISDB] GO CREATE USER [mydomain
\user_name
] FOR LOGIN [mydomain
\user_name
] -- Add SSIS role membership to the domain user ALTER ROLE [ssis_admin] ADD MEMBER [mydomain
\user_name
] ALTER ROLE [ssis_logreader] ADD MEMBER [mydomain
\user_name
] GO -- Add MSDB role membership to the domain user USE [msdb] GO CREATE USER [mydomain
\user_name
] FOR LOGIN [mydomain
\user_name
] -- Grant MSDB stored procedure privileges to the domain user GRANT EXEC ON msdb.dbo.rds_msbi_task TO [mydomain
\user_name
] with grant option GRANT SELECT ON msdb.dbo.rds_fn_task_status TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_task_status TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_cancel_task TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_download_from_s3 TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_upload_to_s3 TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_delete_from_filesystem TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_gather_file_details TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_add_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_update_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_grant_login_to_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_revoke_login_from_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_delete_proxy TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_enum_login_for_proxy to [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.sp_enum_proxy_for_subsystem TO [mydomain
\user_name
] with grant option GRANT EXEC ON msdb.dbo.rds_sqlagent_proxy TO [mydomain
\user_name
] WITH GRANT OPTION -- Add the SQLAgentUserRole privilege to the domain user USE [msdb] GO ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain
\user_name
] GO -- Grant the ALTER ANY CREDENTIAL privilege to the domain user USE [master] GO GRANT ALTER ANY CREDENTIAL TO [mydomain
\user_name
] GO