Bagikan melalui


Keamanan keamanan <>

Gambaran Umum

<security> Grup bagian berada di bagian <system.webServer> dan berisi semua elemen yang mengonfigurasi pengaturan keamanan di server Internet Information Services (IIS) 7. Ini termasuk pengaturan Secure Sockets Layer (SSL) untuk situs, aplikasi yang bergantung pada biner Common Gateway Interface (CGI) atau Internet Server API (ISAPI), pengaturan konfigurasi untuk semua modul autentikasi yang diinstal di server Anda, dan pengaturan aturan otorisasi. Ini juga termasuk keamanan IP dan pengaturan konfigurasi pemfilteran permintaan dan daftar pembatasan ISAPI dan CGI di server.

Pengaturan dalam grup bagian <security> dapat digabungkan untuk keamanan ekstra. Contohnya:

  • Elemen menentukan <authentication> bagian konfigurasi untuk semua jenis autentikasi pengguna yang dapat Anda instal dan aktifkan di server IIS 7 Anda, sedangkan <authorization> elemen mengonfigurasi akun pengguna yang dapat mengakses situs atau aplikasi Anda. Anda menggunakan <authorization> dalam kombinasi dengan <authentication> untuk mengamankan akses ke konten di server Anda. Elemen mengonfigurasi <access> pengaturan SSL untuk server Web, situs, atau aplikasi Anda.
  • Elemen menentukan <isapiCgiRestriction> daftar aplikasi CGI dan ISAPI yang dapat berjalan di IIS 7. Elemen ini memungkinkan Anda untuk memastikan bahwa pengguna berbahaya tidak dapat menyalin biner CGI dan ISAPI yang tidak sah ke server Web Anda lalu menjalankannya. Elemen <applicationDependencies> menentukan aplikasi yang memiliki dependensi ke satu atau beberapa pembatasan ekstensi CGI atau ISAPI. Anda dapat menggabungkan <isapiCgiRestriction> elemen dengan <applicationDependencies> elemen untuk memastikan pembatasan ekstensi CGI atau ISAPI Anda diatur dengan benar.

Catatan

Untuk keamanan yang ditingkatkan, Windows Vista atau Windows Server 2008 tidak menginstal IIS 7 secara default. Ketika Anda menginstal IIS 7, IIS secara otomatis dikonfigurasi untuk hanya menyajikan konten statis, termasuk HTML dan file gambar. Anda harus menginstal secara manual layanan peran dan fitur lain yang diperlukan oleh situs web dan aplikasi Anda. Strategi ini sangat mengurangi permukaan serangan IIS 7.

Kompatibilitas

Versi Catatan
IIS 10.0 Elemen <security> tidak dimodifikasi dalam IIS 10.0.
IIS 8.5 Elemen <security> tidak dimodifikasi dalam IIS 8.5.
IIS 8.0 Elemen <defaultIpSecurity> ditambahkan sebagai elemen turunan.
IIS 7.5 Elemen <security> tidak dimodifikasi dalam IIS 7.5.
IIS 7.0 Elemen ini <security> diperkenalkan di IIS 7.
IIS 6.0 Elemen ini <security> menggantikan properti metabase keamanan IIS 6.0 yang terkait dengan sertifikat, autentikasi, dan otorisasi.

Siapkan

Elemen <security> 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 yang memperlihatkan panel Autentikasi di Manajer I I S.

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 yang memperlihatkan kotak dialog Edit Kredensial Autentikasi Anonim. Identitas kumpulan aplikasi dipilih.

    • 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 yang memperlihatkan kotak dialog Atur Kredensial.

      Catatan

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


Cara mengaktifkan autentikasi dasar dan 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, lalu klik situs, aplikasi, atau layanan Web yang ingin Anda aktifkan autentikasi dasarnya.

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

  4. Di panel Autentikasi , pilih Autentikasi Dasar, lalu, di panel Tindakan , klik Aktifkan.

  5. Di panel Autentikasi , pilih Autentikasi Anonim, lalu klik Nonaktifkan di panel Tindakan .
    Cuplikan layar yang memperlihatkan panel Autentikasi. Autentikasi Anonim dipilih. Panel Tindakan mencantumkan Dinonaktifkan dan Diedit.


Cara memerlukan Lapisan Soket Aman

  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 , buka situs, aplikasi, atau direktori tempat Anda ingin mengonfigurasi persyaratan SSL. Anda tidak dapat mengonfigurasi SSL di tingkat server.

  3. Di panel Beranda , klik dua kali Pengaturan SSL.
    Cuplikan layar memperlihatkan panel Beranda Situs Web Default, dengan Pengaturan S S L dipilih.

  4. Di panel Pengaturan SSL , klik Perlu SSL.

  5. Di panel Tindakan , klik Terapkan.


Cara mengaktifkan autentikasi Windows untuk situs Web, aplikasi Web, atau layanan Web

  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, lalu situs, aplikasi, atau layanan Web yang ingin Anda aktifkan autentikasi Windowsnya.

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

  4. Di panel Autentikasi , pilih Autentikasi Windows, lalu klik Aktifkan di panel Tindakan .
    Cuplikan layar memperlihatkan panel Autentikasi, dengan Autentikasi Windows dipilih.

Konfigurasi

Saat Anda mengonfigurasi pengaturan keamanan, XML konfigurasi harus menyertakan grup bagian <security> . Anda dapat mengonfigurasi pengaturan keamanan di tingkat server dalam file ApplicationHost.config, atau di tingkat situs, tingkat aplikasi, atau tingkat direktori dalam file Web.config yang sesuai.

Atribut

Tidak ada.

Elemen Anak

Elemen Deskripsi
access Elemen opsional.

Menentukan pengaturan konfigurasi untuk Secure Sockets Layer (SSL) seperti apakah akan menggunakan sertifikat klien untuk autentikasi dan kekuatan kripto.
applicationDependencies Elemen opsional.

Menentukan aplikasi yang memiliki dependensi ke satu atau beberapa pembatasan ekstensi CGI atau ISAPI.
authentication Elemen opsional.

Menentukan pengaturan terkait autentikasi.
authorization Elemen opsional.

Menentukan pengaturan terkait otorisasi.
dynamicIpSecurity Elemen opsional.

Menentukan pembatasan IP dinamis yang memblokir alamat IP apa pun yang memenuhi serangkaian kriteria.
ipSecurity Elemen opsional.

Menentukan pembatasan akses berdasarkan alamat IP versi 4 atau nama domain DNS.
isapiCgiRestriction Elemen opsional.

Menentukan pengaturan yang membatasi program CGI dan ISAPI mana yang diizinkan untuk dijalankan di server.
requestFiltering Elemen opsional.

Menentukan pengaturan konfigurasi untuk pemfilteran permintaan.

Sampel Konfigurasi

Contoh berikut mengonfigurasi pengaturan autentikasi, SSL, dan meminta pemfilteran untuk situs Web bernama Contoso.

<location path="Contoso">
   <system.webServer>
      <security>
         <authentication>
            <windowsAuthentication enabled="true" />
            <basicAuthentication enabled="false" />
            <anonymousAuthentication enabled="false" />
         </authentication>
         <access sslFlags="Ssl, SslNegotiateCert, Ssl128" />
         <requestFiltering>
            <fileExtensions>
               <add fileExtension=".inc" allowed="false" />
            </fileExtensions>
            <denyUrlSequences>
               <add sequence="_vti_bin" />
               <add sequence="_vti_cnf" />
               <add sequence="_vti_pvt" />
            </denyUrlSequences>
         </requestFiltering>
      </security>
   </system.webServer>
</location>

Kode Sampel

Contoh berikut menonaktifkan autentikasi Anonim untuk situs bernama Contoso, lalu aktifkan autentikasi Dasar dan autentikasi Windows untuk situs tersebut.

AppCmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/anonymousAuthentication /enabled:"False" /commit:apphost

appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/basicAuthentication /enabled:"True" /commit:apphost

appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/windowsAuthentication /enabled:"True" /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"] = false;

         ConfigurationSection basicAuthenticationSection = config.GetSection("system.webServer/security/authentication/basicAuthentication", "Contoso");
         basicAuthenticationSection["enabled"] = true;

         ConfigurationSection windowsAuthenticationSection = config.GetSection("system.webServer/security/authentication/windowsAuthentication", "Contoso");
         windowsAuthenticationSection["enabled"] = true;

         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") = False

      Dim basicAuthenticationSection As ConfigurationSection = config.GetSection("system.webServer/security/authentication/basicAuthentication", "Contoso")
      basicAuthenticationSection("enabled") = True

      Dim windowsAuthenticationSection As ConfigurationSection = config.GetSection("system.webServer/security/authentication/windowsAuthentication", "Contoso")
      windowsAuthenticationSection("enabled") = True

      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 = false;

var basicAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/basicAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso");
basicAuthenticationSection.Properties.Item("enabled").Value = true;

var windowsAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/windowsAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso");
windowsAuthenticationSection.Properties.Item("enabled").Value = true;

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

Set basicAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/basicAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso")
basicAuthenticationSection.Properties.Item("enabled").Value = True

Set windowsAuthenticationSection = adminManager.GetAdminSection("system.webServer/security/authentication/windowsAuthentication", "MACHINE/WEBROOT/APPHOST/Contoso")
windowsAuthenticationSection.Properties.Item("enabled").Value = True

adminManager.CommitChanges()