Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Dostęp tylko do odczytu do zawartości procedury składowanej

Możesz przyznać im VIEW DEFINITION przywileje do tych procesów.
Zobacz tutaj za to, co robi ten przywilej.

Możesz zastosować VIEW DEFINITION w różnych zakresach:

  • Serwer
  • Baza danych
  • Schemat
  • Poszczególne jednostki (np. proc, funkcja, widok)

Możesz również użyć zapytania do wygenerowania skryptu dla wielu procesów.
Więc jeśli masz użytkownika Bob :

SELECT N'GRANT VIEW DEFINITION ON '
    + QUOTENAME(SPECIFIC_SCHEMA)
    + N'.'
    + QUOTENAME(SPECIFIC_NAME)
    + N' TO Bob;'
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE = 'PROCEDURE';

to da ci coś takiego, które możesz następnie uruchomić:

GRANT VIEW DEFINITION ON [dbo].[aspnet_RegisterSchemaVersion] TO Bob;
GRANT VIEW DEFINITION ON [dbo].[aspnet_CheckSchemaVersion] TO Bob;
GRANT VIEW DEFINITION ON [dbo].[aspnet_Applications_CreateApplication] TO Bob;
...


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Logowanie ASP.NET nie powiodło się dla użytkownika „NT AUTHORITY\NETWORK SERVICE”

  2. Railsy i MSSQL 2008 – czy trafimy na bariery?

  3. Jak tworzyć historię LUB widoki audytu z tabel zmiany przechwytywania danych (CDC) w programie SQL Server — samouczek dotyczący programu SQL Server

  4. Używając SSIS, jak znaleźć miasta o największej liczbie mieszkańców?

  5. Oblicz dni obecne i nieobecne w tabeli