2011-04-07 31 views
5

Disculpe si mis preguntas parecen ser repetitivas pero todavía no he podido encontrar una respuesta.Autenticación de usuario usando REST

Estoy construyendo una aplicación basada en REST usando Spring 3.0 y planeo desplegar eventualmente en Google App Engine. Ahora mis clientes podrían ser nativos de Android, iPhone o un cliente basado en web.

Mis usuarios necesitan iniciar sesión utilizando el nombre de usuario y la contraseña almacenados en el servidor dentro de una capa de persistencia. Ahora di que mi cliente de Android abre la aplicación y se muestra la pantalla de inicio de sesión es usuario. Ahora el usuario escribe en nombre de usuario y contraseña.

Sé que sería una publicación y diría que mi punto final del servicio es el registro. Por lo que sería algo así como

POSTAL /registro

Ahora me va a poner nombre de usuario y contraseña en el cuerpo del mensaje en formato XML o JSON. Mi pregunta es "¿es esta la manera correcta de hacerlo?" Estoy planeando convertirlo en SSL, pero ¿cómo debería enviar esta información confidencial como esta en mi cuerpo? Planeo devolver un token OAUth en la autenticación exitosa y usar eso para validar al usuario en todas las llamadas futuras de servicios.

Gracias de antemano.

Respuesta

2

Parece que tiene la idea correcta. SSL debe garantizar que el método que elija para enviarlo sea seguro.

Recuerde a la sal + hash de las contraseñas antes de almacenarlas: web cryptography - salted hash and other tasty dishes

+0

Muchas gracias por su respuesta. ¿Debo preocuparme por cualquier otra amenaza de seguridad? – SaKet

2

utilizar el encabezado de autorización para el envío de la información de nombre de usuario y contraseña. Para eso está ahí.

+0

Muchas gracias por su contribución. Encabezado de autorización: ¿cuáles son las ventajas de usar el encabezado de autorización? – SaKet

+1

@SaKet, que es donde HTTP pretendía que se colocara la información de Autorización. Ver https://tools.ietf.org/html/draft-ietf-httpbis-p7-auth-13 –

Cuestiones relacionadas