Mengonfigurasi Akun Layanan (Analysis Services)

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

Provisi akun di seluruh produk didokumenkan dalam Mengonfigurasi Akun dan Izin Layanan Windows, topik yang menyediakan informasi akun layanan komprehensif untuk semua layanan SQL Server, termasuk SQL Server Analysis Services. Lihat untuk mempelajari tentang jenis akun yang valid, hak istimewa Windows yang ditetapkan oleh penyetelan, izin sistem file, izin registri, dan banyak lagi.

Topik ini menyediakan informasi tambahan untuk SQL Server Analysis Services, termasuk izin tambahan yang diperlukan untuk penginstalan tabular dan kluster. Ini juga mencakup izin yang diperlukan untuk mendukung operasi server. Misalnya, Anda dapat mengonfigurasi operasi pemrosesan dan kueri untuk dijalankan di bawah akun layanan ─ dalam skenario ini, izin tambahan diperlukan.

Langkah konfigurasi lain, tidak didokumenkan di sini, adalah mendaftarkan Nama Prinsipal Layanan (SPN) untuk instans SQL Server Analysis Services dan akun layanan. Langkah ini memungkinkan autentikasi pass-through dari aplikasi klien ke sumber data backend dalam skenario double-hop. Langkah ini hanya berlaku untuk layanan yang dikonfigurasi untuk delegasi yang dibatasi Kerberos. Lihat Mengonfigurasi Analysis Services untuk delegasi yang dibatasi Kerberos untuk instruksi lebih lanjut.

Rekomendasi akun masuk

Akun startup layanan Windows MSSQLServerOLAPService dapat berupa akun pengguna domain Windows, akun virtual, akun layanan terkelola (MSA) atau akun bawaan seperti SID per layanan, NetworkService, atau LocalSystem. Menggunakan akun pengguna domain sebagai akun masuk layanan menyediakan detail tentang format akun pengguna.

Dalam kluster failover, semua instans Analysis Services harus dikonfigurasi untuk menggunakan akun pengguna domain Windows. Tetapkan akun yang sama ke semua instans. Lihat Cara Cluster Analysis Services untuk detailnya.

Instans mandiri harus menggunakan akun virtual default, NT Service\MSSQLServerOLAPService untuk instans default, atau NT Service\MSOLAP$instance-name untuk instans bernama. Rekomendasi ini berlaku untuk instans Analysis Services di semua mode server, dengan asumsi Windows Server 2008 R2 dan yang lebih baru untuk sistem operasi, dan SQL Server 2012 dan yang lebih baru untuk Analysis Services.

Memberikan izin ke Analysis Services

Bagian ini menjelaskan izin yang diperlukan Analysis Services untuk operasi internal lokal. Operasi ini termasuk memulai executable, membaca file konfigurasi, dan memuat database dari direktori data. Panduan tentang mengatur izin untuk akses data eksternal dan interoperabilitas dengan layanan dan aplikasi lain, tersedia di Memberikan izin tambahan untuk operasi server tertentu lebih lanjut dalam topik ini.

Untuk operasi internal, pemegang izin di Analysis Services bukan akun masuk, tetapi grup keamanan Windows lokal yang dibuat oleh penyiapan yang berisi SID per layanan. Menetapkan izin ke grup keamanan konsisten dengan versi Analysis Services sebelumnya. Selain itu, akun masuk dapat berubah dari waktu ke waktu, tetapi SID per layanan dan kelompok keamanan lokal konstan selama masa pakai penginstalan server. Untuk Analysis Services, grup keamanan adalah pilihan yang lebih baik untuk menyimpan izin daripada akun masuk. Setiap kali Anda memberikan hak secara manual ke instans layanan, baik izin sistem file atau hak istimewa Windows, pastikan untuk memberikan izin ke grup keamanan lokal yang dibuat untuk instans server.

Nama grup keamanan mengikuti pola. Awalan selalu SQLServerMSASUser$, diikuti dengan nama komputer, diakhiri dengan nama instans. Instans defaultnya adalah MSSQLSERVER. Instans bernama adalah nama yang diberikan selama penyiapan.

Anda dapat melihat grup keamanan ini di pengaturan keamanan lokal:

  • Jalankan compmgmt.msc | Pengguna dan Grup | LokalKelompok | SQLServerMSASUser$<nama> server$MSSQLSERVER (untuk instans default).

  • Untuk melihat anggotanya, klik dua kali grup keamanan.

Satu-satunya anggota grup adalah SID per layanan. Tepat di sebelahnya adalah akun masuk. Nama akun masuk bersifat kosmetik, di sana untuk memberikan konteks ke SID per layanan. Jika Anda mengubah akun masuk, grup keamanan dan SID per layanan tidak berubah. Hanya label akun masuk yang berbeda.

Hak istimewa Windows yang ditetapkan ke akun layanan Analysis Services

Analysis Services memerlukan izin dari sistem operasi untuk memulai layanan dan meminta sumber daya sistem. Persyaratan bervariasi menurut mode server dan apakah instans diklusterkan.

Semua instans Analysis Services memerlukan hak istimewa Masuk sebagai layanan (SeServiceLogonRight). penyiapan SQL Server menetapkan hak istimewa untuk Anda pada akun layanan yang ditentukan selama penginstalan. Untuk server yang berjalan dalam mode Multidimensi dan Penggalian Data, ini adalah satu-satunya hak istimewa Windows yang diperlukan oleh akun layanan Analysis Services untuk penginstalan server mandiri, dan itu adalah satu-satunya hak istimewa yang dikonfigurasi Penyiapan untuk Analysis Services. Untuk instans terkluster dan tabular, hak istimewa Windows tambahan harus ditambahkan secara manual.

Instans kluster failover, dalam mode Tabular atau Multidimensi, harus memiliki Prioritas penjadwalan Peningkatan (SeIncreaseBasePriorityPrivilege).

Instans tabular menggunakan tiga hak istimewa tambahan berikut, yang harus diberikan secara manual setelah instans diinstal.

Hak istimewa Deskripsi
Meningkatkan set kerja proses (SeIncreaseWorkingSetPrivilege) Hak istimewa ini tersedia untuk semua pengguna secara default melalui grup keamanan Pengguna . Jika Anda mengunci server dengan menghapus hak istimewa untuk grup ini, Analysis Services mungkin gagal memulai, mencatat kesalahan ini: "Hak istimewa yang diperlukan tidak dipegang oleh klien." Ketika kesalahan ini terjadi, pulihkan hak istimewa ke Analysis Services dengan memberikannya ke grup keamanan Analysis Services yang sesuai.
Menyesuaikan kuota memori untuk proses (SeIncreaseQuotaPrivilege) Hak istimewa ini digunakan untuk meminta lebih banyak memori jika proses memiliki sumber daya yang tidak memadai untuk menyelesaikan eksekusinya, tunduk pada ambang memori yang ditetapkan untuk instans.
Mengunci halaman dalam memori (SeLockMemoryPrivilege) Hak istimewa ini hanya diperlukan ketika penomor dimatikan sepenuhnya. Secara default, instans server tabular menggunakan file halaman Windows, tetapi Anda dapat mencegahnya menggunakan halaman Windows dengan mengatur VertiPaqPagingPolicy ke 0.

VertiPaqPagingPolicy ke 1 (default), menginstruksikan instans server tabular untuk menggunakan file halaman Windows. Alokasi tidak dikunci, memungkinkan Windows untuk melakukan page out sesuai kebutuhan. Karena halaman sedang digunakan, tidak perlu mengunci halaman dalam memori. Dengan demikian, untuk konfigurasi default (di mana VertiPaqPagingPolicy = 1), Anda tidak perlu memberikan halaman Kunci dalam hak istimewa memori ke instans tabular.

VertiPaqPagingPolicy ke 0. Jika Anda menonaktifkan halaman untuk Analysis Services, alokasi dikunci, dengan asumsi halaman Kunci dalam hak istimewa memori diberikan ke instans tabular. Mengingat pengaturan ini dan halaman Kunci dalam hak istimewa memori, Windows tidak dapat memunculkan alokasi memori yang dibuat untuk Analysis Services ketika sistem berada di bawah tekanan memori. Analysis Services bergantung pada halaman Kunci dalam izin memori sebagai penegakan di belakang VertiPaqPagingPolicy = 0. Perhatikan bahwa menonaktifkan halaman Windows tidak disarankan. Ini akan meningkatkan tingkat kesalahan kehabisan memori untuk operasi yang mungkin berhasil jika halaman diizinkan. Lihat Properti Memori untuk informasi selengkapnya tentang VertiPaqPagingPolicy.

Untuk melihat atau menambahkan hak istimewa Windows pada akun layanan

  1. Jalankan GPEDIT.msc | Kebijakan Komputer Lokal | Konfigurasi Komputer | Pengaturan Windows | Pengaturan Keamanan | Kebijakan Lokal | Penetapan Hak Pengguna.

  2. Tinjau kebijakan yang ada yang menyertakan SQLServerMSASUser$. Ini adalah kelompok keamanan lokal yang ditemukan di komputer yang memiliki penginstalan Analysis Services. Hak istimewa Windows dan izin folder file diberikan kepada kelompok keamanan ini. Klik dua kali Masuk sebagai kebijakan layanan untuk melihat bagaimana grup keamanan ditentukan pada sistem Anda. Nama lengkap grup keamanan akan bervariasi tergantung pada apakah Anda menginstal Analysis Services sebagai instans bernama. Gunakan grup keamanan ini, bukan akun layanan aktual, saat menambahkan hak istimewa akun.

  3. Untuk menambahkan hak istimewa akun di GPEDIT, klik kanan Tingkatkan rangkaian kerja proses dan pilih Properti.

  4. Klik Tambahkan Pengguna atau Grup.

  5. Masukkan grup pengguna untuk instans Analysis Services. Ingatlah bahwa akun layanan adalah anggota grup keamanan lokal, mengharuskan Anda menambahkan nama komputer lokal sebagai domain akun.

    Daftar berikut menunjukkan dua contoh untuk instans default dan instans bernama yang disebut "Tabular" pada komputer yang disebut "SQL01-WIN12", di mana nama komputer adalah domain lokal.

    • SQL01-WIN12\SQL01-WIN12$SQLServerMSASUser$MSSQLSERVER

    • SQL01-WIN12\SQL01-WIN12$SQLServerMSASUser$TABULAR

  6. Ulangi untuk Menyesuaikan kuota memori untuk proses, dan secara opsional, untuk Mengunci halaman dalam memori atau Meningkatkan prioritas penjadwalan.

Catatan

Versi Penyiapan sebelumnya secara tidak sengaja menambahkan akun layanan Analysis Services ke grup Pengguna Log Performa . Meskipun cacat ini telah diperbaiki, penginstalan yang ada mungkin memiliki keanggotaan grup yang tidak perlu ini. Karena akun layanan SQL Server Analysis Services tidak memerlukan keanggotaan di grup Pengguna Log Performa, Anda dapat menghapusnya dari grup.

Izin Sistem File yang ditetapkan ke akun layanan Analysis Services

Catatan

Lihat Mengonfigurasi Akun dan Izin Layanan Windows untuk daftar izin yang terkait dengan setiap folder program.

Lihat Mengonfigurasi Akses HTTP ke Analysis Services di Internet Information Services (IIS) 8.0 untuk informasi izin file yang terkait dengan konfigurasi IIS dan SQL Server Analysis Services.

Semua izin sistem file yang diperlukan untuk operasi server, termasuk izin yang diperlukan untuk memuat dan membongkar database dari folder data yang ditunjuk, ditetapkan oleh SQL Server Penyiapan selama penginstalan.

Pemegang izin pada file data, file program yang dapat dieksekusi, file konfigurasi, file log, dan file sementara adalah grup keamanan lokal yang dibuat oleh penyetelan SQL Server.

Ada satu grup keamanan yang dibuat untuk setiap instans yang Anda instal. Grup keamanan dinamai sesuai instans ─ SQLServerMSASUser$MSSQLSERVER untuk instans default, atau SQLServerMSASUser$<servername>$<instancename> untuk instans bernama. Penyetelan menyediakan grup keamanan ini dengan izin file yang diperlukan untuk melakukan operasi server. Jika Anda memeriksa izin keamanan pada \MSAS13. Direktori MSSQLSERVER\OLAP\BIN, Anda akan melihat bahwa grup keamanan (bukan akun layanan atau SID per layanannya) adalah pemegang izin pada direktori tersebut.

Grup keamanan hanya berisi satu anggota: Pengidentifikasi Keamanan per layanan (SID) dari akun startup instans SQL Server Analysis Services. Penyiapan menambahkan SID per layanan ke grup keamanan lokal. Penggunaan grup keamanan lokal, dengan keanggotaan SID-nya, adalah perbedaan kecil tetapi nyata dalam bagaimana penyiapan SQL Server menyediakan Analysis Services, dibandingkan dengan Mesin Database.

Jika Anda yakin bahwa izin file rusak, ikuti langkah-langkah ini untuk memverifikasi bahwa layanan masih disediakan dengan benar:

  1. Gunakan alat baris perintah Kontrol Layanan (sc.exe) untuk mendapatkan SID instans layanan default.

    SC showsid MSSqlServerOlapService

    Untuk instans bernama (di mana nama instans adalah Tabular), gunakan sintaks ini:

    SC showsid MSOlap$Tabular

  2. GunakanGrup Pengguna dan Grup | Lokal Manajer | Komputeruntuk memeriksa keanggotaan grup keamanan SQLServerMSASUser$<servername>$<instancename>.

    SID anggota harus cocok dengan SID per layanan dari langkah 1.

  3. Menggunakan Windows Explorer | Program Files | Microsoft SQL Server | MSASxx.MSSQLServer | OLAP | bin untuk memverifikasi folder Properti keamanan diberikan ke grup keamanan di langkah 2.

Catatan

Jangan pernah menghapus atau mengubah SID. Untuk memulihkan SID per layanan yang secara tidak sengaja dihapus, lihat https://support.microsoft.com/kb/2620201.

Selengkapnya tentang SID per layanan

Setiap akun Windows memiliki SID terkait, tetapi layanan juga dapat memiliki SID, sehingga disebut sebagai SID per layanan. SID per layanan dibuat saat instans layanan diinstal, sebagai perlengkapan layanan yang unik dan permanen. SID per layanan adalah SID tingkat komputer lokal yang dihasilkan dari nama layanan. Pada instans default, nama yang mudah digunakan adalah NT SERVICE\MSSQLServerOLAPService.

Manfaat SID per layanan adalah memungkinkan akun masuk yang lebih terlihat secara luas untuk diubah secara segan-segan, tanpa memengaruhi izin file. Misalnya, Anda menginstal dua instans Analysis Services, instans default dan instans bernama, keduanya berjalan di bawah akun pengguna Windows yang sama. Saat akun masuk dibagikan, setiap instans layanan akan memiliki SID per layanan yang unik. SID ini berbeda dari SID akun masuk. SID per layanan digunakan untuk izin file dan hak istimewa Windows. Sebaliknya, SID akun masuk digunakan untuk skenario autentikasi dan otorisasi ─ SIDS yang berbeda, digunakan untuk tujuan yang berbeda.

Karena SID tidak dapat diubah, ACL sistem file yang dibuat selama penginstalan layanan dapat digunakan tanpa batas waktu, terlepas dari seberapa sering Anda mengubah akun layanan. Sebagai ukuran keamanan tambahan, ACL yang menentukan izin melalui SID memastikan bahwa program yang dapat dieksekusi dan folder data hanya diakses oleh satu instans layanan, bahkan jika layanan lain berjalan di bawah akun yang sama.

Memberikan izin Analysis Services tambahan untuk operasi server tertentu

SQL Server Analysis Services menjalankan beberapa tugas dalam konteks keamanan akun layanan (atau akun masuk) yang digunakan untuk memulai SQL Server Analysis Services, dan menjalankan tugas lain dalam konteks keamanan pengguna yang meminta tugas.

Tabel berikut ini menjelaskan izin tambahan yang diperlukan untuk mendukung tugas yang dijalankan sebagai akun layanan.

Operasi Server Item Kerja Justifikasi
Akses jarak jauh ke sumber data relasional eksternal Membuat login database untuk akun layanan Pemrosesan mengacu pada pengambilan data dari sumber data eksternal (biasanya database relasional), yang kemudian dimuat ke dalam database SQL Server Analysis Services. Salah satu opsi kredensial untuk mengambil data eksternal adalah dengan menggunakan akun layanan. Opsi kredensial ini hanya berfungsi jika Anda membuat login database untuk akun layanan dan memberikan izin baca pada database sumber. Lihat Mengatur Opsi Peniruan Identitas (SSAS - Multidmensional) untuk informasi selengkapnya tentang bagaimana opsi akun layanan digunakan untuk tugas ini. Demikian pula, jika ROLAP digunakan sebagai mode penyimpanan, opsi peniruan yang sama tersedia. Dalam hal ini, akun juga harus memiliki akses tulis ke data sumber untuk memproses partisi ROLAP (yaitu, untuk menyimpan agregasi).
DirectQuery Membuat login database untuk akun layanan DirectQuery adalah fitur tabular yang digunakan untuk mengkueri himpunan data eksternal yang terlalu besar agar pas di dalam model tabular atau memiliki karakteristik lain yang membuat DirectQuery lebih cocok daripada opsi penyimpanan dalam memori default. Salah satu opsi koneksi yang tersedia dalam mode DirectQuery adalah menggunakan akun layanan. Sekali lagi, opsi ini hanya berfungsi ketika akun layanan memiliki izin masuk dan baca database pada sumber data target. Lihat Mengatur Opsi Peniruan Identitas (SSAS - Multidmensional) untuk informasi selengkapnya tentang bagaimana opsi akun layanan digunakan untuk tugas ini. Atau, kredensial pengguna saat ini dapat digunakan untuk mengambil data. Dalam kebanyakan kasus, opsi ini memerlukan koneksi lompatan ganda, jadi pastikan untuk mengonfigurasi akun layanan untuk delegasi yang dibatasi Kerberos sehingga akun layanan dapat mendelegasikan identitas ke server hilir. Untuk informasi selengkapnya, lihat Mengonfigurasi Analysis Services untuk delegasi yang dibatasi Kerberos.
Akses jarak jauh ke instans SSAS lainnya Menambahkan akun layanan ke peran database Analysis Services yang ditentukan di server jarak jauh Partisi jarak jauh dan mereferensikan objek tertaut pada instans SQL Server Analysis Services jarak jauh lainnya adalah kemampuan sistem yang memerlukan izin pada komputer jarak jauh atau perangkat. Saat seseorang membuat dan mengisi partisi jarak jauh, atau menyiapkan objek tertaut, operasi tersebut berjalan dalam konteks keamanan pengguna saat ini. Jika Anda kemudian mengotomatiskan operasi ini, SQL Server Analysis Services akan mengakses instans jarak jauh dalam konteks keamanan akun layanannya. Untuk mengakses objek tertaut pada instans jarak jauh SQL Server Analysis Services, akun masuk harus memiliki izin untuk membaca objek yang sesuai pada instans jarak jauh, seperti akses Baca ke dimensi tertentu. Demikian pula, menggunakan partisi jarak jauh mengharuskan akun layanan memiliki hak administratif pada instans jarak jauh. Izin tersebut diberikan pada instans Analysis Services jarak jauh, menggunakan peran yang mengaitkan operasi yang diizinkan dengan objek tertentu. Lihat Memberikan izin database (Analysis Services) untuk instruksi tentang cara memberikan izin Kontrol Penuh yang memungkinkan pemrosesan dan operasi kueri. Lihat Membuat dan Mengelola Partisi Jarak Jauh (Analysis Services) untuk informasi selengkapnya tentang partisi jarak jauh.
Tulis balik Menambahkan akun layanan ke peran database Analysis Services yang ditentukan di server jarak jauh Ketika diaktifkan dalam aplikasi klien, writeback adalah fitur model multidmensional yang memungkinkan pembuatan nilai data baru selama analisis data. Jika tulis balik diaktifkan dalam dimensi atau kubus apa pun, akun layanan SQL Server Analysis Services harus memiliki izin tulis ke tabel tulis balik di database relasional SQL Server sumber. Jika tabel ini belum ada dan perlu dibuat, akun layanan SQL Server Analysis Services juga harus memiliki izin membuat tabel dalam database SQL Server yang ditunjuk.
Menulis ke tabel log kueri dalam database relasional SQL Server Membuat login database untuk akun layanan dan menetapkan izin tulis pada tabel log kueri Anda dapat mengaktifkan pengelogan kueri untuk mengumpulkan data penggunaan dalam tabel database untuk analisis berikutnya. Akun layanan SQL Server Analysis Services harus memiliki izin tulis ke tabel log kueri dalam database SQL Server yang ditunjuk. Jika tabel ini belum ada dan perlu dibuat, akun masuk SQL Server Analysis Services juga harus memiliki izin membuat tabel dalam database SQL Server yang ditunjuk. Untuk informasi selengkapnya, lihat Meningkatkan Performa SQL Server Analysis Services dengan Panduan Pengoptimalan Berbasis Penggunaan (Blog) dan Pengelogan Kueri di Analysis Services (Blog).

Konfigurasikan Akun dan Izin Layanan Windows
Akun Layanan SQL Server dan SID Per-Service (Blog)
SQL Server menggunakan SID layanan untuk menyediakan isolasi layanan (Artikel KB)
Token Akses (MSDN)
Pengidentifikasi Keamanan (MSDN)
Token Akses (Wikipedia)
Access Control Lists (Wikipedia)