Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
oleh Jason Lee
Topik ini menjelaskan cara mengonfigurasi izin untuk memungkinkan server build Anda menyebarkan konten ke server web dan server database sebagai bagian dari proses build otomatis.
Topik ini merupakan bagian dari serangkaian tutorial yang didasarkan pada persyaratan penyebaran perusahaan dari perusahaan fiktif bernama Fabrikam, Inc. Seri tutorial ini menggunakan solusi sampel— solusi Contact Manager—untuk mewakili aplikasi web dengan tingkat kompleksitas yang realistis, termasuk aplikasi MVC 3 ASP.NET, layanan Windows Communication Foundation (WCF), dan proyek database.
Metode penyebaran di jantung tutorial ini didasarkan pada pendekatan file proyek terpisah yang dijelaskan dalam Memahami File Proyek, di mana proses build dikendalikan oleh dua file proyek—satu berisi instruksi build yang berlaku untuk setiap lingkungan tujuan, dan satu berisi pengaturan build dan penyebaran khusus lingkungan. Pada waktu build, file proyek khusus lingkungan digabungkan ke dalam file proyek agnostik lingkungan untuk membentuk serangkaian instruksi build lengkap.
Gambaran Umum Tugas
Saat Anda menginstal layanan build Team Foundation Server (TFS) 2010, Anda menentukan identitas yang Anda inginkan untuk dijalankan oleh layanan. Secara default, ini adalah akun Layanan Jaringan. Atau, Anda dapat mengonfigurasi layanan build untuk dijalankan menggunakan akun domain.
Setiap tugas penyebaran yang memerlukan autentikasi Windows, dan yang Anda rencanakan untuk diotomatisasi menggunakan Team Build, akan berjalan menggunakan identitas layanan build. Dengan demikian, Anda harus memberikan identitas layanan build izin yang diperlukan di server web dan server database Anda.
Catatan
Akun Layanan Jaringan menggunakan akun komputer untuk mengautentikasi ke komputer lain. Akun komputer mengambil formulir [nama domain][nama komputer]$—misalnya, FABRIKAM\TFSBUILD$. Dengan demikian, jika layanan build Anda berjalan menggunakan identitas Layanan Jaringan, Anda harus memberikan izin yang diperlukan ke identitas akun komputer untuk server build Anda.
Mengonfigurasi Izin Server Web
Seperti yang dijelaskan dalam Memilih Pendekatan yang Tepat untuk Penyebaran Web, ada dua pendekatan utama yang dapat Anda gunakan jika Anda ingin menyebarkan paket web ke server web jarak jauh:
- Sebarkan aplikasi dari lokasi jarak jauh dengan menargetkan Layanan Agen Penyebaran Web (juga dikenal sebagai agen jarak jauh) di server tujuan.
- Sebarkan aplikasi dari lokasi jarak jauh dengan menargetkan Penghandel Penyebaran WebInternet Information Services (IIS) di server tujuan.
Agen jarak jauh memiliki dua batasan utama dalam kasus ini:
- Agen jarak jauh hanya mendukung autentikasi NTLM. Dengan kata lain, penyebaran harus menggunakan identitas layanan build—Anda tidak dapat meniru akun lain.
- Untuk menggunakan agen jarak jauh, akun yang melakukan penyebaran harus menjadi administrator di server target.
Bersama-sama, kedua batasan ini membuat pendekatan agen jarak jauh tidak diinginkan untuk penyebaran Team Build otomatis. Untuk menggunakan pendekatan ini, Anda harus menjadikan akun layanan build sebagai administrator di server web target apa pun.
Sebaliknya, pendekatan Web Deploy Handler menawarkan berbagai keuntungan:
- Web Deploy Handler mendukung autentikasi dasar melalui HTTPS, yang memungkinkan Anda meneruskan kredensial akun alternatif ke IIS Web Deployment Tool (Web Deploy).
- Anda dapat mengonfigurasi server web target untuk memungkinkan pengguna non-administrator menyebarkan konten ke situs web IIS tertentu menggunakan Web Deploy Handler.
Akibatnya, jelas lebih disukai untuk menargetkan Web Deploy Handler saat Anda mengotomatiskan penyebaran paket web dari Team Build. Ini adalah proses yang direkomendasikan:
- Buat akun domain dengan hak istimewa rendah untuk digunakan untuk penyebaran.
- Konfigurasikan Web Deploy Handler dan berikan akun izin yang diperlukan untuk menyebarkan konten ke situs web IIS tertentu, seperti yang dijelaskan dalam Mengonfigurasi Server Web untuk Penerbitan Penyebaran Web (Web Deploy Handler).
- Panggil Web Deploy dan targetkan Web Deploy Handler, menggunakan autentikasi dasar dan menyediakan kredensial akun domain yang Anda buat, untuk melakukan penyebaran.
Dalam solusi sampel Contact Manager , Anda menentukan jenis autentikasi (dasar atau NTLM), kredensial Web Deploy, dan alamat titik akhir (agen jarak jauh atau Web Deploy Handler) dalam file proyek khusus lingkungan. Nilai-nilai ini digunakan untuk merumuskan dan menjalankan perintah Web Deploy saat file proyek dijalankan. Untuk informasi selengkapnya, lihat Menyebarkan Paket Web.
Untuk informasi selengkapnya tentang mengonfigurasi Web Deploy Handler, termasuk cara mengonfigurasi izin, lihat Mengonfigurasi Server Web untuk Penerbitan Web Deploy (Web Deploy Handler). Untuk informasi selengkapnya tentang mengonfigurasi agen jarak jauh, lihat Mengonfigurasi Server Web untuk Penerbitan Penyebaran Web (Agen Jarak Jauh).
Mengonfigurasi Izin Server Database
Untuk menyebarkan database ke SQL Server, Anda harus:
- Buat login untuk akun penyebaran pada instans SQL Server.
- Berikan izin login DBCreator pada instans SQL Server.
- Setelah penyebaran awal, tambahkan login ke peran db_owner pada database target. Ini diperlukan karena pada penyebaran berikutnya, Anda memodifikasi database yang sudah ada daripada membuat database baru.
Anda dapat mengautentikasi ke instans SQL Server menggunakan autentikasi NTLM atau autentikasi SQL Server:
- Jika Anda menggunakan autentikasi NTLM, Anda perlu memberikan izin yang dijelaskan di atas ke akun layanan build.
- Jika Anda menggunakan autentikasi SQL Server, Anda perlu memberikan izin yang dijelaskan di atas ke akun SQL Server. Anda juga perlu menyertakan SQL Server nama pengguna dan kata sandi dalam string koneksi yang Anda gunakan untuk menyebarkan database.
Untuk detail langkah demi langkah tentang cara mengonfigurasi izin untuk penyebaran database, lihat Mengonfigurasi Server Database untuk Penerbitan Penyebaran Web.
Kesimpulan
Pada titik ini, Anda harus memahami izin yang diperlukan, bersama dengan opsi autentikasi yang terbuka untuk Anda, saat Anda mengotomatiskan aplikasi web dan penyebaran database dari Team Build. Anda juga harus dapat menerapkan izin yang diperlukan pada server web IIS dan server database SQL Server.
Bacaan lebih lanjut
Untuk informasi selengkapnya tentang mengonfigurasi lingkungan server Windows untuk mendukung penyebaran jarak jauh, lihat Mengonfigurasi Lingkungan Server untuk Penyebaran Web.