2012-07-10 5 views
6

Estoy usando la autenticación de Facebook para mi aplicación de Android.¿Cómo puedo iniciar sesión de forma segura en mi aplicación de Android usando facebook-id?

autentico al usuario en mi aplicación usando facebook ID [a través de HTTP Post a la API web con facebook-id]. Entonces, si alguien conoce la id-facebook de cualquier usuario de mi aplicación, puede publicar fácilmente en la URL que le dio acceso a la aplicación.

¿Hay alguna manera recomendada de hacerlo?

Respuesta

2

Una vez que haya realizado el inicio de sesión POST, Facebook le otorgará un authtoken que será único pero caducará en algún momento. Basándose en este token generará una "session_key" temporal (podría ser md5 (facebook_token + user_id), almacenar esta session_key en su db y enviarla de regreso a su aplicación.

Con cada solicitud de la aplicación a su servidor, tiene para enviar esta session_key y el nombre de usuario. En el lado del servidor, debe verificar si session_key está en su base de datos y si fue asignado a "user_id".

Si todo está bien, puede continuar la acción de lo contrario devolver un mensaje de error

Cuando el usuario cierre la sesión, elimine esta session_key (se regenerará cuando se inicie sesión en Facebook).

Espero que esto ayude.

+0

Uso el token de acceso a la aplicación, que no caducará y es el mismo para todos los usuarios. –

+0

Esto requeriría que los tokens oauth de Facebook se puedan compartir entre su aplicación y su API. Incluso si actualmente funciona, nada puede decirle que todavía lo hará en la próxima versión de su sistema. – ZeWaren

1

Cuando un usuario inicia sesión en Facebook, le proporciona un token de autenticación y una identificación de Facebook. Valide en su servidor de aplicaciones si el token pertenece al usuario [a través de https://graph.facebook.com/me?accesstoken=]. Concederle acceso, si es válido.

Cuestiones relacionadas