¿Autorización multitenant y basada en roles a través de JWT?

0

Lo primero: dejemos de lado el debate sobre si se debe usar JWT para administrar sesiones, ya lo conozco y (al menos algunas de) sus limitaciones ( invalidación , prolongación automática de la caducidad , etc.);)

Imagina una plataforma de blogs, que aloja múltiples blogs. Los usuarios son ADMINISTRADORES de toda la plataforma o AUTORES de uno o más blogs. Supongamos que almacena roles en las reclamaciones de su JWT, por ejemplo, para un AUTOR:

- userId: 42
- roles: ["AUTHOR"]

En un mundo sin estado ideal, ¿cómo almacena el hecho de que este usuario es un AUTOR solo para los blogs # 70 y # 71 por ejemplo? ¿JWT sigue siendo adecuado aquí?

Un enfoque podría ser adjuntar el ID del blog del que el usuario es un AUTOR, por ejemplo. Si son AUTORES del blog # 70 solamente:

- roles: ["AUTHOR.70"]

¿Pero qué pasa si el usuario es un AUTOR de, digamos, más de 100 blogs? Ninguno

- roles: ["AUTHOR.70.71.72.73.74..."]

ni

- roles: ["AUTHOR.70", "AUTHOR.71", "AUTHOR.72", "AUTHOR.73", "AUTHOR.74", ...]

me parece bien ...

¿Hay algún enfoque estándar recomendado en este caso? ¿Es apátrida un poco utópico aquí? ¿Cómo manejan esto los proveedores de la nube de authn / authz (por ejemplo, Auth0, Okta, ...)?

Descargo de responsabilidad: no soy un ingeniero de seguridad, así que no lo dude;)

    
pregunta sp00m 09.08.2018 - 14:47
fuente

0 respuestas

Lea otras preguntas en las etiquetas