Varias aplicaciones que utilizan la misma base de datos de inicio de sesión registrando entre sí

He configurado dos aplicaciones ASP.NET en una máquina, sus archivos web.config contienen el mismo valor de nombre de aplicación en el elemento AspNetSqlMembershipProvider para que compartan usuarios y roles.

La secuencia del problema es:

  • el usuario inicia sesión en la aplicación A,
  • abre una nueva pestaña en un navegador
  • registra en la aplicación B,
  • su inicio de sesión en la aplicación A está cerrado

y viceversa.

¿Debo usar un enfoque diferente para compartir información de inicio de sesión entre dos aplicaciones?

El problema que tienes es porque se usa la misma cookie para autenticar los 2 inicios de sesión diferentes.

La solución de lo que entiendo es dar diferentes nombres de cookies en los diferentes inicios de sesión, por lo que la única cookie, no sobrescribe la otra.

Probablemente la solución esté en web.config.

En Config

Cambie el valor del nombre , a algo diferente en sus 2 aplicaciones, si tiene el mismo dominio y se ejecuta en diferentes directorios / aplicaciones, o cambie también el valor del dominio que también se usó para guardar la cookie.

   

Por ejemplo, en 2 diferentes web.config en sus aplicaciones, coloque
en la aplicación 1: name = “. app1”
en la aplicación 2: name = “. app2”

O en la aplicación 1: domain = “app1.yoururl.com”
en la aplicación 2: domain = “app2.yoururl.com”
si separa sus aplicaciones, base en url, o incluso pruebe algunos propositos similares.

La cookie es keep, utilizando el nombre de la cookie en el nombre de dominio, por lo que estos son los 2 valores que debe tratar de separar.

Los detalles sobre la configuración del formulario se pueden encontrar aquí: http://msdn.microsoft.com/en-us/library/aa480476.aspx

Inicio de sesión manual

Si tiene la oportunidad de iniciar sesión manualmente, la solución está en esta función

 FormsAuthentication.GetAuthCookie(cUserName, false, "cookiePath"); FormsAuthentication.SetAuthCookie(cUserName, false, "cookiePath"); 

Solo necesita utilizar una cookiePath diferente, pero debe cambiar muchos puntos en su progtwig y capturar el inicio de sesión, la salida y la autentificación del proceso.

Espero que esto te ayude

Deberías echarle un vistazo a este tutorial.

Desplácese hacia abajo a la sección titulada Particionado de la tienda del usuario en las aplicaciones. Aquí dice que puede usar la misma tienda de usuario para múltiples aplicaciones.