ASP.NET MVC-Identity-login ohne Kennwort

Ich die Zuordnung ändern ASP.NET MVC-Anwendung in einer solchen Weise, dass das surfen zu myurl?username=xxxxxx würde automatisch Benutzer anmelden xxxxxx, ohne zu Fragen, für die Kennwörter.

Ich bereits sehr deutlich gemacht, dass dies ist eine schreckliche Idee für viele sicherheitsrelevante Gründe und Szenarien, aber die Verantwortlichen sind ermittelt. Die Seite würde nicht öffentlich zur Verfügung zu stellen.

Also: gibt es eine Möglichkeit, der Anmeldung ohne Passwort, indem Sie zum Beispiel die Erweiterung des Microsoft.AspNet.Identität.UserManager und ändern der AccountController?

Code:

  var user = await _userManager.FindAsync(model.UserName, model.Password);
                    if (user != null && IsAllowedToLoginIntoTheCurrentSite(user))
                    {
                        user = _genericRepository.LoadById<User>(user.Id);
                        if (user.Active)
                        {
                            await SignInAsync(user, model.RememberMe);

_userManager hält eine Instanz von Microsoft.AspNet.Identität.UserManager.

und SignInAsync():

 private async Task SignInAsync(User user, bool isPersistent)
    {
        AuthenticationManager.SignOut(DefaultAuthenticationTypes.ExternalCookie);
        var identity = await _userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie);
        if (user.UserGroupId.IsSet())
            user.UserGroup = await _userManager.Load<UserGroup>(user.UserGroupId);

        //adding claims here ... //

        AuthenticationManager.SignIn(new AuthenticationProperties { IsPersistent = isPersistent }, new CustomClaimsIdentity(identity));
    }

AuthenticationManager wäre OwinSecurity.

InformationsquelleAutor der Frage Bjorn | 2015-01-23

Schreibe einen Kommentar