2016-05-31 6 views
0

Hey Ich versuche IDP mit meinem Service-Provider zu konfigurieren, aber wenn saml Antwort von IDP kommt bekam ich diesen Fehler in meinem Service-ProviderNameID Element muss als Teil des Subjekts vorhanden sein

org.opensaml.common.SAMLException Metadaten xml - NameID Element vorhanden sein muss als Teil des Subjekts in der Antwortnachricht in der IDP-Konfiguration bei org.springframework.security.saml.websso.WebSSOProfileConsumerImpl.processAuthenticationResponse

I NameID in IDP aktivieren sie bitte konfiguriert:

<NameID>urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName</NameID> 
      <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat> 
       <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat> 

here is the whole response 


<?xml version="1.0" encoding="UTF-8"?><saml2p:Response xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" Destination="http://localhost:8082/saml/SSO" ID="_9129c7121ce71d24e32d5dfe527bd760" InResponseTo="a1eei99dgc9442d72a98h62i9d179j9" IssueInstant="2016-05-31T15:52:04.736Z" Version="2.0"> 
    <saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">idp.test.com/idp/shibboleth</saml2:Issuer> 
    <saml2p:Status> 
     <saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/> 
    </saml2p:Status> 
    <saml2:EncryptedAssertion xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion"> 
     <xenc:EncryptedData xmlns:xenc="http://www.w3.org/2001/04/xmlenc#" Id="_4fcade81e4aae59bfa099e692158a687" Type="http://www.w3.org/2001/04/xmlenc#Element"> 
     <xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"/> 
     <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> 
      <xenc:EncryptedKey Id="_bd99cfd23b6342cf0b4adf7fa03d203f" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"> 
       <xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"> 
        <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/> 
       </xenc:EncryptionMethod> 
       <ds:KeyInfo> 
        <ds:X509Data> 
        <ds:X509Certificate></ds:X509Certificate> 
        </ds:X509Data> 
       </ds:KeyInfo> 
       <xenc:CipherData xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"> 
        <xenc:CipherValue>ssss</xenc:CipherValue> 
       </xenc:CipherData> 
      </xenc:EncryptedKey> 
     </ds:KeyInfo> 
     <xenc:CipherData xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"> 
      <xenc:CipherValue>!!!</xenc:CipherValue> 
     </xenc:CipherData> 
     </xenc:EncryptedData> 
    </saml2:EncryptedAssertion> 
</saml2p:Response> 

I ‚verstehen don was ist NameID und wie sie konfigurieren Ich werde Ihre Hilfe tnx

+0

Haben Sie Ihre IDP-Konfiguration überprüft, ob Sie das Feld NameId ordnungsgemäß in der Forderungsregel konfiguriert haben? – ManojP

+0

Wie ich verstehe Anspruch Regel ist Teil des Active Directory, verwende ich nicht AD. Ich habe eine Web-App (Spring Saml), die sich wie SP und Identity-Provider verhält. Weißt du, was ist diese NameID und wo muss ich konfigurieren? Ich kann dafür keine gute Dokumentation finden. danke –

Antwort

1

In der SAML Welt schätzen gibt es zwei Möglichkeiten, die Identität des Benutzers an die SP zurück. Der Themenbereich oder der Attributstatementbereich. Viele neuere SP-Konfigurationen verwenden ein Attribut in der Attributanweisung, der Themenbereich sollte jedoch weiterhin ausgefüllt sein. Wenn der SP ein Attribut verwendet, um die Identität des Benutzers abzurufen, konfigurieren Sie Shibboleth so, dass transientId an den fraglichen SP zurückgegeben wird. Andernfalls müssen Sie in den SP-Dateien docs/config oder Metadaten nachsehen, welche NameID-Formate vom SP unterstützt werden, und Shibboleth konfigurieren, um den entsprechenden Wert im entsprechenden Format zurückzugeben.

Eine gute Follow-up lesen ist ein Shib-Benutzer-Thread: http://shibboleth.1660669.n2.nabble.com/No-NameID-released-td7605312.html.

+0

tnx für Resolver Attribut Hilfe, die ich Benutzer transientId in und im Attributfilter –

Verwandte Themen