Estoy trabajando en un sitio web implementado en AWS utilizando S3 como almacenamiento y CloudFront CDN. Es un sitio web estático con un solo archivo html que usa JS para mostrar el contenido según la cadena de consulta. El propietario es una empresa que ya ha establecido SSO dentro de su organización, utiliza IBM Tivoli como IdP. La parte que me falta es ¿cómo se genera la solicitud de autorización?
He leído estos:
http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html http://docs.aws. amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html http://docs.aws.amazon.com/ IAM/latest/UserGuide/id_roles_providers_create_saml.html http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html
Muchos de estos están cerca pero justo fuera de lugar. No es una instancia de EC2, no es Elastic Beanstalk, no intento acceder a la consola de AWS y no usan AD para SSO. Es solo un sitio web.
Hasta ahora tengo:
Mi pregunta es cómo se conectan los dos lados. ¿AWS lo hace automáticamente cuando alguien intenta acceder al sitio? ¿La empresa crea un enlace especial en su portal para iniciar el sitio con SAML? ¿Qué sucede si el usuario simplemente escribe el nombre de dominio en el navegador? ¿Es necesario agregar código al sitio web?
TIA, Mike
Dando vueltas para cerrar esta pregunta. Descubrí que AWS no tiene una forma de agregar una capa SSO a su sitio web alojado en CloudFront. Eso debe implementarse dentro del código del sitio web.
Terminé usando el módulo npm 'express-saml' para manejar el intercambio de saml y una tabla de DynamoDB realmente simple para almacenar el inicio de sesión en el lado del SP. El aws-sdk se utiliza para DynamoDB.
Miguel