2010-12-28 4 views
1

У меня есть asp.net web-приложение, которое использует провайдер членства ASP.NET. Кроме того, у меня есть еще один форум в субдомене. Я бы хотел, чтобы пользователь регистрировался на моем сайте, он автоматически регистрируется на форуме. Другим словом, когда пользователь регистрируется на моем сайте, он может использовать эти учетные данные для входа в систему на форуме.Еще один вопрос с паролем форума

Итак, когда пользователь регистрируется на моем сайте, я добавляю запись в таблицу yaf_User. Но проблема в том, что в yaf_User есть поле пароля, YAF не сохраняет пароль в этом поле. Я не знаю, где YAF сохраняет пароли?

ответ

2

Лучшим и простым решением будет использование одного и того же поставщика членства как для веб-приложения, так и для форума (который, как я полагаю, также использует поставщик членства). Поскольку вы хотите, чтобы одно и то же имя пользователя и для приложения, и для форума, почему бы просто не использовать одну и ту же пользовательскую базу данных?

Что касается пароля, по умолчанию он зашифрован и нечеткий текст. Проверьте настройку поставщика enablePasswordRetrieval в web.config.

В web.config для обоих приложений установить атрибут домена в домене верхнего уровня:

<authentication mode="Forms"> 
    <forms loginUrl="~/Account/Login.aspx" timeout="2880" domain="toplevel.com" /> 
</authentication> 

Это гарантирует, что если войти на любом приложении или на форум, вы автоматически вошли в другой.

2

YAF.NET использует членство ASP.NET (а также роли и профиль) в качестве мастера. Таблица yaf_user - это только ведомое для форума, которое обновляется автоматически. Поле пароля в этой таблице является устаревшим и может быть проигнорировано. YAF больше не заботится о паролях. Если пользователь вошел в систему, форум счастлив. Таким образом, до тех пор, пока ваш билет на членство и бланки проверки подлинности совпадают как с основным, так и с поддоменом YAF, у вас не должно быть никаких проблем.

0

Naphong, я сделал с членством автоматического входа asp.net В первый веб-приложения 1. заливка в web.config

<machineKey validationKey="282487E295028E59B8F411ACB689CCD6F39DDD21E6055A3EE480424315994760ADF21B580D8587DB675FA02F79167413044E25309CCCDB647174D5B3D0DD9141" decryptionKey="8B6697227CBCA902B1A0925D40FAA00B353F2DF4359D2099" validation="SHA1"/> 
  1. Войти Страница У меня есть определенном в [WebApplication1] /login.aspx] Войти Аутентификация по заполнению:

    FormsAuthentication.SetAuthCookie ([имя пользователя], false); System.Web.HttpCookie MyCookie = System.Web.Security.FormsAuthentication.GetAuthCookie (User.Identity.Name.ToString(), false); MyCookie.Domain = "127.0.0.1"; // доменное имя второго уровня // Я пытаюсь выполнить мой компьютер после публикации моего сайта Response.AppendCookie (MyCookie);

В Second WebApplication 1. web.config

Это все мое решение с Single Sign On с членством YAF или другого веб-сайта.

Вы можете спросить меня, если вы не можете решить эту проблему, [email protected]

Смежные вопросы