Autorizzazioni necessarie per l'esecuzione di SQL Server Profiler
Per impostazione predefinita, l'esecuzione di SQL Server Profiler richiede le stesse autorizzazioni utente necessarie per le stored procedure Transact-SQL utilizzate per la creazione delle tracce. Per eseguire SQL Server Profiler, è necessario che agli utenti venga concessa l'autorizzazione ALTER TRACE. Per ulteriori informazioni, vedere GRANT - autorizzazioni per server (Transact-SQL).
Autorizzazioni per la riproduzione di tracce
Per la riproduzione di tracce è necessario che l'utente che desidera riprodurre la traccia disponga dell'autorizzazione ALTER TRACE.
Durante la riproduzione, SQL Server Profiler utilizza tuttavia il comando EXECUTE AS se nella traccia riprodotta viene rilevato un evento Audit Login. SQL Server Profiler utilizza questo comando per rappresentare l'utente associato all'evento di accesso.
Se SQL Server Profiler rileva un evento di accesso in una traccia che si desidera riprodurre, verranno eseguite le verifiche delle autorizzazioni seguenti:
- Utente1, che dispone dell'autorizzazione ALTER TRACE, inizia la riproduzione di una traccia.
- Nella traccia riprodotta viene rilevato un evento di accesso per Utente2.
- SQL Server Profiler utilizza il comando EXECUTE AS per rappresentare Utente2.
- SQL Server tenta di eseguire l'autenticazione di Utente2 e, in base ai risultati, si può verificare una delle situazioni seguenti:
- Se non è possibile eseguire l'autenticazione di Utente2, SQL Server Profiler restituisce un errore e continua la riproduzione della traccia come Utente1.
- Se l'autenticazione di Utente2 viene eseguita, la riproduzione della traccia continua come Utente2.
- Vengono controllate le autorizzazioni di Utente2 nel database di destinazione e, in base ai risultati, si può verificare una delle situazioni seguenti:
- Se Utente2 dispone delle autorizzazioni per il database di destinazione, la rappresentazione ha esito positivo e la riproduzione della traccia viene eseguita come Utente2.
- Se Utente2 non dispone delle autorizzazioni per il database di destinazione, il server verifica se esiste un utente Guest nel database.
- Viene verificata l'esistenza di un utente Guest nel database di destinazione e, in base ai risultati, si può verificare una delle situazioni seguenti:
- Se esiste un account Guest, la riproduzione della traccia viene eseguita come account Guest.
- Se nel database di destinazione non esiste un account Guest, viene restituito un errore e la riproduzione della traccia viene eseguita come Utente1.
Nella figura seguente viene illustrato il processo di verifica delle autorizzazioni per la riproduzione delle tracce:
Vedere anche
Attività
Procedura: Creazione di una traccia (SQL Server Profiler)
Procedura: Riproduzione di una tabella di traccia (SQL Server Profiler)
Procedura: Riproduzione di un file di traccia (SQL Server Profiler)
Concetti
Altre risorse
Stored procedure di SQL Server Profiler (Transact-SQL)