Basic Authentication <BasicAuthentication>

Panoramica

L'elemento <basicAuthentication> contiene le impostazioni di configurazione per il modulo di autenticazione di base di Internet Information Services (IIS) 7. È possibile configurare questo elemento per abilitare o disabilitare l'autenticazione di base, identificare l'area di autenticazione e il dominio di accesso predefinito e determinare il metodo di accesso usato dal modulo.

Lo schema di autenticazione di base è un metodo standard di settore ampiamente usato per la raccolta di informazioni sul nome utente e sulla password. L'autenticazione di base trasmette nomi utente e password nella rete in un modulo non crittografato. È possibile usare la crittografia SSL in combinazione con l'autenticazione di base per proteggere le informazioni sull'account utente trasmesse attraverso Internet o una rete aziendale.

Compatibilità

Versione Note
IIS 10.0 L'elemento <basicAuthentication> non è stato modificato in IIS 10.0.
IIS 8,5 L'elemento <basicAuthentication> non è stato modificato in IIS 8.5.
IIS 8,0 L'elemento <basicAuthentication> non è stato modificato in IIS 8.0.
IIS 7,5 L'elemento <basicAuthentication> non è stato modificato in IIS 7.5.
IIS 7.0 L'elemento <basicAuthentication> è stato introdotto in IIS 7.0.
IIS 6.0 L'elemento <basicAuthentication> sostituisce parti delle proprietà metabase iis 6.0 AuthType e AuthFlags.

Installazione

L'installazione predefinita di IIS 7 e versioni successive non include il servizio ruolo di autenticazione di base. Per usare l'autenticazione di base in Internet Information Services (IIS), è necessario installare il servizio ruolo, disabilitare l'autenticazione anonima per il sito Web o l'applicazione e quindi abilitare l'autenticazione di base per il sito o l'applicazione.

Per installare il servizio ruolo di autenticazione di base, seguire questa procedura.

Windows Server 2012 o Windows Server 2012 R2

  1. Sulla barra delle applicazioni fare clic su Server Manager.
  2. In Server Manager fare clic sul menu Gestisci e quindi su Aggiungi ruoli e funzionalità.
  3. Nella procedura guidata Aggiungi ruoli e funzionalità fare clic su Avanti. Selezionare il tipo di installazione e fare clic su Avanti. Selezionare il server di destinazione e fare clic su Avanti.
  4. Nella pagina Ruoli server espandere Server Web (IIS), espandere Server Web, espandere Sicurezza e quindi selezionare Autenticazione di base. Fare clic su Avanti.
    Screenshot dell'autenticazione di base selezionata in un'interfaccia di Windows Server 2012. .
  5. Nella pagina Selezione funzionalità fare clic su Avanti.
  6. Nella pagina Conferma selezioni per l'installazione fare clic su Installa.
  7. Nella pagina Risultati fare clic su Chiudi.

Windows 8 o Windows 8.1

  1. Nella schermata Start spostare il puntatore nell'angolo inferiore sinistro, fare clic con il pulsante destro del mouse sul pulsante Start e quindi fare clic su Pannello di controllo.
  2. In Pannello di controllo fare clic su Programmi e funzionalità e quindi su Attiva o disattiva le funzionalità di Windows.
  3. Espandere Internet Information Services, espandere Servizi Web a livello mondiale, espandere Sicurezza e quindi selezionare Autenticazione di base.
    Screenshot dell'autenticazione di base selezionata in un'interfaccia di Windows 8.
  4. Fare clic su OK.
  5. Fare clic su Close.

Windows Server 2008 o Windows Server 2008 R2

  1. Nella barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione e quindi fare clic su Server Manager.
  2. Nel riquadro della gerarchia di Server Manager espandere Ruoli e quindi fare clic su Server Web (IIS).
  3. Nel riquadro Server Web (IIS) scorrere fino alla sezione Servizi ruolo e quindi fare clic su Aggiungi servizi ruolo.
  4. Nella pagina Seleziona servizi ruolo della Procedura guidata Aggiungi servizi ruolo selezionare Autenticazione di base e quindi fare clic su Avanti. Screenshot dell'autenticazione di base selezionata in un'interfaccia di Windows Server 2008.
  5. Nella pagina Conferma selezioni per l'installazione fare clic su Installa.
  6. Nella pagina Risultati fare clic su Chiudi.

Windows Vista o Windows 7

  1. Nella barra delle applicazioni fare clic su Start e quindi fare clic su Pannello di controllo.
  2. In Pannello di controllo fare clic su Programmi e funzionalità e quindi su Attiva o disattiva funzionalità di Windows.
  3. Espandere Internet Information Services, espandere Servizi Web a livello mondiale, espandere Sicurezza, selezionare Autenticazione di base e quindi fare clic su OK.
    Screenshot dell'autenticazione di base selezionata in un'interfaccia windows Vista o Windows 7.

Procedure

Come abilitare l'autenticazione di base e disabilitare l'autenticazione anonima

  1. Aprire Gestione Internet Information Services (IIS):

    • Se si usa Windows Server 2012 o Windows Server 2012 R2:

      • Nella barra delle applicazioni fare clic su Server Manager, scegliere Strumenti e quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows 8 o Windows 8.1:

      • Tenere premuto il tasto Windows, premere la lettera X e quindi fare clic su Pannello di controllo.
      • Fare clic su Strumenti di amministrazione e quindi fare doppio clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Server 2008 o Windows Server 2008 R2:

      • Nella barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione e quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Vista o Windows 7:

      • Nella barra delle applicazioni fare clic su Start e quindi fare clic su Pannello di controllo.
      • Fare doppio clic su Strumenti di amministrazione e quindi fare doppio clic su Gestione Internet Information Services (IIS).
  2. Nel riquadro Connessioni espandere il nome del server, espandere Siti e quindi fare clic sul sito, l'applicazione o il servizio Web per cui si vuole abilitare l'autenticazione di base.

  3. Scorrere fino alla sezione Sicurezza nel riquadro Home e quindi fare doppio clic su Autenticazione.

  4. Nel riquadro Autenticazione selezionare Autenticazione di base e quindi fare clic su Abilita nel riquadro Azioni.

  5. Nel riquadro Autenticazione selezionare Autenticazione anonima e quindi fare clic su Disabilita nel riquadro Azioni .
    Screenshot dell'autenticazione anonima selezionata nel riquadro Autenticazione.

Configurazione

L'elemento <basicAuthentication> è configurabile a livello di sito, applicazione, directory virtuale e URL. Dopo aver installato il servizio ruolo, IIS 7 esegue il commit delle impostazioni di configurazione seguenti nel file di ApplicationHost.config.

<basicAuthentication enabled='false' />

Attributi

Attributo Descrizione
defaultLogonDomain Attributo String facoltativo.

Specifica il dominio di accesso predefinito per l'autenticazione di base.
enabled Attributo booleano facoltativo.

Specifica se l'autenticazione di base è abilitata.

Il valore predefinito è false.
logonMethod Attributo enumerazione facoltativo.

L'attributo logonMethod può essere uno dei valori possibili seguenti. Il valore predefinito è ClearText.
Valore Descrizione
Batch Questo tipo di accesso è destinato ai server batch, in cui i processi possono essere eseguiti per conto di un utente senza l'intervento diretto dell'utente.

Il valore numerico è 1.
ClearText Questo tipo di accesso mantiene il nome e la password nel pacchetto di autenticazione, che consente al server di effettuare connessioni ad altri server di rete durante la rappresentazione del client.

Il valore numerico è 3.
Interactive Questo tipo di accesso è destinato agli utenti che usano il computer in modo interattivo.

Il valore numerico è 0.
Network Questo tipo di accesso è destinato ai server ad alte prestazioni per autenticare le password di testo non crittografato. Le credenziali non vengono memorizzate nella cache per questo tipo di accesso.

Il valore numerico è 2.
realm Attributo String facoltativo.

Specifica l'area di autenticazione per l'autenticazione di base.

Elementi figlio

Nessuno.

Esempio di configurazione

L'esempio di configurazione seguente abilita l'autenticazione di base per un sito Web, un'applicazione Web o un servizio Web. Per impostazione predefinita, queste impostazioni devono essere incluse nel file ApplicationHost.config e è necessario includerle in un <location> elemento e usare l'attributo path per definire il sito Web o l'applicazione in cui si desidera applicare le impostazioni di autenticazione.

<security>
   <authentication>
      <anonymousAuthentication enabled="false" />
      <basicAuthentication enabled="true" />
   </authentication>
</security>

Codice di esempio

Gli esempi seguenti abilitano l'autenticazione di base per un sito.

AppCmd.exe

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

Nota

È necessario assicurarsi di impostare il parametro commit su apphost quando si usa AppCmd.exe per configurare queste impostazioni. Questa operazione esegue il commit delle impostazioni di configurazione nella sezione percorso appropriata nel file di 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 basicAuthenticationSection = config.GetSection("system.webServer/security/authentication/basicAuthentication", "Contoso");
            basicAuthenticationSection["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 basicAuthenticationSection As ConfigurationSection = config.GetSection("system.webServer/security/authentication/basicAuthentication", "Contoso")
        basicAuthenticationSection("enabled") = True

        serverManager.CommitChanges()
    End Sub
End Module

JavaScript

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

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

adminManager.CommitChanges();

VBScript

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

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

adminManager.CommitChanges()