Подтвердить что ты не робот

Запретить доступ к папке "admin" в web.config

Я новичок в ASP.NET, поэтому простите меня, если это просто.

Я пытаюсь запретить доступ к моей папке "Admin" через web.config. Я посмотрел на другой ответ на аналогичный вопрос, и они рекомендуют использовать папку <location>, однако, когда я вставляю "Admin/" в путь, я получаю следующую ошибку:

атрибут пути должен быть относительный виртуальный путь. Это не может начните с любого из "". '/' или '\'. C:\Личные\Проекты\OliverSalon\web.config

Я попытался разместить "Admin", "/Admin" и "Admin/"

<configuration>

<connectionStrings>
    <add name="OliverSalonConnectionString1" connectionString="Data Source=localhost;Initial Catalog=OliverSalon;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
    <compilation debug="false" targetFramework="4.0" />
    <authentication mode="Forms">
        <forms name="Oliver" loginUrl="Login.aspx" path="/" timeout="20">
            <credentials passwordFormat="Clear">
                <user name="OliverSalon" password="cuts"/>
            </credentials>
        </forms>
    </authentication>
    <authorization >
        <deny users="?"/>
    </authorization>
</system.web>
<location path="/Admin">
    <system.webServer>
        <directoryBrowse enabled="false"/>
    </system.webServer>
</location>

4b9b3361

Ответ 1

Это путь назад из моих дней в веб-форме.

Поместите файл web.config в папку администратора.

Содержимое должно быть:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <authorization>
          <allow roles="admin" />
          <deny users ="*" />
        </authorization>
    </system.web>
</configuration>

** РЕДАКТИРОВАТЬ, чтобы ответить на ваш вопрос Если вы установите URL-адрес для входа, фреймворк автоматически отправит вас на страницу входа в систему, если неавторизованный пользователь попытается получить доступ к вашей папке администратора.

        <authentication mode="Forms">
            <forms loginUrl="Login.aspx" timeout="20" slidingExpiration="true" cookieless="AutoDetect" protection="All" requireSSL="false" enableCrossAppRedirects="false" defaultUrl="Default.aspx" path="/"/>
</authentication>