para crear como certificado autofirmado asp.net iis session

crear - asp.net-sesión-varias pestañas del navegador-¿diferentes sesiones?



como crear un certificado ssl para iis (3)

Me gustaría mantener un estado de sesión por pestaña del navegador.

¿Es esto fácil (o incluso posible) de hacer en ASP.NET?

Ejemplo: un usuario pulsa Ctrl-T en Firefox 5 veces y visita el sitio en cada pestaña. Me gustaría que cada pestaña tenga su propio estado de sesión en el servidor


Para facilitar los estados de sesión de múltiples pestañas para un usuario sin saturar la URL, haga lo siguiente.

En su función de carga de formulario, incluya:

If Not IsPostback Then ''Generate a new PageiD'' ViewState("_PageID") = (New Random()).Next().ToString() End If

Cuando guarde algo en su estado de sesión, incluya el ID de página:

Session(ViewState("_PageID").ToString() & "CheckBoxes") = D

Notas :

  • Al igual que con las ID de sesión en general, no puede confiar en que los usuarios maliciosos no cambiarán el Id. De sesión / ID de página. Esta es solo una solución válida para un entorno donde se puede confiar en todos los usuarios. Afortunadamente, ViewState ofrece más protección que el uso de un campo de entrada oculto.
  • No tendrá acceso a PageID hasta que ViewState se restaure en PostBack. Por lo tanto, no tendrá acceso a PageID en el controlador page_init ().

Usando la respuesta de Brian Webster , encontré un problema con XMLHttpRequests. Resultó que XMLHttpRequests no estableció el indicador IsPostback en verdadero y, por lo tanto, la solicitud parecía una nueva solicitud y uno terminaría teniendo un nuevo estado de sesión para esa solicitud. Para resolver ese problema, también verifiqué el valor de ViewState("_PageID")

para que mi código se vea así en C #:

protected dynamic sessionVar; //a copy of the session variable protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack && ViewState["_PageID"] == null) { ViewState["_PageID"] = (new Random()).Next().ToString(); Session[ViewState["_PageID"] + "sessionVar"] = initSessionVar(); //this function should initialize the session variable } sessionVar = Session[ViewState["_PageID"] + "sessionVar"]; //... }


<configuration> <system.web> <sessionState cookieless="true" regenerateExpiredSessionId="true" /> </system.web> </configuration>

http://msdn.microsoft.com/en-us/library/ms178581.aspx

en este caso, cada pestaña recibirá una identificación única y se verá como si fuera otro visitante.