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

SQL Server 2008 concede l'autorizzazione a information_schema.columns

La visibilità dei metadati degli oggetti è soggetta alla VISUALIZZA DEFINIZIONE permesso:

GRANT VIEW DEFINITION ON ... TO cctc_reader;

Il diritto sicuro a cui concedere l'autorizzazione dipende dal tuo scenario. Potrebbe essere il dbo o qualche altro schema, potrebbe essere il database stesso, potrebbero essere singole tabelle. Se fossi al tuo posto, firmerei in codice la procedura recControl_system_option e concederei VIEW ANY DEFINIZIONE sulla firma a livello di server, un modo molto migliore e sicuro rispetto all'utilizzo dei ruoli e alla concessione di autorizzazioni sui ruoli. Vedi Firma di una procedura attivata per un esempio di come firmare una procedura e concedere un'autorizzazione a livello di server sulla firma.