ho sviluppato un semplice IIdentity
e IPrincipal
per il mio progetto MVC e vorrei ignorare il User
e User.Identity
per restituire il valore con il giusto tiposovrascrivere la proprietà IIdentity di utente
Ecco la mia Identità personalizzato:
public class MyIdentity : IIdentity
{
public MyIdentity(string name, string authenticationType, bool isAuthenticated, Guid userId)
{
Name = name;
AuthenticationType = authenticationType;
IsAuthenticated = isAuthenticated;
UserId = userId;
}
#region IIdentity
public string Name { get; private set; }
public string AuthenticationType { get; private set; }
public bool IsAuthenticated { get; private set; }
#endregion
public Guid UserId { get; private set; }
}
Qui è la mia principale personalizzato:
public class MyPrincipal : IPrincipal
{
public MyPrincipal(IIdentity identity)
{
Identity = identity;
}
#region IPrincipal
public bool IsInRole(string role)
{
throw new NotImplementedException();
}
public IIdentity Identity { get; private set; }
#endregion
}
Ecco il mio personalizzato Controller, io con successo aggiornato la proprietà User
restituire il mio personalizzato Tipo principale:
public abstract class BaseController : Controller
{
protected new virtual MyPrincipal User
{
get { return HttpContext == null ? null : HttpContext.User as MyPrincipal; }
}
}
Come posso farlo allo stesso modo per User.Identity
restituire il mio tipo di un'identità personalizzata?
dove stai impostando l'entità personalizzata su HttpContext? –
Nel mio metodo global.asax.cs Application_AuthenticateRequest – Swell