¿El siguiente esquema para la autenticación y autorización de Google OAuth2 es satisfactorio y seguro?

0

Tengo una tabla de usuarios en mi aplicación SPA (aplicación Phoenix API) que contiene los campos: name , email , registered_at , role_id . Yo uso la autenticación OAuth2 por la API de Google. Una vez que el usuario final se autentica en la página de inicio de sesión de Google, mi biblioteca OAuth2 obtiene su dirección de correo electrónico de la API del perfil de Google y la uso para marcarlo en mi solicitud como autenticado (conectado) enviándole una token de autenticación firmado para futuras solicitudes autorizadas. Mi pregunta es este modelo seguro y seguro? ¿Sería posible que un atacante se autorizara en mi aplicación al manipular la respuesta de Google al insertar una dirección de correo electrónico personalizada dentro de la respuesta del perfil de Google? ¿Es seguro confiar solo en la dirección de correo electrónico obtenida llamando a la API de perfil de Google? ¿Se pueden tomar medidas de seguridad adicionales?

    
pregunta W.M. 19.11.2017 - 10:21
fuente

1 respuesta

1

Debería estar bien. Parece que está implementando OpenID, que está construido sobre OAuth.

Cuando el usuario se autentica en Google, un token se devuelve a su aplicación a través de una redirección realizada por el navegador del usuario. Esto puede ser visto o modificado por el usuario o por cualquier persona que pueda interceptar la solicitud, es decir, un servidor proxy corporativo que realiza una inspección https.

Cuando su aplicación recibe este token, lo envía a Google, que verifica que se envió a su aplicación y le devuelve los datos de usuario a los que hace referencia. Esto solo se puede interceptar si su conexión a Google es de intermediarios, algo que es mucho menos probable.

    
respondido por el ste-fu 19.11.2017 - 10:59
fuente

Lea otras preguntas en las etiquetas