Red de conocimiento del abogados - Preguntas y respuestas jurídicas - c#mvc Cómo verificar el estado de inicio de sesión

c#mvc Cómo verificar el estado de inicio de sesión

En primer lugar, MVC desarrolla aplicaciones web. En las aplicaciones web, generalmente se utilizan cookies o sesiones para la autenticación.

Referencia: /xianggao/blog/395675 presenta los conceptos y funciones de las cookies y las sesiones.

En pocas palabras, las cookies son información registrada por el cliente y las sesiones son información registrada por el cliente. servidor, ?Y la autenticación requiere el uso de Cookie o Sesión.

Entonces, cuando MVC realiza la autenticación de identidad (iniciar sesión), el primer paso es verificar la identidad y luego emitir una cookie o sesión al usuario,

Por ejemplo: // Código del controlador:

[HttpPost]

public?ActionResult?Login()?

{ //...Verificación de inicio de sesión, si (nombre de usuario y contraseña) son correctos) { Session[" UserId"]?=?"100";?//Este es el ejemplo más simple, que consiste en registrar el ID del usuario }

}

Después grabando, el servidor. Ya sabes, esta persona es el usuario con ID = "100", y luego se verifica. En MVC, FIlter se usa generalmente para controlar los permisos del usuario, es decir, qué permisos requiere una determinada Acción, o especificar un usuario al que acceder; de lo contrario, se devuelve un error.

Generalmente, reescribirá el filtro y creará una nueva clase en su proyecto MVC: public?class?MyAuthorizeAttribute?:?System.Web.Mvc.AuthorizeAttribute

//Heredar mvc El AuthorizeAttribute integrado

{

protected?override?bool?AuthorizeCore(HttpContextBase?httpContext)

{

if(httpContext) . Sesión["UserId"]!=null)

{

if(httpContext.Session["UserId"]=="100"}

{

retorno?true;

}

else

{

retorno?false;

}

}

return?false;

}

}

Este filtro es muy simple, si Session["UserId"] == "100", pasará (devolverá verdadero) y otros no podrán pasar

El último paso es agregar el controlador que necesita. verificar la identidad. Este filtro es suficiente. [Autorizar]?

//Esto es para verificar la identidad. Si el usuario no ha iniciado sesión o el ID de usuario no es igual a 100, el sistema lo prohibirá. de ingresar a la interfaz

public?ActionResult?Index()

{ Return?View();

}

.