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
La maggior parte delle applicazioni di Service Broker che coinvolgono più di un'istanza vengono eseguite nel contesto di sicurezza di un principal del database creato specificamente per l'applicazione. Queste entità di database devono disporre delle autorizzazioni minime necessarie per eseguire le attività eseguite dall'applicazione.
Le seguenti considerazioni si possono applicare alle entità di database create per le applicazioni di Service Broker:
La funzionalità di autorizzazione remota di Service Broker viene usata quando un'applicazione remota di Service Broker si connette a SQL Server e recapita un messaggio all'istanza. Il principal del database specificato per l'autorizzazione remota deve disporre dell'autorizzazione
CONNECTnel database che ospita il servizio iniziatore e dell'autorizzazioneSENDper il servizio iniziatore stesso. L'utente deve essere proprietario del certificato usato per l'autenticazione. Non è richiesto che l'utente sia proprietario di altri oggetti, che abbia altri permessi o che possa accedere con altri meccanismi.Affinché un'entità di database inizi una conversazione, tale entità deve disporre
RECEIVEdelle autorizzazioni per la coda per il servizio di avvio.L'entità di database proprietaria del servizio di avvio deve disporre
SENDdelle autorizzazioni per il servizio di destinazione.Affinché un'entità di database invii messaggi a un servizio, tale entità deve disporre
SENDdelle autorizzazioni per il servizio. Per i servizi ospitati in un'altra istanza, la sicurezza delle finestre di dialogo di Service Broker determina il principal del database nell'istanza remota. Per altre informazioni, vedere Sicurezza della finestra di dialogo di Service Broker. Service Broker non considera l'appartenenza ai ruoli di Windows durante il controllo delleSENDautorizzazioni.L'utente specificato come utente di una stored procedure di attivazione deve disporre dell'autorizzazione a eseguire la procedura. Spesso, l'utente specificato dispone delle autorizzazioni necessarie per eseguire le istruzioni nella procedura. Tuttavia, se la stored procedure stessa viene definita con una
EXECUTE ASclausola , le istruzioni nella stored procedure vengono eseguite con il contesto di sicurezza definito dalla stored procedure. SQL Server imposta innanzitutto il contesto di sicurezza sull'utente specificato per la coda. SQL Server esegue quindi la procedura memorizzata e la procedura memorizzata passa al contesto di sicurezza dell'utente specificato per la procedura.Quando la sicurezza del trasporto di Service Broker usa SSPI, l'account del servizio per il database remoto deve disporre dell'autorizzazione
CONNECTinmastere deve anche corrispondere a un login. Di conseguenza, l'account che viene eseguito dall'istanza remota di SQL Server deve disporre dell'autorizzazione di accesso a SQL Server tramite l'autenticazione di Windows. Non esistono requisiti che impongano all'account di accesso di disporre di altre autorizzazioni o di essere proprietario di oggetti in alcun database.