Cómo proporcionar seguridad de API granular utilizando los ámbitos y reclamos de OAuth

2

Estoy tratando de encontrar la mejor manera de asegurar una API utilizando los ámbitos y / o reclamos de oAuth. No estoy seguro de lo que debo usar.

Mi configuración es la siguiente:

  • Todos los usuarios inician sesión en signin.domain.com

  • Hay varios clientes www.domain.com y admin.domain.com

  • Hay un servidor de recursos api.domain.com

  • Hay varios ámbitos data.read y data.write

  • www.domain.com solicita un alcance data.read y admin.domain.com solicita ambos ámbitos data.read y data.write

  • Algunos usuarios que son administraciones deben poder escribir datos (por ejemplo, POST en api.domain.com) pero todos los usuarios autenticados pueden leer.

Tal como lo entiendo, a los usuarios que inicien sesión con el cliente www.domain.com no se les emitirá un token que contenga el alcance data.write , incluso si el cliente lo solicita.

He leído que los ámbitos son una clase de categorías de reclamos [1]. ¿Esto significa que si un cliente solicita un alcance específico, necesito rellenar el token con todas las reclamaciones relacionadas con ese alcance?

¿Desde allí mi servidor de recursos comprueba si el usuario tiene la reclamación correcta?

O, ¿el servidor de recursos solo comprueba que el token tiene el alcance correcto?

De cualquier manera, no es posible asignar ámbitos a los usuarios, solo a los clientes y no es suficiente decir "el usuario que inició sesión a través del cliente x para que obtenga el permiso de escritura". Así que parece que mi primera suposición parece ser la única correcta.

Le agradecería que cualquier persona pueda aclarar cómo se deben usar los ámbitos y los reclamos para proporcionar un acceso granular a la API,

Fuentes:

[1] enlace

    
pregunta Remotec 19.11.2018 - 13:56
fuente

0 respuestas

Lea otras preguntas en las etiquetas