Colección de citas famosas - Frases célebres - Cómo implementar la gestión de permisos en un sistema web basado en sso

Cómo implementar la gestión de permisos en un sistema web basado en sso

El inicio de sesión único SSO (inicio de sesión único) simplemente significa que en un entorno de coexistencia de múltiples sistemas, después de que los usuarios inician sesión en un lugar, no necesitan iniciar sesión en otros sistemas, es decir, un usuario. Todos los demás sistemas pueden confiar en el inicio de sesión único. El inicio de sesión único se utiliza con mucha frecuencia en sitios web grandes, como sitios web como Alibaba. Detrás del sitio web hay cientos o miles de subsistemas. La operación o transacción de un usuario puede implicar la colaboración de docenas de subsistemas. Si cada operación, todos los subsistemas requieren autenticación de usuario. No solo el usuario se volverá loco, sino que cada subsistema también se volverá loco debido a la lógica de autenticación y autorización repetidas. En última instancia, implementar el inicio de sesión único es resolver cómo generar y almacenar esa confianza, y luego cómo otros sistemas verifican la validez de esta confianza. Por lo tanto, los puntos clave son los siguientes: almacenar confianza y verificar la confianza. Una vez resueltos los problemas anteriores, llegamos al principio. Se puede decir que el efecto es SSO. La forma más sencilla de implementar SSO es utilizar cookies. El proceso de implementación es el siguiente: Dos principios de implementación de SSO de inicio de sesión único web comúnmente utilizados. Pero la gente inmediatamente cuestionará dos cuestiones: Las cookies no son seguras y no se pueden usar para evitar dominios cruzados. iniciar sesión El primer problema generalmente se resuelve cifrando las cookies. De hecho, la idea de esta solución es almacenar esta relación de confianza en el cliente. tiene que usar cookies. También puede usar flash. La API de objetos compartidos de flash proporciona capacidades de almacenamiento. En términos generales, los sistemas grandes adoptarán el método de almacenar relaciones de confianza en el lado del servidor. El proceso de implementación es el siguiente: Dos principios de implementación de SSO de inicio de sesión único web de uso común. La solución anterior es almacenar las relaciones de confianza en un sistema SSO separado. (Por el momento llámelo así), se dice que simplemente se mueve del cliente al servidor, pero es necesario resolver varios problemas: cómo almacenar de manera eficiente una gran cantidad de datos de confianza temporales, cómo. para evitar que el proceso de transferencia de información sea manipulado, cómo hacer que el sistema SSO confíe en el inicio de sesión. Para el primer problema, los sistemas y los sistemas de enlace generalmente pueden adoptar una solución de caché distribuida similar a memcached, que no solo puede proporcionar un mecanismo para un volumen de datos escalable, sino que también proporcione un acceso eficiente. Para la segunda pregunta, generalmente se adopta el método de firma digital, ya sea mediante la firma de un certificado digital o mediante un método como md5. Esto requiere que el sistema SSO cifre los parámetros que deben verificarse con md5 al devolver la URL de inicio de sesión y traer la. token.Regresar juntos Cuando el sistema que necesita iniciar sesión finalmente verifica la relación de confianza, el token debe pasarse al sistema SSO. El sistema SSO puede identificar si la información se ha modificado verificando el token. El último problema se puede resolver mediante una lista blanca. En pocas palabras, solo los sistemas de la lista blanca pueden solicitar relaciones de confianza de producción. De manera similar, solo los sistemas de la lista blanca pueden estar exentos del inicio de sesión. A través de la evolución de la segunda solución, el inicio de sesión websso se puede implementar mediante la emisión de boletos: dos principios de implementación de SSO de inicio de sesión único web de uso común. A través del tercer método, el cliente solo emite y obtiene boletos, y no involucra información del usuario. , la información del usuario se puede entregar al subsistema y al sistema SSO para su procesamiento, lo que protege de manera más efectiva la privacidad del usuario. Lo anterior solo proporciona algunas tecnologías de implementación simples, pero es necesario enfatizar que esto es solo una implementación técnica, solo para resolver algunos de los problemas mencionados anteriormente, SSO en sí no es de alta tecnología. Tener esta comprensión es más beneficioso para nosotros. Explora SSO en profundidad