Bagikan melalui


Autentikasi <Anonim anonimAutentikasi>

Gambaran Umum

Elemen ini <anonymousAuthentication> mengontrol bagaimana Internet Information Services (IIS) 7 memproses permintaan dari pengguna anonim. Anda dapat mengubah <anonymousAuthentication> elemen untuk menonaktifkan autentikasi Anonim, atau Anda dapat mengonfigurasi Internet Information Services (IIS) untuk menggunakan akun pengguna kustom untuk memproses permintaan anonim.

Autentikasi anonim memberi pengguna akses ke area publik situs Web atau FTP Anda tanpa meminta mereka untuk nama pengguna atau kata sandi. Secara default, akun IUSR, yang diperkenalkan di IIS 7.0 dan menggantikan akun IUSR_computername IIS 6.0, digunakan untuk memungkinkan akses anonim. Aplikasi adalah pengelompokan file yang mengirimkan konten atau menyediakan layanan melalui protokol, seperti HTTP. Saat Anda membuat aplikasi di IIS, jalur aplikasi menjadi bagian dari URL situs.

Secara default, IIS 7 menggunakan autentikasi Anonim. Anda harus menonaktifkan autentikasi Anonim untuk situs Web, aplikasi Web, atau layanan Web yang ingin Anda aktifkan metode autentikasi lainnya seperti autentikasi Dasar atau Windows.

Kompatibilitas

Versi Catatan
IIS 10.0 Elemen <anonymousAuthentication> tidak dimodifikasi dalam IIS 10.0.
IIS 8.5 Elemen <anonymousAuthentication> tidak dimodifikasi dalam IIS 8.5.
IIS 8.0 Elemen <anonymousAuthentication> tidak dimodifikasi dalam IIS 8.0.
IIS 7.5 Elemen <anonymousAuthentication> tidak dimodifikasi dalam IIS 7.5.
IIS 7.0 Elemen ini <anonymousAuthentication> diperkenalkan di IIS 7.0.
IIS 6.0 Elemen ini <anonymousAuthentication> menggantikan properti metabase IIS 6.0 AuthFlags, AnonymousUserName, dan AnonymousUserPassword .

Siapkan

Elemen <anonymousAuthentication> ini disertakan dalam penginstalan default IIS 7.

Bagaimana Caranya

Cara menonaktifkan autentikasi anonim

  1. Buka Pengelola Layanan Informasi Internet (IIS):

    • Jika Anda menggunakan Windows Server 2012 atau Windows Server 2012 R2:

      • Pada bilah tugas, klik Manajer Server, klik Alat, lalu klik Pengelola Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows 8 atau Windows 8.1:

      • Tahan tombol Windows, tekan huruf X, lalu klik Panel Kontrol.
      • Klik Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows Server 2008 atau Windows Server 2008 R2:

      • Pada bilah tugas, klik Mulai, arahkan ke Alat Administratif, lalu klik Pengelola Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows Vista atau Windows 7:

      • Pada taskbar, klik Mulai, lalu klik Panel Kontrol.
      • Klik dua kali Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
  2. Di panel Koneksi , perluas nama server, perluas Situs, dan masuk ke tingkat di panel hierarki yang ingin Anda konfigurasi, lalu klik situs Web atau aplikasi Web.

  3. Gulir ke bagian Keamanan di panel Beranda , lalu klik dua kali Autentikasi.

  4. Di panel Autentikasi , pilih Autentikasi Anonim, lalu klik Nonaktifkan di panel Tindakan .
    Cuplikan layar panel Autentikasi dengan Autentikasi Anonim dipilih.

Cara mengubah kredensial autentikasi anonim dari akun IUSR

  1. Buka Pengelola Layanan Informasi Internet (IIS):

    • Jika Anda menggunakan Windows Server 2012 atau Windows Server 2012 R2:

      • Pada bilah tugas, klik Manajer Server, klik Alat, lalu klik Pengelola Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows 8 atau Windows 8.1:

      • Tahan tombol Windows, tekan huruf X, lalu klik Panel Kontrol.
      • Klik Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows Server 2008 atau Windows Server 2008 R2:

      • Pada bilah tugas, klik Mulai, arahkan ke Alat Administratif, lalu klik Pengelola Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows Vista atau Windows 7:

      • Pada taskbar, klik Mulai, lalu klik Panel Kontrol.
      • Klik dua kali Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
  2. Di panel Koneksi , perluas nama server, perluas Situs, dan navigasikan ke tingkat di panel hierarki yang ingin Anda konfigurasi, lalu klik situs Web atau aplikasi Web.

  3. Gulir ke bagian Keamanan di panel Beranda , lalu klik dua kali Autentikasi.

  4. Di panel Autentikasi , pilih Autentikasi Anonim, lalu klik Edit... di panel Tindakan .

  5. Dalam kotak dialog Edit Kredensial Autentikasi Anonim , lakukan salah satu hal berikut ini:

    • Pilih Identitas kumpulan aplikasi untuk menggunakan kumpulan identitas untuk kumpulan aplikasi, lalu klik OK.
      Cuplikan layar pengaturan Identitas pengguna anonim ke Identitas kumpulan aplikasi.

    • Klik Atur..., lalu dalam kotak dialog Atur Kredensial , masukkan nama pengguna untuk akun dalam kotak Nama pengguna , masukkan kata sandi untuk akun dalam kotak Kata Sandi dan Konfirmasi kata sandi , klik OK, lalu klik OK lagi.
      Cuplikan layar dialog Atur Kredensial kosong.

      Catatan

      Jika Anda menggunakan prosedur ini, hanya berikan hak istimewa minimal akun baru pada komputer server IIS.

Konfigurasi

Elemen <anonymousAuthentication> ini dapat dikonfigurasi di tingkat situs dan aplikasi dalam file Web.config.

Atribut

Atribut Deskripsi
enabled Atribut Boolean opsional.

Menentukan apakah autentikasi Anonim diaktifkan.

Nilai defaultnya adalah true.
logonMethod Atribut enum opsional.

Atribut logonMethod dapat menjadi salah satu nilai yang mungkin berikut. Default adalah ClearText.
Nilai Deskripsi
Batch Jenis masuk ini ditujukan untuk server batch, di mana proses dapat dijalankan atas nama pengguna tanpa intervensi langsung pengguna tersebut.

Nilai numerik adalah 1.
ClearText Jenis log masuk ini mempertahankan nama dan kata sandi dalam paket autentikasi, yang memungkinkan server untuk membuat koneksi ke server jaringan lain sambil meniru klien.

Nilai numerik adalah 3.
Interactive Jenis log masuk ini ditujukan untuk pengguna yang akan menggunakan komputer secara interaktif.

Nilai numerik adalah 0.
Network Jenis masuk ini ditujukan untuk server performa tinggi untuk mengautentikasi kata sandi teks biasa. Kredensial tidak di-cache untuk jenis log masuk ini.

Nilai numerik adalah 2.
password Atribut String Opsional.

Menentukan kata sandi untuk autentikasi Anonim.

Catatan: Untuk menghindari penyimpanan string kata sandi yang tidak terenkripsi dalam file konfigurasi, selalu gunakan AppCmd.exe atau IIS Manager untuk memasukkan kata sandi. Jika Anda menggunakan alat manajemen ini, string kata sandi akan dienkripsi secara otomatis sebelum ditulis ke file konfigurasi XML. Ini memberikan keamanan kata sandi yang lebih baik daripada menyimpan kata sandi yang tidak terenkripsi.
username Atribut String Opsional.

Menentukan nama pengguna untuk autentikasi Anonim. Jika Anda membiarkan nilai ini kosong (yaitu, username=""), autentikasi Anonim menggunakan identitas kumpulan aplikasi untuk mengautentikasi pengguna anonim.

Nilai defaultnya adalah IUSR.

Elemen Anak

Tidak ada.

Sampel Konfigurasi

Contoh konfigurasi berikut mengonfigurasi autentikasi anonim untuk situs Web IIS 7 atau aplikasi Web untuk menggunakan akun lokal di server Web. (IIS 7 secara otomatis menggunakan enkripsi AES untuk mengenkripsi kata sandi.)

<security> <authentication>
   <anonymousAuthentication
      userName="User1"
      password="[enc:AesProvider:57686f6120447564652c2049495320526f636b73:enc]" />
   </authentication>
</security>

Kode Sampel

Contoh berikut memungkinkan autentikasi anonim dan mengubah nama pengguna dan kata sandi default yang digunakan untuk autentikasi anonim ke akun bernama IUSR dan kata sandi P@ssw0rd.

AppCmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/anonymousAuthentication /enabled:"True" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/anonymousAuthentication /userName:"IUSR" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/anonymousAuthentication /password:"P@ssw0rd" /commit:apphost

Catatan

Anda harus memastikan untuk mengatur parameter penerapan ke apphost saat Anda menggunakan AppCmd.exe untuk mengonfigurasi pengaturan ini. Ini menerapkan pengaturan konfigurasi ke bagian lokasi yang sesuai dalam file ApplicationHost.config.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample { 
   private static void Main() { 
      using (ServerManager serverManager = new ServerManager()) {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection anonymousAuthenticationSection = config.GetSection("system.webServer/security/authentication/anonymousAuthentication", "Contoso");
         anonymousAuthenticationSection["enabled"] = true;
         anonymousAuthenticationSection["userName"] = @"IUSR";
         anonymousAuthenticationSection["password"] = @"P@ssw0rd";
         serverManager.CommitChanges();
      } 
   } 
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim anonymousAuthenticationSection As ConfigurationSection = config.GetSection("system.webServer/security/authentication/anonymousAuthentication", "Contoso")
      anonymousAuthenticationSection("enabled") = True
      anonymousAuthenticationSection("userName") = "IUSR"
      anonymousAuthenticationSection("password") = "P@ssw0rd"
      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var anonymousAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/anonymousAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso");
anonymousAuthenticationSection.Properties.Item("enabled").Value = true;
anonymousAuthenticationSection.Properties.Item("userName").Value = "IUSR";
anonymousAuthenticationSection.Properties.Item("password").Value = "P@ssw0rd";

adminManager.CommitChanges();

Vbscript

Set adminManager = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set anonymousAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/anonymousAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso")
anonymousAuthenticationSection.Properties.Item("enabled").Value = True
anonymousAuthenticationSection.Properties.Item("userName").Value = "IUSR"
anonymousAuthenticationSection.Properties.Item("password").Value = "P@ssw0rd"

adminManager.CommitChanges()