Я создал новый объект скина входа в систему, который содержит одну гиперссылку. этот объект обложки помещается на другой объект пользовательского скина. Когда нажимается эта гиперссылка для входа, я открываю всплывающее окно div, этот div содержит встроенный элемент управления входом DNN, размещенный в Desktopmodules / Admin / Autanticationservice /. Теперь, когда всплывает модуль входа в систему и я нажимаю кнопку входа в систему, это попадает в событие login_clicked модуля входа DNN. Здесь я вижу через отладку, что пользователь проходит аутентификацию, но внутри этого метода в последней строке "OnUserAuthenticated (args)" не вызывается ... ??? Почему ??? Любые идеи..???
как работать с Custom UserAuthantication в DNN
comment
пожалуйста, помогите, я застрял в этом ...
- person Manish Pandey   schedule 20.03.2012
Ответы (2)
У меня тоже был этот, я не понял, как решить настоящую проблему, но вы можете обойти это, заменив:
UserController.ValidateUser(PortalId, txtUsername.Value, txtPassword.Value, "DNN", string.Empty, PortalSettings.PortalName, IPAddress, ref loginStatus);
с участием
UserController.UserLogin(PortalSettings.PortalId, txtUsername.Value, txtPassword.Value, string.Empty, PortalSettings.PortalName, IPAddress, ref loginStatus, false);
Тогда он, по крайней мере, войдет в систему, но вам придется иметь дело с перенаправлением самостоятельно.
Это взлом, и мне он не нравится, но, надеюсь, это поможет кому-то другому.
person
Casey Williams
schedule
14.03.2013
У меня была такая же проблема, я долго и внимательно смотрел, и в конце концов мне пришлось загрузить полный исходный код и выполнить код для входа в полное приложение dnn:
Как только я добавил следующее, я смог успешно аутентифицировать пользователя:
// from above
UserController.UserLogin(PortalSettings.PortalId, txtUsername.Value, txtPassword.Value, string.Empty, PortalSettings.PortalName, IPAddress, ref loginStatus, false);
// login and auth with DNN
var existingUserEventArgs = new UserAuthenticatedEventArgs(loginUser, loginUser.Username, loginStatus, "DNN");
existingUserEventArgs.Authenticated = true;
EventManager.Instance.OnUserAuthenticated(new UserEventArgs { User = loginUser });
// success - redirect - or what ever
person
ransems
schedule
19.12.2020