Spring boot REST api seguridad para la aplicación de Android con Google + Facebook login

Estoy construyendo una aplicación con 2 capas: –

1. Native Android App – contiene la capacidad de iniciar sesión a través de Facebook + Google para hacer la señal en menos doloroso.

2. Servidor Java con Spring Boot : puntos finales MVC típicos, como REST api + UI admin.

Las partes de GoogleApiClient Facebook ( FacebookSdk ) y Google ( GoogleApiClient ) están funcionando y probadas utilizando las siguientes dependencias de Android:

 dependencies { compile 'com.facebook.android:facebook-android-sdk:4.6.0' compile 'com.google.android.gms:play-services-auth:9.0.0' .... } 

API sabio que tenemos: –

/api/signin – se llama cuando un usuario /api/signin correctamente con Facebook + Google y crea una entrada en una tabla de base de datos de users .

También hay una serie de otros API puntos finales, por ejemplo, ofertas

/api/offers/<user_id>devuelve las ofertas a un usuario ya registrado.

No estoy seguro de la mejor manera de práctica en la que: –

  1. Cómo la aplicación android hace llamadas API a / api / signin Los puntos finales REST (es decir, qué encabezados, etc, están bien para enviar a lo que asumiría que es un punto final sin seguridad porque los usuarios no registrados estarán tocando esto). Además, ¿qué campos están bien para guardar en la tabla db de users ?

  2. ¿Cómo la aplicación android hace llamadas API a eg / api / offers / a usuarios ya registrados? Es decir, cuando los tokens, etc, debería pasar la aplicación Android?

  3. La forma de la mejor práctica para la seguridad de primavera para asegurar estos puntos finales.

Asumir OAuth 2 es el camino a seguir, pero cualquier consejo / punteros serán más apreciados.

    One Solution collect form web for “Spring boot REST api seguridad para la aplicación de Android con Google + Facebook login”

    Respuesta: 1 / api / signin en el momento de firmar la aplicación enviará información de usuario al servidor y el servidor generará un token y este símbolo volverá en signin la aplicación se puede guardar este símbolo que puede ser el cambio de vez en cuando. Puede utilizar cualquier biblioteca http para servicios web como volley, Retrofit, etc.

    Campos que necesita almacenar en db: userId, userName, userToken.

    Resp: 2 / api / offers / usted puede comprobar el userId del usuario en db si existe allí entonces usted lanzará el msg ya presente en respuesta del servicio de la tela.

    Respuesta: 3 uso de la implementación SSL para su servicio web que sería mucho más seguro, y como usted ha mencionado que va a utilizar el token para cada usuario a que será accesible sólo para autenticar el usuario.

    Nota: – El token debe cambiar cada 30 min o cualquier otra hora que desee, lo que hará que su funcionalidad de autenticación sea más segura.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.