sql >> Database >  >> RDS >> Sqlserver

Opgeslagen procedure en machtigingen - Is UITVOEREN voldoende?

Machtigingen op tabellen worden niet gecontroleerd (inclusief DENY) als tabellen en proc dezelfde eigenaar hebben. Ze kunnen zich ook in verschillende schema's bevinden, zolang de schema's dezelfde eigenaar hebben.

Zie eigendomsketens op MSDN

Bewerken, van een opmerking van een verwijderd antwoord.

De context is altijd de huidige login tenzij EXECUTE AS zoals gebruikt:alleen DML-machtigingen voor objecten waarnaar wordt verwezen, worden niet gecontroleerd. Probeer OBJECT_ID(referencedtable) in een opgeslagen proces waar geen rechten zijn toegewezen aan referencedtable. Het geeft NULL. Als het wordt uitgevoerd door de eigenaar van het opgeslagen proces, zou het een waarde geven omdat de eigenaar rechten heeft op de referentietabel



  1. Maandag instellen als eerste dag van de week in SQL Server

  2. fout bij het installeren van psycopg2, bibliotheek niet gevonden voor -lssl

  3. MySQL-foutcode:1175 tijdens UPDATE in MySQL Workbench

  4. Installeer Innotop om de prestaties van de MySQL-server te controleren