Bagikan melalui


Buat Proksi Agen SQL Server

Topik ini menjelaskan cara membuat proksi SQL Server Agent di SQL Server 2014 dengan menggunakan SQL Server Management Studio atau Transact-SQL.

Akun proksi SQL Server Agent menentukan konteks keamanan tempat langkah pekerjaan dapat berjalan. Setiap proksi sesuai dengan kredensial keamanan. Untuk mengatur izin untuk langkah pekerjaan tertentu, buat proksi yang memiliki izin yang diperlukan untuk subsistem SQL Server Agent, lalu tetapkan proksi tersebut ke langkah pekerjaan.

Dalam Topik Ini

Sebelum Anda mulai

Batasan dan Pembatasan

  • Anda harus membuat kredensial sebelum membuat proksi jika belum tersedia.

  • Proksi SQL Server Agent menggunakan kredensial untuk menyimpan informasi tentang akun pengguna Windows. Pengguna yang ditentukan dalam kredensial harus memiliki izin "Masuk sebagai tugas batch" pada komputer yang menjalankan SQL Server.

  • SQL Server Agent memeriksa akses ke subsistem untuk suatu proksi dan memberikan akses tersebut kepada proksi setiap kali langkah tugas dijalankan. Jika proksi tidak lagi memiliki akses ke subsistem, langkah pekerjaan gagal. Jika tidak, SQL Server Agent akan meniru identitas pengguna yang ditentukan dalam proksi dan menjalankan langkah tugas tersebut.

  • Pembuatan proksi tidak mengubah izin untuk pengguna yang ditentukan dalam kredensial untuk proksi. Misalnya, Anda dapat membuat proksi untuk pengguna yang tidak memiliki izin untuk menyambungkan ke instans SQL Server. Dalam hal ini, langkah-langkah pekerjaan yang menggunakan proksi tersebut tidak dapat tersambung ke SQL Server.

  • Jika pengguna yang login memiliki akses ke proksi, atau pengguna masuk dalam peran apa pun dengan akses ke proksi, pengguna dapat menggunakan proksi pada langkah kerja.

Keamanan

Hak akses

  • Hanya anggota sysadmin peran server tetap yang memiliki izin untuk membuat, memodifikasi, atau menghapus akun proksi. Pengguna yang bukan anggota peran server tetap sysadmin harus ditambahkan ke salah satu peran database tetap SQL Server Agent berikut dalam database msdb untuk menggunakan proksi: SQLAgentUserRole, SQLAgentReaderRole, atau SQLAgentOperatorRole.

  • Memerlukan izin ALTER ANY CREDENTIAL jika membuat kredensial selain proksi.

Menggunakan SQL Server Management Studio

Untuk membuat sebuah proksi SQL Server Agent

  1. Di Object Explorer, klik tanda plus untuk memperluas server tempat Anda ingin membuat proksi di SQL Server Agent.

  2. Klik tanda plus untuk memperluas Agen SQL Server.

  3. Klik kanan folder Proksi dan pilih Proksi Baru.

  4. Pada kotak dialog Akun Proksi Baru, pada halaman Umum, masukkan nama akun proksi dalam kotak nama Proksi.

  5. Dalam kotak nama kredensial, masukkan nama kredensial keamanan yang akan digunakan akun proksi.

  6. Dalam kotak Deskripsi, masukkan deskripsi untuk akun proksi

  7. Pada Aktif untuk subsistem berikut, pilih subsistem yang sesuai untuk proksi ini.

  8. Pada halaman Prinsipal, tambahkan atau hapus login atau peran untuk memperbolehkan atau mencabut akses ke akun proksi.

  9. Setelah selesai, klik OK.

Menggunakan T-SQL

Untuk membuat proksi SQL Server Agent

  1. Di Object Explorer, sambungkan ke instance Database Engine.

  2. Pada bilah Standar, klik Kueri Baru.

  3. Salin dan tempel contoh berikut ke dalam jendela kueri dan klik Jalankan.

    -- 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  
    

Untuk informasi selengkapnya, lihat: