Ich verwende mod_auth_mellon auf Apache für die externe Authentifizierung mit SAML mit einem ADFS als IDP. Ich erhalte einen Session-Cookie und die Authentifizierung funktioniert, aber ich bekomme die vom IDP gesendeten Attribute nicht.mod_auth_mellon Umgebungsvariablen sind null
Ich las in der Antwort in einem anderen Thema (mod_auth_mellon not populating environment variables), dass die Attribute in den RequestHeader geschrieben werden müssen, und das ist, was ich tue.
Mein Mellon Konfiguration ist wie folgt:
<Location/>
MellonEnable info
MellonSessionDump On
MellonSamlResponseDump On
MellonEndpointPath /mellon
MellonSPMetadataFile /etc/apache2/saml2/metadata.xml
MellonSPPrivateKeyFile /etc/apache2/saml2/metadata.key
MellonSPCertFile /etc/apache2/saml2/metadata.cert
MellonIdPMetadataFile /etc/apache2/saml2/FederationMetadata.xml
MellonSetEnv "MELLON_SESSION" "MELLON_SESSION"
MellonSetEnv "MELLON_SAML_RESPONSE" "MELLON_SAML_RESPONSE"
RequestHeader set Mellon-Session "%{MELLON_SESSION}e"
RequestHeader set Mellon-SAML-Response %{MELLON_SAML_RESPONSE}e
MellonSetEnvNoPrefix "MELLON_uid" "uid"
MellonSetEnvNoPrefix "MELLON_NameID" "NameID"
RequestHeader set Mellon-UID %{MELLON_uid}e
RequestHeader set Mellon-NameID "%{MELLON_NAME_ID}e"
</Location>
# This is a location that will trigger authentication when requested.
<Location /adfshandler >
AuthType Mellon
MellonEnable auth
Require valid-user
</Location>
Ich kann das Set atributes in der Kopfzeile sehen, und ich habe Werte für alle außer uid uid ist null. Muss ich die angeforderten Attribute irgendwo angeben? Oder ist es der falsche Name?