Bagikan melalui


Pendaftaran SPN untuk instans Analysis Services

Berlaku untuk: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Nama Prinsipal Layanan (SPN) secara unik mengidentifikasi instans layanan di domain Direktori Aktif saat Kerberos digunakan untuk saling mengautentikasi identitas klien dan layanan. SPN dikaitkan dengan akun masuk tempat instans layanan berjalan.

Untuk aplikasi klien yang terhubung ke Analysis Services melalui autentikasi Kerberos, pustaka klien Analysis Services membuat SPN menggunakan nama host dari string koneksi dan variabel terkenal lainnya, seperti kelas layanan, yang diperbaiki dalam rilis Analysis Services tertentu.

Agar autentikasi timbal balik terjadi, SPN yang dibangun oleh klien harus cocok dengan objek SPN yang sesuai pada Pengendali Domain Direktori Aktif (DC). Ini berarti bahwa Anda mungkin perlu mendaftarkan beberapa SPN untuk satu instans Analysis Services untuk mencakup semua cara di mana pengguna mungkin menentukan nama host pada string koneksi. Misalnya, Anda mungkin memerlukan dua SPN untuk menangani nama domain yang sepenuhnya memenuhi syarat (FQDN) server, serta nama komputer pendek. Mendaftarkan SPN Analysis Services dengan benar sangat penting untuk koneksi yang berhasil. Jika SPN tidak ada, cacat, atau diduplikasi, koneksi akan gagal.

Pendaftaran SPN adalah tugas manual yang dilakukan oleh administrator Analysis Services. Tidak seperti mesin database SQL Server, Analysis Services tidak pernah mendaftarkan SPN-nya secara otomatis saat startup layanan. Pendaftaran manual diperlukan saat Analysis Services berjalan di bawah akun virtual default, akun pengguna domain, atau akun bawaan, termasuk SID per layanan.

Pendaftaran SPN tidak diperlukan jika layanan berjalan di bawah akun layanan terkelola yang telah ditentukan sebelumnya yang dibuat oleh administrator domain. Perhatikan bahwa bergantung pada tingkat fungsional domain Anda, mendaftarkan SPN dapat memerlukan izin administrator domain.

Tip

Microsoft Kerberos Configuration Manager for SQL Server adalah alat diagnostik yang membantu memecahkan masalah konektivitas terkait Kerberos dengan SQL Server. Untuk informasi selengkapnya, lihat Configuration Manager Microsoft Kerberos untuk SQL Server.

Topik ini berisi bagian berikut:

Ketika pendaftaran SPN diperlukan

Format SPN untuk Analysis Services

Pendaftaran SPN untuk akun virtual

Pendaftaran SPN untuk akun domain

Pendaftaran SPN untuk akun bawaan

Pendaftaran SPN untuk instans bernama

Pendaftaran SPN untuk kluster SSAS

Pendaftaran SPN untuk instans SSAS yang dikonfigurasi untuk akses HTTP

Pendaftaran SPN untuk instans SSAS yang mendengarkan port tetap

Ketika pendaftaran SPN diperlukan

Setiap koneksi klien yang menentukan "SSPI=Kerberos" pada string koneksi akan memperkenalkan persyaratan pendaftaran SPN untuk instans Analysis Services.

Pendaftaran SPN diperlukan dalam keadaan berikut. Untuk informasi selengkapnya, lihat Mengonfigurasi Analysis Services untuk delegasi yang dibatasi Kerberos.

  • Delegasi identitas diperlukan untuk mengalirkan identitas pengguna dari aplikasi klien atau layanan tingkat menengah ke Analysis Services. Delegasi identitas biasanya digunakan saat izin atau filter per pengguna ditentukan pada objek tertentu.

    Skenario umum yang melibatkan delegasi identitas adalah mengonfigurasi layanan tingkat menengah, seperti Excel Services atau Reporting Services, untuk delegasi yang dibatasi untuk tujuan meniru identitas pengguna saat mengambil data di Analysis Services. Untuk mendukung perilaku ini, Anda harus menyediakan SPN Analysis Services sebagai layanan tujuan saat mengonfigurasi Excel Services atau Reporting Services untuk delegasi yang dibatasi.

  • Analysis Services mendelegasikan identitas pengguna saat mengambil data dari database relasional SQL Server untuk database tabular menggunakan mode DirectQuery. Ini adalah satu-satunya skenario di mana Analysis Services akan mendelegasikan identitas pengguna ke layanan lain.

Format SPN untuk Analysis Services

Gunakan setspn untuk mendaftarkan SPN. Pada sistem operasi yang lebih baru, setspn diinstal sebagai utilitas sistem. Untuk informasi selengkapnya, lihat SetSPN.

Tabel berikut ini menjelaskan setiap bagian dari SPN Analysis Services.

Elemen Deskripsi
Kelas layanan MSOLAPSvc.3 mengidentifikasi layanan sebagai instans Analysis Services. .3 adalah referensi ke versi protokol XMLA-over-TCP/IP yang digunakan dalam transmisi Analysis Services. Ini tidak terkait dengan rilis produk. Dengan demikian, MSOLAPSvc.3 adalah kelas layanan yang benar untuk SQL Server 2005, 2008, 2008 R2, 2012, dan rilis Analysis Services di masa mendatang sampai protokol itu sendiri direvisi.
Nama host Mengidentifikasi komputer tempat layanan dijalankan. Ini bisa menjadi nama domain yang sepenuhnya memenuhi syarat atau nama NetBIOS. Anda harus mendaftarkan SPN untuk keduanya.

Saat mendaftarkan SPN untuk nama NetBIOS server, pastikan untuk menggunakan SetupSPN -S untuk memeriksa pendaftaran duplikat. Nama NetBIOS tidak dijamin unik di forest, dan memiliki pendaftaran SPN duplikat akan menyebabkan koneksi gagal.

Untuk kluster seimbang beban Analysis Services, nama host harus menjadi nama virtual yang ditetapkan ke kluster.

Jangan pernah membuat SPN menggunakan alamat IP. Kerberos menggunakan kemampuan resolusi DNS domain. Menentukan alamat IP melewati kemampuan tersebut.
Nomor port Meskipun nomor port adalah bagian dari sintaks SPN, Anda tidak pernah menentukan nomor port saat mendaftarkan SPN Analysis Services. Karakter titik dua ( : ) , biasanya digunakan untuk memberikan nomor port dalam sintaks SPN standar, digunakan oleh Analysis Services untuk menentukan nama instans. Untuk instans Analysis Services, port diasumsikan sebagai port default (TCP 2383) atau port yang ditetapkan oleh layanan SQL Server Browser (TCP 2382).
Nama instans Analysis Services adalah layanan yang dapat direplikasi yang dapat diinstal beberapa kali di komputer yang sama. Setiap instans diidentifikasi melalui nama instansnya.

Nama instans diawali dengan karakter titik dua ( : ) . Misalnya, mengingat komputer host bernama SRV01 dan instans bernama SSAS-Tabular, SPN harus SRV01:SSAS-Tabular.

Perhatikan bahwa sintaks untuk menentukan instans Analysis Services bernama berbeda dari yang digunakan oleh instans SQL Server lainnya. Layanan lain menggunakan garis miring terbelakang ( \ ) untuk menambahkan nama instans dalam SPN.
Akun layanan Ini adalah akun startup dari layanan Windows MSSQLServerOLAPService . Ini bisa berupa akun pengguna domain Windows, akun virtual, akun layanan terkelola (MSA) atau akun bawaan seperti SID per layanan, NetworkService, atau LocalSystem. Akun pengguna domain Windows dapat diformat sebagai domain\pengguna atau user@domain.

Pendaftaran SPN untuk akun virtual

Akun virtual adalah jenis akun default untuk layanan SQL Server. Akun virtual adalah NT Service\MSOLAPService untuk instans default dan NT Service\MSOLAP$<instance-name> untuk instans bernama.

Seperti namanya, akun-akun ini tidak ada di Direktori Aktif. Akun virtual hanya ada di komputer lokal. Saat menyambungkan ke layanan eksternal, aplikasi, atau perangkat, koneksi dibuat menggunakan akun komputer lokal. Untuk alasan ini, pendaftaran SPN untuk Analysis Services yang berjalan di bawah akun virtual sebenarnya adalah pendaftaran SPN untuk akun komputer.

Contoh sintaks untuk instans default yang berjalan sebagai NT Service\MSOLAPService

Contoh ini menunjukkan sintaks setspn untuk instans default Analysis Services yang berjalan di bawah akun virtual default. Dalam contoh ini, nama host komputer adalah AW-SRV01. Seperti yang disebutkan, pendaftaran SPN harus menentukan akun komputer alih-alih akun virtual, NT Service\MSOLAPService.

Setspn -s MSOLAPSvc.3/AW-SRV01.AdventureWorks.com AW-SRV01  

Catatan

Ingatlah untuk membuat dua pendaftaran SPN, satu untuk nama host NetBIOS dan satu detik untuk nama domain host yang sepenuhnya memenuhi syarat. Aplikasi klien yang berbeda menggunakan konvensi nama host yang berbeda saat menyambungkan ke Analysis Services. Memiliki dua pendaftaran SPN memastikan bahwa kedua versi nama host diperkirakan.

Contoh sintaks untuk instans bernama yang berjalan sebagai NT Service\MSOLAP$<instance-name>

Contoh ini menunjukkan sintaks setspn untuk instans bernama yang berjalan di bawah akun virtual default. Dalam contoh ini, nama host komputer adalah AW-SRV02, dan nama instansnya adalah AW-FINANCE. Sekali lagi, ini adalah akun komputer yang ditentukan untuk SPN, bukan akun virtual NT Service\MSOLAP$<instance-name>.

Setspn -s MSOLAPSvc.3/AW-SRV02.AdventureWorks.com:AW-FINANCE AW-SRV02  

Pendaftaran SPN untuk akun domain

Menggunakan akun domain untuk menjalankan instans Analysis Services adalah praktik umum.

Untuk instans Analysis Services yang berjalan di kluster seimbang beban jaringan atau perangkat keras, akun domain diperlukan, dengan setiap instans dalam kluster yang berjalan di bawah akun domain yang sama.

Contoh sintaks untuk instans default yang berjalan sebagai pengguna domain

Contoh ini menunjukkan sintaks setspn untuk instans default Analysis Services yang berjalan di bawah akun pengguna domain, SSAS-Service, di domain AdventureWorks.

Setspn -s msolapsvc.3/AW-SRV01.Adventureworks.com AdventureWorks\SSAS-Service  

Tip

Verifikasi apakah SPN dibuat untuk server Analysis Services dengan menjalankan Setspn -L <domain account> atau Setspn -L <machinename>, tergantung pada bagaimana SPN didaftarkan. Anda akan melihat MSOLAPSVC.3/<nama> host dalam daftar.

Pendaftaran SPN untuk akun bawaan

Meskipun praktik ini tidak disarankan, penginstalan Analysis Services yang lebih lama terkadang dikonfigurasi untuk berjalan di bawah akun bawaan seperti Layanan Jaringan, Layanan Lokal, atau Sistem Lokal.

Contoh sintaks untuk instans default yang berjalan di bawah akun bawaan

Pendaftaran SPN untuk layanan yang berjalan di bawah akun bawaan atau SID per layanan setara dengan sintaks SPN yang digunakan untuk akun virtual. Alih-alih nama akun, gunakan akun komputer:

Setspn -s MSOLAPSvc.3/AW-SRV01.AdventureWorks.com AW-SRV01  

Pendaftaran SPN untuk instans bernama

Secara default, instans bernama Analysis Services menggunakan penetapan port dinamis yang terdeteksi oleh layanan browser SQL Server. Anda hanya perlu membuat NETBIOS dan FQDN SPN untuk instans bernama untuk mengaktifkan koneksi Kerberos.

Contoh sintaks untuk instans bernama yang berjalan sebagai pengguna domain

Contoh berikut menunjukkan setspn sintaks untuk instans AW-FINANCE bernama Analysis Services yang berjalan di bawah akun pengguna domain, SSAS-Service, di domain AdventureWorks. Dalam contoh ini, nama host komputer adalah AW-SRV01.

FQDN SPN: Setspn -s MSOLAPSvc.3/AW-SRV01.AdventureWorks.com:AW-FINANCE AdventureWorks\SSAS-Service 

NetBIOS SPN: Setspn -s MSOLAPSvc.3/AW-SRV01:AW-FINANCE AdventureWorks\SSAS-Service 

Catatan

Jika Anda mengonfigurasi instans bernama untuk mendengarkan port tetap, lakukan langkah-langkah berikut untuk menggunakan koneksi Kerberos dari aplikasi klien Anda:

  1. Mulai layanan browser SQL Server.
  2. Jika Anda menggunakan nomor port di string koneksi Anda, hapus nomor port, tambahkan nama instans, dan biarkan aplikasi menerima nomor port melalui layanan browser SQL Server.

Tip

Verifikasi apakah SPN dibuat untuk instans bernama SQL dengan menjalankan Setspn -L <domain account> perintah atau Setspn -L <machinename> , tergantung pada bagaimana SPN didaftarkan.

Microsoft Kerberos Configuration Manager untuk SQL Server adalah alat diagnostik yang membantu memecahkan masalah konektivitas terkait Kerberos dengan SQL Server. Alat ini dapat membantu mengidentifikasi potensi masalah dalam SPN dan delegasi dan menyediakan prosedur otomatis untuk memperbaiki masalah yang diidentifikasi. Untuk informasi selengkapnya, lihat Configuration Manager Microsoft Kerberos untuk SQL Server.

Pendaftaran SPN untuk kluster SSAS

Untuk kluster failover Analysis Services, nama host harus menjadi nama virtual yang ditetapkan ke kluster. Ini adalah nama jaringan SQL Server, yang ditentukan selama Penyiapan SQL Server saat Anda menginstal Analysis Services di atas WSFC yang ada. Anda dapat menemukan nama ini di Direktori Aktif. Anda juga dapat menemukannya di tabSumber DayaPeran | Manajer | Kluster Failover. Nama server pada tab Sumber Daya adalah apa yang harus digunakan sebagai 'nama virtual' dalam perintah SPN.

Sintaks SPN untuk kluster Analysis Services

Setspn -s msolapsvc.3/<virtualname.FQDN > <domain user account>  

Ingat bahwa simpul dalam kluster Analysis Services diperlukan untuk menggunakan port default (TCP 2383) dan berjalan di bawah akun pengguna domain yang sama sehingga setiap simpul memiliki SID yang sama. Lihat Cara Mengkluster SQL Server Analysis Services untuk informasi selengkapnya.

Pendaftaran SPN untuk instans SSAS yang dikonfigurasi untuk akses HTTP

Bergantung pada persyaratan solusi, Anda mungkin telah mengonfigurasi Analysis Services untuk akses HTTP. Jika solusi Anda menyertakan IIS sebagai komponen tingkat menengah, dan autentikasi Kerberos adalah persyaratan solusi, Anda mungkin perlu mendaftarkan SPN untuk IIS secara manual. Untuk informasi selengkapnya, lihat "Mengonfigurasi pengaturan pada komputer yang menjalankan IIS" di Cara mengonfigurasi SQL Server 2008 Analysis Services dan SQL Server 2005 Analysis Services untuk menggunakan autentikasi Kerberos.

Dalam hal pendaftaran SPN untuk instans Analysis Services, tidak ada perbedaan antara instans yang dikonfigurasi untuk TCP atau HTTP. Koneksi ke Analysis Services dari IIS, menggunakan ekstensi MSMDPUMP ISAPI, selalu TCP.

Ini berarti Anda dapat menggunakan instruksi dari bagian sebelumnya untuk instans default atau bernama untuk mendaftarkan SPN. Saat menentukan nama host, pastikan untuk menggunakan nama host yang Anda tentukan dalam file msmdpump.ini saat Mengonfigurasi layanan untuk akses HTTP.

Untuk informasi selengkapnya tentang akses HTTP, lihat Mengonfigurasi Akses HTTP ke Analysis Services di Internet Information Services (IIS) 8.0.

Pendaftaran SPN untuk instans SSAS yang mendengarkan port tetap

Anda tidak dapat menentukan nomor port pada pendaftaran SPN Analysis Services. Pendaftaran SPN Analysis Services hanya dapat menggunakan nama instans. Jika Anda menginstal Analysis Services sebagai instans default dan mengonfigurasinya untuk mendengarkan di port non-default, Anda tidak dapat tersambung ke instans tersebut menggunakan Kerberos. Anda harus mengonfigurasinya untuk mendengarkan port default (TCP 2383) untuk mengaktifkan koneksi Kerberos ke instans tersebut. Instans default Analysis Services yang mendengarkan pada port non-default hanya dapat menerima koneksi NTLM. Untuk instans bernama, Anda perlu memulai SQL Server layanan Browser dan menggunakan nama instans dalam string koneksi Anda alih-alih nomor port.

Instans Analysis Services hanya dapat mendengarkan pada satu port. Menggunakan beberapa port tidak didukung. Untuk informasi selengkapnya tentang konfigurasi port, lihat Mengonfigurasi Firewall Windows untuk Mengizinkan Akses Analysis Services.

Lihat juga

Autentikasi Microsoft BI dan Delegasi Identitas
Autentikasi Timbal Balik Menggunakan Kerberos
Sintaks SetSPN Nama Prinsipal Layanan (SPN) (Setspn.exe)
SetSPN
Panduan Langkah demi Langkah Akun Layanan
Konfigurasikan Akun dan Izin Layanan Windows
Cara menggunakan SPN saat Anda mengonfigurasi aplikasi Web yang dihosting di Layanan Informasi Internet
apa yang baru dalam akun layanan
Mengonfigurasi autentikasi Kerberos untuk Produk SharePoint 2010 (laporan resmi)