Pregunta

Estoy usando OpenID igual que aquí en StackOverflow para autenticar a mis usuarios. Sin embargo, lo que realmente necesito poder hacer es tener ese trabajo de OpenID en todos los subdominios de mi sitio.

El sitio se comporta de la misma manera que Kijiji en que cada región tiene su propio subdominio

  • calgary.example.com
  • toronto.example.com
  • vancouver.example.com
  • etc.

Cuando un usuario inicia sesión en "Calgary" y luego inicia sesión en "Toronto", se verá obligado a "dar permiso" al proveedor, lo que resulta en un nuevo OpenID y resultando también en un nuevo inicio de sesión.

Mi aplicación "puede" tener múltiples OpenID en una sola cuenta, pero eso se volvería engorroso de administrar.

¿Hay alguna manera de que el proveedor se vincule al dominio de nivel superior y posteriormente trabaje en todos los subdominios?

Estoy usando DotnetoPenauth.

El que pensó que tengo es obligar siempre al usuario a iniciar sesión http://example.com y luego use la autenticación de formularios domain = ".example.com" Para permitir la navegación a todos los subdominios.

¿Fue útil?

Solución

Sí. Selecciona el Realm propiedad en el control ASP.NET o su IAuthenticationRequest (Si lo está haciendo mediante programación) a "https: //*.example.com". Tenga en cuenta que el esquema puede ser http o https, pero deber Haga coincidir cualquier esquema en su propiedad de regreso, que va a ser (por defecto) el esquema utilizado en la solicitud actual.

Sin embargo, tenga en cuenta que si tiene usuarios existentes de Google, este cambio único de su reino hará que Google genere identificadores completamente nuevos para sus usuarios, por lo que todos perderán acceso a sus cuentas. Por lo tanto, es muy importante decidir y mantener un solo reino para siempre, o tendrá que saltar a través de los principales aros para poder vincular a sus usuarios a sus cuentas más tarde cuando lo cambie.

Pero no se preocupe por el comodín en sí. Cuando establece https: //*.example.com como su reino, todos sus sitios individuales que coincidan con ese patrón obtendrán el mismo Identificador de Google.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top