Reputation: 75
I have been struggling to grant a user permission on an SQL Server Agent job. Since making them a member of the sysadmin role is not an option, I tried changing the job owner to this user, then I make them a member os sqlserveroperator agent.
However, they still cannot create new job steps or modify existing ones. Then I did some reaserch, to find that I must grant the user access to use the proxy for job steps, but nothing changes.
Upvotes: 0
Views: 51
Reputation: 3273
To configure a user to create or execute Microsoft SQL Server Agent jobs, you must first add an existing SQL Server login or msdb role to one of the following SQL Server Agent fixed database roles in the msdb database: SQLAgentUserRole, SQLAgentReaderRole, or SQLAgentOperatorRole.
Using SQL Server Management Studio
To add a SQL login or msdb role to a SQL Server Agent fixed database role
1. In Object Explorer, expand a server.
2. Expand Security, and then expand Logins.
3. Right-click the login you wish to add to a SQL Server Agent fixed database role, and select Properties.
4. On the User Mapping page of the Login Properties dialog box, select the row containing msdb.
5. Under Database role membership for: msdb, check the appropriate SQL Server Agent fixed database role.
To configure a proxy account to create and manage SQL Server Agent job steps
1. In Object Explorer, expand a server.
2. Expand SQL Server Agent.
3. Right-click Proxies and select New Proxy.
4. On the General page of the New Proxy Account dialog, specify the proxy name, credential name, and description for the new proxy. Note that you must create a credential first before creating a SQL Server Agent proxy. For more information about creating a credential, see How to: Create a Credential and CREATE CREDENTIAL (Transact-SQL).
5. Check the appropriate subsystems for this proxy.
Operating system (CmdExec)
SQL Server Analysis Services Query
SQL Server Analysis Services Command
SQL Server Integration Services Package
PowerShell
6. On the Principals page, add or remove logins or roles to grant or remove access to the proxy account.
Upvotes: 0