spring security - secure - Spring oauth2 alcance vs autoridades(roles)
spring security oauth2 ejemplo (1)
Estoy usando Spring Security OAuth2 y actualmente implemento los tipos de concesión de contraseña y contraseña de cliente. Noté que un cliente tiene tanto alcance como autoridades. ¿Puede alguien explicar cuál es la diferencia? Para ser más específicos, estoy usando JDBCTokenStore y el esquema de la base de datos tiene una tabla oauth_client_details.
También,
En la tabla oauth_client_details, no estoy seguro de para qué se usan los siguientes campos:
web_server_redirect_url, access_token_validity, refresh_token_validity
Algunas aclaraciones serían muy útiles y apreciadas.
Noté que un cliente tiene tanto alcance como autoridades.
El cliente solo tiene alcance, pero podemos considerarlo / usarlo como una autoridad (roles). Esto se debe a que la especificación OAuth2 no explica el uso específico del alcance.
Considera esto, un usuario autoriza a Twitter a publicar un tweet de usuario en Facebook. En este caso, Twitter tendrá un alcance write_facebook_status . Aunque el usuario tiene autoridad para cambiar su propio perfil, esto no significa que Twitter también pueda cambiar el perfil del usuario. En otras palabras, el alcance son las autoridades / roles del cliente y no son las autoridades / roles del usuario.
web_server_redirect_url
Esto será utilizado por el servidor de autorización para redirigir la solicitud a su URL original o devolución de llamada (concesión de autorización) después de la autorización exitosa.
access_token_validity
Este es el tiempo de caducidad del token_access en segundos. Establecer en -1 o 0 para infinito. Si lo configura en 60, luego de 1 minuto su token_access no será válido. Debe solicitar un nuevo token haciendo el proceso de autorización o usar refresh_token.
refresh_token_validity
Este es el tiempo de expiración de refresh_token.