attributes - style - Shibboleth-¿Cómo leer atributos?
title html attribute (3)
Puede leer los atributos de Shibboleth SAML enviados por el IdP utilizando el objeto Request.ServerVariables :
string server = Request.ServerVariables["HTTP_FIRSTNAME"];
Consulte esto si desea enumerar e imprimir todos los atributos en sesión.
Recuerde configurar Shibboleth attribute-map.xml para manejar los atributos personalizados que su IdP puede enviar:
<Attribute name="firstname" id="firstname" nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
<AttributeDecoder xsi:type="StringAttributeDecoder"/>
</Attribute>
Estoy iniciando sesión exitosamente en la página de prueba de mi proveedor de servicios con Shibboleth. Luego, voy a la página /Shibboleth.sso/Session y veo lo siguiente:
Attributes
affiliation: 1 value(s)
entitlement: 1 value(s)
eppn: 1 value(s)
persistent-id: 1 value(s)
unscoped-affiliation: 1 value(s)
Mi pregunta es ... ¿cómo hago para leer estos valores? No los veo en el encabezado Solicitud HTTP en Fiddler.
Mi aplicación web se implementará en ASP.NET MVC 4 (C #).
ya que mencionó a Fiddler, continuaré y agregaré (años después de la pregunta) que hay un complemento de navegador de Firefox realmente agradable llamado "SAML Tracer". (Simplemente busque "saml tracer" y encontrará la página de complementos de mozilla). Una vez instalado en Firefox, puede abrir su ventana y se mostrarán todas las solicitudes y respuestas http. si algo tiene saml en él, lo indicará con una etiqueta "SAML" al lado de la url; luego puede hacer clic en esa url, elegir la pestaña "SAML" y leer todo el saml que se envió entre idp o sp y su navegador. es una gran herramienta de resolución de problemas en línea, por lo que no tiene que meterse con nada en el sp y / o idp (o incluso tener acceso a ellos).
También puede establecer showAttributeValues
en true
en el controlador de sesión en shibboleth2.xml
. Tenga en cuenta que esto no se recomienda en un entorno de producción. Luego reinicie el servicio shibboleth; la sección de Atributos de la página de la Sesión incluirá los valores reales.
<!-- Session diagnostic service. -->
<Handler type="Session" Location="/Session" showAttributeValues="true"/>