2017-11-13 3 views
0

Unser aktuelles SAML-Setup hat mit der mehr oder weniger Standardinstallation, die von der Bibliothek SimpleSAMLPHP bereitgestellt wird, gut funktioniert. Jedoch benötigt ein neuer IDP speziell , um über eine POST-Bindung an den SP zu binden.SimpleSAMLPHP Bindung über POST

Es scheint, wie simpleSAMLphp wird immer auf den IDP umleiten eine GET-Anforderung verwendet wird, wie deutlich hier zum Beispiel zu sehen:

SimpleSAMLPHP Challenge via GET

Es scheint auch keine bestimmte Konfigurationseinstellung zu sein, die diese steuert.

Wir haben versucht, mit den Einstellungen der NameID-Richtlinie ohne Erfolg zu spielen. Der SP führt die folgenden NameID Politik in ihren Metadaten:

urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST 

Unsere eigene NameID Politik ist wie folgt:

urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified 

Alle hier Spitze wird wirklich sehr

geschätzt werden

Antwort

1

Sie möchten die IdP Metadaten eine urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST Bindung für SingleSignOnService haben und diese Bindung zuerst in der Liste der unterstützten SingleSignOnService Optionen aufgeführt haben. Dies ist oft in der Datei metadata/saml20-idp-remote.php. Dies ist verschiedene von NameId und AssertionConsumerService SP-Bindungen mit dem gleichen Bindungsnamen. Ihr SP wählt die erste SingleSignOnService Option aus, die für den IdP in den IdP-Metadaten aufgeführt ist.

$metadata['https://some.idp.co'] = array (
    'entityid' => 'https://some.idp.co', 
    'metadata-set' => 'saml20-idp-remote', 
    'SingleSignOnService' => 
     array (
      0 => 
       array (
        'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST', 
        'Location' => 'https://some.idp.co/idp/profile/SAML2/POST/SSO', 
       ), 
      1 => 
       array (
        'other options, etc' 
       ), 
     ), 
Verwandte Themen