2009-06-03 16 views
5

Tengo dificultades para obtener OpenID trabajando en una aplicación Windows Azure. Actualmente estoy usando DotNetOpenAuth (solía ser DotNetOpenID) y primero tuve un problema con el paso de retransmisión ya que Azure usa el puerto 20000 internamente y eso se estaba pasando de un lado a otro. Encontré una solución alternativa para esto (escribiré una publicación de blog para ella).¿La mejor manera de usar la autenticación OpenID con Azure?

El siguiente problema es cuando se ejecuta la aplicación en una granja de servidores web (varias instancias), tendrá que escribir su propia "tienda personalizada" para DotNetOpenAuth y guardar los datos en una base de datos. Esto es un dolor escribir

Tiene que haber una manera más fácil. ¿Uno de los Servicios Azure tal vez? ¿Alguien ha ejecutado con éxito una aplicación web que se autentica con OpenID y se ejecuta en Azure? ¿Cuál es la mejor o la manera recomendada?

Respuesta

3

La forma más fácil de ponerlo en marcha es utilizar ninguna tienda en absoluto. Puede establecer Stateless = true en uno de los controles de inicio de sesión si los está utilizando, o pasar null al constructor OpenIdRelyingParty. Esto coloca su sitio web en el modo sin estado o "tonto" de OpenID. Es un poco más lento para los usuarios iniciar sesión (si lo nota) y evita tener que escribir esa clase de tienda de base de datos.

Como alternativa, puede vote for more pre-written data stores, including one for Azure en UserVoice. Por favor, Azure port problem should have been fixed en DotNetOpenAuth v3.1. Si no fue así, por favor, reactive ese boleto.

+0

Pasé nulo en el constructor OpenIdRelyingParty como sugirió y funcionó. El modo tonto es genial. Probablemente sea la misma velocidad porque de otra manera tendría que hacer una búsqueda en la base de datos. El problema de la URL también está solucionado, estaba usando v3.0. ¡Gracias! –

Cuestiones relacionadas