cifrado SAML2

1

Soy nuevo en SAML2 y tengo una pregunta. Tenemos un cliente que dice que quiere cifrar los datos de usuario que nos envían. Aquí hay una descripción general de cómo lo he implementado hoy:

El usuario inicia sesión en su sitio de Intranet y hace clic en un enlace a nuestra empresa. Utilizan PingFederate Inicio de sesión único (SSO) para generar la solicitud SAML2. Envían el nombre de usuario en la sección Subject.NameId . Cuando recibimos la solicitud SAML2, desciframos la información que enviaron usando su certificado.

El cambio que desean es cifrar la sección con nuestra clave y descifraremos esta sección de nuestro lado. Esto se está usando solo para un proceso de SSO de un solo lado, y no necesitamos enviarles nada a ellos.

Solo quería contactarme y ver si esta es la forma correcta de hacer SAML2 o no. La forma en que lo tengo configurado es ver la solicitud SAML2 entrante y determinar qué certificado usar en nuestro servidor, y usar lo que el cliente nos ha dado. Otra cosa que dijo es que la forma en que implementamos esto no es realmente SAML2.

    
pregunta scott0912 13.01.2014 - 19:44
fuente

1 respuesta

1

Hay algunas opciones aquí.

Es muy fácil que solo puedan cifrar la afirmación, que es compatible con la mayoría de las soluciones comerciales. Esto conduce a una interoperabilidad mejor / más estable, pero cifrará toda la afirmación no solo los atributos dados. Usualmente es una operación asimétrica con ellos usando su clave pública.

Otra opción es usar un EncryptedAttribute, que no es algo que he visto implementado en muchos lugares, pero te permite especificar el cifrado en una base de atributo por atributo, y es compatible con la especificación SAML. / p>

La última opción es cifrarlo fuera de banda y dejarlo en su aplicación para descifrarlo manualmente. Esto no está definido por ninguna especificación y se deja a su diseño e implementación. Evitaría esto por las razones habituales de "no hagas tu propio rollo".

Creo que estas opciones están ordenadas en la menor complejidad posible, IMO.

    
respondido por el Steve 13.01.2014 - 19:56
fuente

Lea otras preguntas en las etiquetas