Risposte:
Di seguito dovrebbe funzionare, a seconda della versione di IIS. Dovrai aggiungere un web.config se non ne hai uno (anche se dovresti su IIS7) nella directory principale del tuo sito. Quanto segue consentirà agli amministratori di dominio e negherà agli utenti di dominio (abbastanza esplicativo). Assicurati di allineare le sezioni di configurazione se hai già una sezione, ecc.
<configuration>
<location path="MyPage.aspx/php/html">
<system.web>
<authorization>
<allow users="DOMAIN\Domain Admins"/>
<deny users="DOMAIN\Domain Users"/>
</authorization>
</system.web>
</location>
</configuration>
Avrai bisogno dell'autenticazione di Windows abilitata in Autenticazione nelle preferenze del tuo sito affinché funzioni, ovviamente, ma suppongo che tu l'abbia già abilitato.
la risposta di joshatkins non funziona in IIS7. Per IIS7, è necessario utilizzare l'attributo ruolo. Inoltre, se si desidera limitare l'intero sito, non è necessario l'elemento location.
<authorization>
<allow roles="DOMAIN\Domain Users"/>
<deny users="*" />
</authorization>
Basta aggiungere un altro paio di punti alle altre risposte che mi hanno aiutato a capire come farlo funzionare dopo che l'autenticazione AD di base funzionava bene con IIS.
se vuoi solo modificare direttamente il file di configurazione, sarebbe simile a questo:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
...
<security>
<authorization>
<remove users="*" roles="" verbs="" />
<add accessType="Allow" roles="myDomain\myGroup01" />
<add accessType="Allow" roles="myDomain\myGroup02" />
</authorization>
</security>
</system.webServer>
</configuration>
Se l'utilizzo delle regole di autorizzazione web.config non funziona (ad esempio perché viene eseguito uno script CGI), è possibile utilizzare il sistema di autorizzazioni delle cartelle per disabilitare l'ereditarietà, rimuovere gli utenti IIS (in modo che nessuno abbia accesso in lettura) e aggiungere semplicemente il gruppo di sicurezza in con accesso in lettura. Devi anche abilitare una qualche forma di metodo di autenticazione (ad es. Basic o Windows integrato) in modo che il visitatore sia riconosciuto.
Concedere l'autorizzazione di lettura sulla cartella solo a quel gruppo di domini funziona.
So che è una domanda molto vecchia, ma questa è una cosa di cui ho bisogno nel mio ambiente di test.
Questo approccio funziona per me e ottengo un popup per accedere e posso accedere senza alcun problema.
Mi chiedevo come posso configurarlo per usare SSO? Se l'utente che ha effettuato l'accesso è un membro del gruppo di sicurezza, richiedere le credenziali.
Il mio IIS è su Windows Server 2016 1607 e il sito Web è HTML statico.