2011-04-19 7 views
8

Pensando en usar Access Control Service (ACS) y Windows Identity Foundation (WIF) para asegurar mi aplicación WCF Data Services Web API.¿Se pueden usar las afirmaciones de identificador de nombre e identificador de proveedor (WIF) para identificar de forma única a cualquier usuario?

¿Cómo puedo utilizar las notificaciones para identificar de forma única a un usuario?

Mi idea es utilizar la combinación de la reclamación estándar NameIdentifier y WIF reclamar IdentityProvider combinado para crear una identificación única para cualquier usuario.

¿Este combo es realmente estable y único? ¿Podría un IP cambiar repentinamente su cadena IdentityProvider?

La idea aquí es almacenar la cadena concatenada de las dos mitades como una ID única para cualquier usuario.

¿El reclamo de NameIdentifier tiene alguna implicancia de seguridad?

Saludos,

M.

Respuesta

4

Esto parece razonable. Tenga en cuenta que nameidentifier es IdP específico, lo que significa que es proporcionado por el proveedor de identidad con el que se autenticó (por ejemplo, LiveID, Google, etc.). ACS simplemente está copiando este valor en un reclamo. Verifique con cada uno de esos proveedores para ver qué garantías hacen. Mi suposición es que no deberían cambiar para un "usuario recurrente" -> alguien que tenga el mismo nombre de usuario/contraseña.

Las personas a menudo también usan direcciones de correo electrónico. Cuando esté disponible, es posible que desee correlacionarlo también como una medida adicional.

+0

Gracias por la respuesta. Estoy de acuerdo, es mi línea de razonamiento también. Podría agregar un reclamo de IP-ID a la salida sobre la que tendría control total para el futuro, pero para el identificador de nombre no existe un método tan útil y, si cambiara, aún no podría relacionarlo con mi algoritmo. Por otro lado, parece muy ilógico que un IP cambie sus valores de identificador de nombre o de proveedor de identidad. En mi libro esto es globalmente único y estable. Sería agradable ver en los PI un "código de conducta asegurada" o algo en lo que se abordaría este tipo de pregunta. – noopman

2

Justin Smith lo mencionó en su MIX11 talk (vea la diapositiva 22, a los 28 minutos de la charla) - entendí que ACS le da el identificador de nombre y el nombre IdP. Tomas la tupla y debería ser buena para una identificación única.

+0

Sí, estoy de acuerdo, parece que el ACS agrega la Reclamación de IP. Sin embargo, cuando los ves, están muy en diferentes bases. Uno es un URI parecido y otro es una cadena corta. Me hace preguntar si no son provistos por la IP de todos modos? – noopman

Cuestiones relacionadas