Bloquear o acesso ao diretório no IIS, mas permitir que um arquivo específico seja executado

2

É possível bloquear o acesso a um diretório através do web.config no IIS (excluindo um pequeno conjunto de IPs), mas permitir um arquivo específico para todos.

A razão que eu pergunto, eu quero bloquear o diretório wp-admin no WordPress, mas o admin-ajax.php precisa estar acessível externamente.

Obrigado.

    
por chrisd 13.02.2014 / 16:34

2 respostas

4

Para referência futura, esta foi a solução:

<location path="wp-admin">
    <system.webServer>
        <security>
            <ipSecurity allowUnlisted="false">
    <clear/> 
                <add ipAddress="ipaddr" allowed="true" />
            </ipSecurity>
        </security>
    </system.webServer>
</location>

<location path="wp-admin/admin-ajax.php">
    <system.webServer>
        <security>
            <ipSecurity allowUnlisted="true">
            </ipSecurity>
        </security>
    </system.webServer>
</location>
    
por 17.02.2014 / 15:08
0

A solução anotada requer que o ipSecurity overrideModeDefault seja configurado como Allow no applicationhost.config, caso contrário, você receberá um 500.19 - Internal Server Error with Error Code 0x80070021

<section name="ipSecurity" overrideModeDefault="Allow" />
    
por 12.05.2018 / 16:39