2008-11-12 34 views
5

Primero, sé que esta pregunta podría ser borderline-duplicate to this one, y sí, es un poco irónico que estoy haciendo una pregunta por algo que incluso me respondí a mí mismo.Perfiles de ASP.net y membresía - ¿Proveedores personalizados o debería completar por completo el mío?

Ahora, estoy hablando de perfiles ASP.net. Estoy construyendo una aplicación usando MVC si eso es importante, y creo que el Proveedor de Perfil incorporado es inútil.

Por el momento, me pregunto: ¿Debería seguir mis propios consejos y escribir un proveedor de perfiles personalizado, o debería rodar completamente mi propio perfil?

Algunos supuestos:

  • Quiero que mis datos en una estructura de base de datos que decido
  • Es una aplicación nueva marca, hay una estructura base de datos heredada o base de usuarios que tiene que integrarse
  • pequeñas a medianas Cantidad total de usuarios (máx. ~ 5000 usuarios)
  • ASP.net MVC, muy probablemente Silverlight 2 y tal vez incluso algunos de Windows Azure, pero todavía estoy experimentando con él, pero definitivamente .net 3.5 SP1.
  • Y, posiblemente como el punto de decisión principal: no necesariamente siempre el uso de formularios de autenticación, la aplicación puede llegar a utilizar Active Directory o OpenID para la autenticación

todavía tengo que investigar si puedo usar ASP.net afiliación con la no -proveedores de autenticación estándar (OpenID), porque creo que los perfiles de ASP.net solo tienen sentido cuando uso membresía de ASP.net, por lo que eventualmente podría terminar escribiendo un proveedor de membresía personalizado para OpenID (que esencialmente solo sirve como un puente) y un proveedor de perfiles personalizado.

Así que sí, creo que podría ser una buena manera porque sigo usando lo que el framework ya me da, pero no tengo casi experiencia con Membresía y Perfiles, así que quizás alguien aquí tenga alguna idea de si Debería completar mi propia Autenticación y/o Perfiles, o si estoy mejor escribiendo Membresía Personalizada y Proveedores de Perfil, que aparentemente es what SO did?

Respuesta

3

No tengo experiencia escribiendo mi propio proveedor de perfiles, pero he escrito mi propio proveedor de membresía. Es relativamente fácil (hay muchos métodos que usted no necesita para implementar). De hecho, los únicos métodos que parecen realmente necesarios son los métodos GetUser() y ValidateUser().

La única parte que es un poco complicada (y que vale la pena perfilar) es que parece que GetUser() se llama con frecuencia y debe pensar en almacenar en caché los resultados para que no siempre llegue a la base de datos.

0

Para poder responder a la pregunta de qué hacer, debe sentarse y confirmar exactamente cuáles son las características y requisitos que su autenticación y modelo de perfil requieren y luego ver qué ofrece el material incorporado en .net. Una vez que tenga una lista de requisitos, podrá evaluar con precisión si le conviene o no utilizar los proveedores integrados.

Lo que podría ser una mejor línea de preguntas para usted es decir "Necesito hacer x, y, z con mis proveedores de membresía y perfil, ¿cuál es mi mejor opción?"

Cuestiones relacionadas