Конфигурирование дополнительной области входа в систему с членством ASP.NET? - PullRequest
0 голосов
/ 22 октября 2010

У меня есть основной логин для моего клиентского веб-сайта, настроенного для членства в ASP.NET.

У меня также есть вторичный логин для моего административного бэк-офиса, называемый / admin со страницей входа

/admin / login.aspx

при входе в систему следует указать:

/ admin / secure /

Я поместил файл web.config в / admin / secure/ следующим образом

<?xml version="1.0"?>
<configuration>
    <system.web>
        <authorization>
            <allow roles="admin" />
            <deny users="?" />
        </authorization>
    </system.web>
</configuration>

Моя проблема в том, что я хочу использовать членство .net для перенаправления обратно в /admin/login.aspx, если неопытные пользователи пытаются получить к нему доступ, а не с помощью перенаправления верхнего уровня (/ login.aspx), который используется для моего клиента перед входом в систему.

Возможно ли это?

До сих пор я пытался добавить следующее в мою корневую сеть.файл конфигурации:

<location path="admin">
    <system.web>
        <authentication mode="Forms">
            <forms name="appTTESubAuth" path="~/admin/" loginUrl="~/admin/login.aspx" protection="All" timeout="120"/>
        </authentication>
    </system.web>
</location>

Я получаю следующую ошибку:

Ошибка использовать раздел, зарегистрированный как allowDefinition = 'MachineToApplication' за пределами уровня приложения.Эта ошибка может быть вызвана тем, что виртуальный каталог не был настроен как приложение в IIS.

Итак, я попробовал это:

<sectionGroup name="system.web" type="System.Web.Configuration.SystemWebSectionGroup, System.Web, Version=%ASSEMBLY_VERSION%, Culture=neutral, PublicKeyToken=%MICROSOFT_PUBLICKEY%">
            <section name="authentication" type="System.Web.Configuration.AuthenticationSection, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="Everywhere" />
            <!-- Other system.web sections -->
        </sectionGroup>

, что дает мне

Имя раздела или группы 'system.web' уже определено.Обновления могут происходить только на уровне конфигурации, где он определен

Кому-нибудь удалось сделать это с помощью .net membersip?

Спасибо

1 Ответ

0 голосов
/ 22 октября 2010

Я думаю, что будет трудно начать работать.Чего я не понимаю, так это почему бы не использовать одну и ту же страницу входа в систему для обоих, но добавить своих администраторов в роль, недоступную никому из «обычных» пользователей.Этого должно быть достаточно на самом деле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...