Ich habe die Aufgabe der Änderung einer ASP.NET MVC-Anwendung in einer Weise, dass surfen zu myurl? Username = xxxxxx automatisch anmelden Benutzer xxxxxx gegeben, ohne nach Passwörtern zu fragen.ASP.NET MVC Identity-Login ohne Passwort
Ich habe bereits sehr deutlich gemacht, dass dies eine schreckliche Idee für viele sicherheitsrelevante Gründe und Szenarien ist, aber die Verantwortlichen sind bestimmt. Die Website wäre nicht öffentlich verfügbar.
Also: Gibt es eine Möglichkeit, sich ohne Passwort anzumelden, indem Sie beispielsweise den Microsoft.AspNet.Identity.UserManager erweitern und den AccountController ändern?
Einige 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 eines Microsoft.AspNet.Identity.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 OwinSecurity wäre.
Zeigen Sie uns Ihre 'login' Code :) –
... und natürlich kein Unternehmen jemals hat Probleme mit Insider-Bedrohungen * hust * * hust * Snowden. Was deine Frage angeht, ja, es ist einfach. Dinge immer weniger sicher zu machen ist es. Ich wäre versucht, jedes Passwort auf eine leere Zeichenfolge zu setzen und sie implizit zu verwenden (schnell 'n dreckig, aber es funktioniert und macht auch den Punkt, dass Ihre Sicherheit zur gleichen Zeit wertlos ist). Wenn Sie es "richtig" machen wollen, können Sie die Auth-Provider ableiten – Basic
@AndyRefuerzo: Ich habe relevanten Code hinzugefügt. – Bjorn