Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Prosedur dan Izin Tersimpan - Apakah EXECUTE cukup?

Izin pada tabel tidak dicentang (termasuk DENY) jika tabel dan proc memiliki pemilik yang sama. Mereka juga dapat berada dalam skema yang berbeda selama skema tersebut memiliki pemilik yang sama.

Lihat Rantai kepemilikan di MSDN

Edit, dari komentar dari jawaban yang dihapus.

Konteksnya selalu login saat ini kecuali EXECUTE AS seperti yang telah digunakan:hanya izin DML objek yang direferensikan yang tidak dicentang. Coba OBJECT_ID(referencedtable) di proc tersimpan di mana tidak ada hak yang diberikan ke referencedtable. Ini memberi NULL. Jika dieksekusi oleh pemilik proc yang disimpan maka akan memberikan nilai karena pemilik memiliki hak atas referencedtable



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ganti Beberapa Karakter dalam sebuah String di SQL Server (T-SQL)

  2. Pengidentifikasi multi-bagian tidak dapat diikat

  3. Bagaimana cara saya terhubung ke database MSSQL menggunakan modul DBI Perl di Windows?

  4. Mengapa saya tidak dapat melakukan fungsi agregat pada ekspresi yang berisi agregat tetapi saya dapat melakukannya dengan membuat pernyataan pilih baru di sekitarnya?

  5. Dapatkan hari terakhir dalam sebulan di SQL