Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Istanza gestita di SQL di Azure
Per impostazione predefinita, l'esecuzione di SQL Server Profiler richiede le stesse autorizzazioni utente necessarie per le stored procedure Transact-SQL usate per la creazione di tracce. Per eseguire SQL Server Profiler, agli utenti deve essere concessa l'autorizzazione ALTER TRACE
. Per informazioni, vedere GRANT Server Permissions.
Nota
Traccia SQL e SQL Server Profiler sono deprecati. Il namespace Microsoft.SqlServer.Management.Trace
che contiene gli oggetti di Traccia e Riproduzione di Microsoft SQL Server è anche deprecato.
Questa funzionalità verrà rimossa nelle versioni future di SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata.
In alternativa, usare Eventi estesi. Per altre informazioni su Eventi estesi, vedere Avvio rapido: Eventi estesi e Utilizzare Profiler XEvent di SSMS.
Osservazioni:
I piani di query e il testo delle query, acquisiti da Traccia SQL e da altri mezzi, ad esempio le viste a gestione dinamica (DMV), le funzioni a gestione dinamica (DMFS) e gli eventi estesi, possono contenere informazioni riservate. Di conseguenza, le autorizzazioni
ALTER TRACE
,SHOWPLAN
e l'autorizzazioneVIEW SERVER STATE
di copertura devono essere concesse solo agli utenti che necessitano di queste autorizzazioni per soddisfare le proprie funzioni di lavoro, in base al principio dei privilegi minimi.È anche consigliabile salvare file Showplan o file di traccia che contengono eventi correlati a Showplan solo in una posizione che usa il file system NTFS e limitare l'accesso agli utenti autorizzati a visualizzare informazioni potenzialmente sensibili.
I carichi di lavoro di SQL Server Profiler per Analysis Services sono supportati.
Quando si tenta di connettersi a un database SQL di Azure da SQL Server Profiler, viene generato erroneamente un messaggio di errore fuorviante:
In order to run a trace against SQL Server, you must be a member of **sysadmin** fixed server role or have the ALTER TRACE permission.
Il messaggio deve indicare che il database SQL di Azure non è supportato da SQL Server Profiler.
Autorizzazioni usate per riprodurre le tracce
La riproduzione di tracce richiede inoltre che l'utente che sta riproducendo la traccia disponga dell'autorizzazione ALTER TRACE
.
Tuttavia, durante la riproduzione, SQL Server Profiler usa il EXECUTE AS
comando se viene rilevato un evento Audit Login nella traccia che viene riprodotta. SQL Server Profiler usa il EXECUTE AS
comando per rappresentare l'utente associato all'evento di accesso.
Se SQL Server Profiler rileva un evento di accesso in una traccia da riprodurre, verranno eseguiti i controlli delle autorizzazioni seguenti:
User1
, che dispone dell'autorizzazioneALTER TRACE
, avvia la riproduzione di una traccia.Viene rilevato un evento di accesso per
User2
nella traccia riprodotta.SQL Server Profiler usa il
EXECUTE AS
comando per rappresentareUser2
.SQL Server tenta di autenticare
User2
e, a seconda dei risultati, si verifica una delle operazioni seguenti:Se
User2
non è possibile eseguire l'autenticazione, SQL Server Profiler restituisce un errore e continua a riprodurre la traccia comeUser1
.Se l'autenticazione di
User2
viene eseguita correttamente, la traccia continua a essere riprodotta comeUser2
.
Le autorizzazioni per
User2
vengono controllate nel database di destinazione e, a seconda dei risultati, si verifica uno degli scenari seguenti:Se
User2
dispone delle autorizzazioni per il database di destinazione, la rappresentazione è riuscita e la traccia viene riprodotta comeUser2
.Se
User2
non dispone delle autorizzazioni per il database di destinazione, il server verifica la presenza di unGuest
utente in tale database.
L'esistenza di un
Guest
utente viene controllata nel database di destinazione e, a seconda dei risultati, si verifica una delle operazioni seguenti:Se esiste un
Guest
account, la traccia viene riprodotta comeGuest
account.Se non esiste alcun
Guest
account nel database di destinazione, viene restituito un errore e la traccia viene riprodotta comeUser1
.
Nella figura seguente viene illustrato il processo di verifica delle autorizzazioni per la riproduzione delle tracce: