Autorizzazione VIEW DEFINITION

L'autorizzazione VIEW DEFINITION consente a un utente di visualizzare i metadati dell'entità a protezione diretta per cui viene concessa. L'autorizzazione VIEW DEFINITION, tuttavia, non concede l'accesso all'entità a protezione diretta stessa. Un utente a cui viene concessa l'autorizzazione VIEW DEFINITION in una tabella, ad esempio, può visualizzare i metadati correlati alla tabella nella vista del catalogo sys.objects. Senza ulteriori autorizzazioni, ad esempio SELECT o CONTROL, l'utente non può tuttavia leggere i dati dalla tabella. Per ulteriori informazioni sulla visualizzazione di metadati, vedere GRANT (Transact-SQL).

L'autorizzazione VIEW DEFINITION può essere concessa per i livelli seguenti:

  • Ambito del server

  • Ambito del database

  • Ambito dello schema

  • Singole entità

Ambito del server

L'autorizzazione VIEW ANY DEFINITION concessa in questo ambito nega in modo efficace l'accesso ai metadati basato sulle autorizzazioni per il beneficiario. In questo modo, il beneficiario può visualizzare tutti i metadati nell'istanza di SQL Server, a meno che non gli vengano negate le autorizzazioni VIEW DEFINITION o CONTROL nell'ambito del database o dello schema oppure per una singola entità, ad esempio una tabella. Per informazioni sulla sintassi da utilizzare per l'autorizzazione in questo ambito, vedere GRANT (Transact-SQL).

[!NOTA]

Il nome dell'autorizzazione è VIEW ANY DEFINITION nell'ambito del server e VIEW DEFINITION in tutti gli altri ambiti.

Ambito del database

L'autorizzazione VIEW DEFINITION concessa in questo ambito nega in modo efficace l'accesso ai metadati basato sulle autorizzazioni nel database specificato. In questo modo, il beneficiario può visualizzare tutti i metadati nel contesto di database in cui viene eseguita l'istruzione GRANT, a meno che non gli vengano negate le autorizzazioni VIEW DEFINITION o CONTROL nell'ambito dello schema o per una singola entità, ad esempio una tabella. Per informazioni sulla sintassi da utilizzare per l'autorizzazione in questo ambito, vedere GRANT (Transact-SQL).

Ambito dello schema

L'autorizzazione VIEW DEFINITION concessa in questo ambito consente al beneficiario di visualizzare tutti i metadati per tutti gli oggetti inclusi nello schema specifico, a meno che non gli vengano negate le autorizzazioni VIEW DEFINITION o CONTROL per una singola entità dello schema. Per informazioni sulla sintassi da utilizzare per l'autorizzazione in questo ambito, vedere GRANT (autorizzazioni per schemi) (Transact-SQL).

Singole entità

L'autorizzazione VIEW DEFINITION concessa a singole entità consente al beneficiario di visualizzare i metadati per l'entità specificata. Per informazioni sulla sintassi da utilizzare per questa autorizzazione per le singole entità, vedere GRANT - autorizzazioni per oggetti (Transact-SQL).

È possibile concedere l'autorizzazione VIEW DEFINITION a un utente per un'entità a protezione diretta, ad esempio una tabella. In questo modo l'utente può visualizzare i metadati della tabella e di tutti i relativi sottocomponenti, ad esempio trigger, vincoli e indici.