Автоматический вход в другое приложение ASP.NET из основного веб-приложения - PullRequest
3 голосов
/ 02 февраля 2010

Я запускаю последнюю версию YetAnotherForum в папке под моим основным веб-приложением. Подпапка настроена как приложение в IIS, и навигация в папку и вход в систему работает прекрасно. YAF настраивается с поставщиком членства и использует проверку подлинности с помощью форм.

То, что я сейчас пытаюсь сделать, - это автоматический вход пользователя в форум с основного сайта. Основной веб-сайт использует пользовательскую аутентификацию через сеансы и файлы cookie. Он не использует встроенные компоненты проверки подлинности или членства ASP.NET.

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

Несмотря на то, что основное приложение не использует встроенные элементы аутентификации, я все же установил режим аутентификации на формы и убедился, что тег под ним совпадает с тегом в файле YAF web.config. Затем на странице обработки я вызываю FormsAuthentication.SetAuthCookie (имя пользователя, true), затем перенаправляю. Но YAF все равно возвращает меня на страницу входа. Не уверен, куда идти отсюда.

Основной сайт: example.com/

web.config:

<authentication mode="Forms">
  <forms name=".YAFNET_Authentication" protection="All" timeout="43200" cookieless="UseCookies" />
</authentication>

YAF это: example.com/yaf (отдельное веб-приложение в IIS)

web.config

<authentication mode="Forms">
  <forms name=".YAFNET_Authentication" protection="All" timeout="43200" cookieless="UseCookies" />
</authentication>

Страница обработки: (псевдо) example.com/autoLogin.aspx.cs

public void AutLogin(){
    string userName = doStuffToGetUsername();
    YAFStuff.CreateUserIfNeeeded(userName);

    FormsAuthentication.SetAuthCookie(userName, true);
    Response.Redirect("/yaf/");
}

1 Ответ

0 голосов
/ 02 февраля 2010

Я искал в Google 2 дня, пытаясь разобраться в этом, но я наконец наткнулся на решение. Мне нужен MachineKey, который соответствовал обоим файлам web.config для процесса шифрования.

http://forum.yetanotherforum.net/yaf_postst8780_Custom-membership-and-role-provider-with-YAF-Profile-provider.aspx

Сладкие!

...