Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SQL Server 2008 R2 L'utente non può utilizzare la procedura di sistema

Sinceramente sono un po' confuso dalla tua descrizione, quindi per favore fatemi sapere se sono fuori base qui. Puoi provare questo di seguito. Concederà l'accesso in esecuzione a tutte le procedure archiviate. Se hai solo bisogno che il gatekeeper abbia accesso a una procedura memorizzata, concedi semplicemente l'esecuzione su quella procedura memorizzata. Se la procedura memorizzata sta accedendo a dati da altri database, potrebbe essere necessario concedere autorizzazioni sulle tabelle e in modo tale che acceda al di fuori del relativo database.

CREATE ROLE db_executor
GRANT EXECUTE TO db_executor
EXEC sp_addrolemember 'db_executor', 'gatekeeper'