Red de conocimiento informático - Conocimiento del nombre de dominio - La solución definitiva para permisos de microservicios (spring-cloud-gateway-oauth2)

La solución definitiva para permisos de microservicios (spring-cloud-gateway-oauth2)

Nuestra solución ideal de permisos de microservicios se ve así: el servicio de autenticación es responsable de la autenticación, la puerta de enlace es responsable de verificar la autenticación y la autenticación, y los otros servicios API son responsables de manejar su lógica comercial respectiva. La lógica relacionada con la seguridad solo existe en el servicio de autenticación y el servicio de puerta de enlace; otros servicios solo brindan servicios y no contienen ninguna lógica relacionada con la seguridad.

Realice la autenticación unificada a través del servicio de autenticación (oauth2-auth) y luego realice la autenticación unificada y la autenticación a través de la puerta de enlace (oauth2-gateway). Nacos se utiliza como registro, Gateway se utiliza como puerta de enlace y la biblioteca nimbus-jose-jwtJWT se utiliza para manipular etiquetas JWT.

A continuación, crearemos el servicio Gateway, que servirá como un servicio de recursos para Oauth2, un servicio de cliente que realiza operaciones de autenticación y autenticación unificadas en solicitudes de acceso a microservicios

Finalmente, Construiremos el servicio API, que no integra ni implementa ninguna lógica relacionada con la seguridad. Antes de eso, primero iniciamos los servicios Nacos y Redis, y luego iniciamos oauth2-auth y oauth2-gateway y el servicio oauth2-api <. /p>

Ejecuto una versión independiente de Nacos en Docker para probar

github.com/it-wwh/spring-cloud-oauth2

Iniciaré oauth2- servicios auth, oauth2-gateway y oauth2-api en orden. gateway-oauth2

github.com/it-wwh/spring-cloud-oauth2

Iniciaré los servicios oauth2-auth, oauth2-gateway y oauth2-api en orden.