es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Autenticación de usuario silenciosa (no interactiva) con OAuth

El escenario es el siguiente:

  1. El servicio API requiere información del usuario (identificación de usuario o correo electrónico de inicio de sesión) para procesar la llamada a la API y es mejor extraer la información del token de acceso.
  2. Desde el lado del cliente (puede ser una página web), esperamos usar una cuenta fija (nombre de usuario/contraseña) y no requerir que el usuario lo ingrese manualmente, el inicio de sesión debe ser no interactivo y transparente para cada usuario. Considere esta cuenta como una cuenta de servicio y no perteneciente a un usuario individual.

En este caso, según el flujo estándar de OAuth, no se puede utilizar el flujo de credenciales del cliente, ya que solo contiene información de la aplicación. Además, el flujo de concesión de código/implícito no se puede utilizar, ya que requiere al menos una interacción del usuario (para proporcionar la identidad al servidor de autorización). ¿Es el flujo de CROP la única opción en este caso? ¿O hay una mejor alternativa, ya que se considera que CROP proporciona menos seguridad y se sugiere no usarlo según las “Mejores Prácticas Actuales de Seguridad de OAuth 2.0”?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Basado en el escenario dado, el flujo ROPC podría ser la única opción, pero no es una solución recomendada. El flujo Resource Owner Password Credentials (ROPC) implica intercambiar las credenciales del usuario (nombre de usuario y contraseña) por un token de acceso directamente, lo cual puede ser menos seguro que otros flujos que se basan en OAuth 2.0. En cambio, una mejor alternativa podría ser utilizar una cuenta de servicio en el backend con acceso restringido, en lugar de depender de una credencial de cliente fija o de las credenciales de un usuario directamente. Además, teniendo en cuenta las implicaciones de seguridad de cada flujo, es mejor evaluar los riesgos y requisitos para el caso de uso específico antes de elegir un flujo en particular.

Comments are closed.