Creazione di un proxy di SQL Server Agent

Questo argomento descrive come creare un proxy di SQL Server Agent in SQL Server 2014 usando SQL Server Management Studio o Transact-SQL.

Un account proxy di SQL Server Agent definisce un contesto di sicurezza in cui è possibile l'esecuzione di un passaggio di processo. Ogni proxy corrisponde a una credenziale di sicurezza Per impostare le autorizzazioni per un particolare passaggio di processo, creare un proxy dotato delle autorizzazioni necessarie per un sottosistema di SQL Server Agent e quindi assegnarlo al passaggio di processo.

Contenuto dell'articolo

Prima di iniziare

Limitazioni e restrizioni

  • Se non disponibili, prima di creare un proxy è necessario creare le credenziali.

  • I proxy di SQL Server Agent usano le credenziali per archiviare le informazioni sugli account utente di Windows. L'utente specificato nella credenziale deve disporre dell'autorizzazione "Accesso come processo batch" per il computer in cui è in esecuzione SQL Server.

  • SQL Server Agent verifica l'accesso al sottosistema per un proxy e concede l'accesso al proxy a ogni esecuzione del passaggio di processo. Se il proxy non dispone più di accesso al sottosistema, il passaggio di processo non viene eseguito correttamente. In caso contrario, SQL Server Agent rappresenta l'utente specificato nel proxy ed esegue il passaggio di processo.

  • La creazione di un proxy non implica la modifica delle autorizzazioni per l'utente specificato nella credenziale del proxy. È possibile ad esempio creare un proxy per un utente che non dispone delle autorizzazioni per connettersi a un'istanza di SQL Server. In questo caso, i passaggi di processo che usano il proxy non sono in grado di connettersi a SQL Server.

  • Se l'account di accesso per l'utente viene utilizzato per l'accesso al proxy oppure se l'utente appartiene a un qualsiasi ruolo che prevede l'accesso al proxy, l'utente potrà utilizzare il proxy in un passaggio di processo.

Sicurezza

Autorizzazioni

  • Solo i membri del ruolo predefinito del server sysadmin sono autorizzati a creare, modificare o eliminare gli account proxy. Gli utenti che non sono membri del ruolo predefinito del server sysadmin devono essere aggiunti a uno dei seguenti SQL Server Agent ruoli fissi del database nel database msdb per usare proxy: SQLAgentUserRole, SQLAgentReaderRole o SQLAgentOperatorRole.

  • Richiede l'autorizzazione ALTER ANY CREDENTIAL se si creano le credenziali oltre al proxy.

Uso di SQL Server Management Studio

Per creare un proxy di SQL Server Agent

  1. In Esplora oggettifare clic sul segno più per espandere il server in cui si desidera creare un proxy SQL Server Agent.

  2. Fare clic sul segno più per espandere SQL Server Agent.

  3. Fare clic con il pulsante destro del mouse sulla cartella Proxy e scegliere Nuovo proxy.

  4. Nella pagina Generale della finestra di dialogo Nuovo account proxy immettere il nome del nuovo account proxy nella casella Nome proxy .

  5. Nella casella Nome credenziali immettere il nome delle credenziali di sicurezza che verranno utilizzate dall'account proxy.

  6. Immettere una descrizione dell'account proxy nella casella Descrizione .

  7. In Attivo nei sottosistemi seguenti, selezionare il sottosistema o i sottosistemi adatti per questo proxy.

  8. Nella pagina Entità aggiungere o rimuovere account di accesso oppure ruoli per concedere o negare l'accesso all'account proxy.

  9. Al termine, fare clic su OK.

Uso di Transact-SQL

Per creare un proxy di SQL Server Agent

  1. In Esplora oggetti connettersi a un'istanza del motore di database.

  2. Sulla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.

    -- creates credential CatalogApplicationCredential  
    USE msdb ;  
    GO  
    CREATE CREDENTIAL CatalogApplicationCredential WITH IDENTITY = 'REDMOND/TestUser',   
        SECRET = 'G3$1o)lkJ8HNd!';  
    GO  
    -- creates proxy "Catalog application proxy" and assigns the credential 'CatalogApplicationCredential' to it.  
    EXEC dbo.sp_add_proxy  
        @proxy_name = 'Catalog application proxy',  
        @enabled = 1,  
        @description = 'Maintenance tasks on catalog application.',  
        @credential_name = 'CatalogApplicationCredential' ;  
    GO  
    -- grants the proxy "Catalog application proxy" access to the ActiveX Scripting subsystem.  
    EXEC dbo.sp_grant_proxy_to_subsystem  
        @proxy_name = N'Catalog application proxy',  
        @subsystem_id = 2 ;  
    GO  
    

Per altre informazioni, vedere: