Come cambio il certificato di un fornitore di servizi Shibboleth?

0

Come cambio il certificato di un fornitore di servizi Shibboleth? Ho un provider di identità esistente (IDP) e un fornitore di servizi (SP) e devo sostituire il certificato con un certificato firmato da Verisign. Sto testando un certificato autofirmato creato con Shibboleth etc / shibboleth / keygen.bat.

Ho aggiunto il nuovo cert & chiave come standby CredentialResolver in shibboleth2.xml per SP:

<CredentialResolver keyName="Standby" type="File" key="D:/tmp/sp-key-qa.pem" certificate="D:/tmp/sp-cert-qa.pem"/>

Ho aggiornato i metadati per l'IDP aggiungendo il certificato nel file dei metadati:

affidandosi-party.xml:

    <metadata:MetadataProvider id="CMSMd" xsi:type="metadata:ResourceBackedMetadataPro$
        <metadata:MetadataResource xsi:type="resource:FilesystemResource" file="/usr/s$
    </metadata:MetadataProvider>

metadata.xml:

<KeyDescriptor>
  <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
    <ds:X509Data>
      <ds:X509Certificate>
MIIDMDCCAhigAwIBAgIJAJ1BXaNNWMHhMA0GCSqGSIb3DQEBBQUAMCAxHjAcBgNV
...

E funziona fino a quel punto. Tuttavia, quando commento il vecchio certificato dai metadati sull'IDP e riavvio, fallisce.

metadata.xml:

<!-- Old cert
    <KeyDescriptor>
        <ds:KeyInfo>
            <ds:X509Data>
                <ds:X509Certificate>
MIIFjjCCA3agAwIBAgICAsowDQYJKoZIhvcNAQEFBQAwgaAxCzAJBgNVBAYTAlVT
...

Quando provo ad accedere all'URL protetto, reindirizza correttamente all'IDP, autenticarlo, reindirizza all'SP all'URL /Shibboleth.sso/SAML2/Artifact?SAMLart=AAQAAilR ... e fallisce con 'Internal Errore del server. Si prega di contattare l'amministratore del sito. ' nel browser.

Nel registro IDP, dice

10:14:12.124 - ERROR [org.opensaml.ws.security.provider.ClientCertAuthRule:156] - Authentication via client certificate failed for context presenter entity ID urn:company:cms

10:14:12.154 - DEBUG [PROTOCOL_MESSAGE:64] -

<?xml version="1.0" encoding="UTF-8"?><soap11:Envelope xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/">
<soap11:Body>
  <saml2p:ArtifactResponse xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" ID="_6cbe5f5c3327d6bea5223322eb637a75" InResponseTo="_d7eda74f5805219b22c4e5be2fe8bbb7" IssueInstant="2012-07-17T14:14:12.143Z" 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">urn:company:sso:idp</saml2:Issuer>
     <saml2p:Status>
        <saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Responder">
           <saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:RequestDenied"/>
        </saml2p:StatusCode>
        <saml2p:StatusMessage>Message did not meet security requirements</saml2p:StatusMessage>
     </saml2p:Status>
  </saml2p:ArtifactResponse>
</soap11:Body>
</soap11:Envelope>

Nel registro SP, dice:

<13>Jul 17 10:13:38 CMSMACHINE01 [apache-error]: [Tue Jul 17 10:13:38 2012] [error] [client 172.17.87.25] client denied by server configuration: D:/Packages/Apache2.2/htdocs/favicon.ico
<-5>[shibd] ERROR [[1]] OpenSAML.SOAPClient - SOAP client detected a SAML error: (urn:oasis:names:tc:SAML:2.0:status:Responder) (Message did not meet security requirements)
<-5>[apache-shibd] ERROR [[9888] shib_handler] Shibboleth.Listener - remoted message returned an error: Identity provider returned a SAML error in response to artifact.
<-5>[apache-shibd] ERROR [[9888] shib_handler] Shibboleth.Apache - Identity provider returned a SAML error in response to artifact.
<-5>[apache-shibd] ERROR [[9888] shib_handler] Shibboleth.ServiceProvider - sendError could not process error template ()
<13>Jul 17 10:14:12 CMSMACHINE01 [apache-error]: [Tue Jul 17 10:14:12 2012] [error] [client 172.17.87.25] Identity provider returned a SAML error in response to artifact., referer: https://sso.dev.company.com/idp/Authn/BB

Per favore aiuto. Ho la sensazione che ci sia un settaggio di politica di sicurezza da qualche parte, ma non riesco a trovare alcuna documentazione su di esso né alcuna impostazione nei file di configurazione.

    
posta Chloe 17.07.2012 - 17:18
fonte

1 risposta

0

È possibile utilizzare un solo CredentialResolver nello SP shibboleth2.xml, poiché i metadati SP sull'IDP sono stati aggiornati manualmente.

Inoltre, questo era richiesto sul server web IDP, che è dietro Apache, per evitare errori criptici.

SSLVerifyClient optional_no_ca

    
risposta data 24.07.2012 - 22:47
fonte

Leggi altre domande sui tag