Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
docpublic:systemes:shibboleth:idpv2x [2014/04/05 13:08]
procacci@tem-tsp.eu [signature metadonnée]
docpublic:systemes:shibboleth:idpv2x [2014/05/19 14:00] (current)
procacci@tem-tsp.eu [publication des metadata]
Line 423: Line 423:
  
 a ce niveau, on peux tester l'IDP via *idp/profile/Status* : a ce niveau, on peux tester l'IDP via *idp/profile/Status* :
-http://shibidp3.it-sudparis.eu/idp/profile/Status+http://yourIDPhostname.domain.tld/idp/profile/Status
  
 qui retourne un simple *OK*  qui retourne un simple *OK* 
 +
 +status detaillé sur http://yourIDPhostname.domain.tld/idp/status sur l'IP du navigateur est autorisé à la lire, cf plus bas ...
  
 ===== Parametrage de l'IDP ===== ===== Parametrage de l'IDP =====
Line 523: Line 525:
  
   * http://yourIDPhostname.domain.tld/idp/profile/Status   * http://yourIDPhostname.domain.tld/idp/profile/Status
 +  * http://yourIDPhostname.domain.tld/idp/status (si IP autorisée)
  
 ==== troubelshooting ==== ==== troubelshooting ====
Line 588: Line 591:
  
  
- 
-==== Metada fédération Renater ==== 
- 
-https://federation.renater.fr/technique/configurations 
- 
-<code> 
-[root@shibidp1 /opt/shibboleth-idp/credentials] 
-$ wget https://services-federation.renater.fr/metadata/metadata-federation-renater.crt 
-</code> 
- 
-<code> 
-[root@shibidp1 /opt/shibboleth-idp/conf] 
-$ vim relying-party.xml 
-... 
-<MetadataProvider id="renaterMD" xsi:type="FileBackedHTTPMetadataProvider" xmlns="urn:mace:shibboleth:2.0:metadata" 
-                          metadataURL="https://services-federation.renater.fr/metadata/renater-metadata.xml" 
-                          backingFile="/opt/shibboleth-idp/metadata/renater-metadata.xml"> 
-            <MetadataFilter xsi:type="ChainingFilter" xmlns="urn:mace:shibboleth:2.0:metadata"> 
-                <MetadataFilter xsi:type="RequiredValidUntil" xmlns="urn:mace:shibboleth:2.0:metadata" 
-                                maxValidityInterval="0" /> 
-                <MetadataFilter xsi:type="SignatureValidation" xmlns="urn:mace:shibboleth:2.0:metadata" 
-                                trustEngineRef="shibboleth.MetadataTrustEngine" 
-                                requireSignedMetadata="true" /> 
-                    <MetadataFilter xsi:type="EntityRoleWhiteList" xmlns="urn:mace:shibboleth:2.0:metadata"> 
-                    <RetainedRole>samlmd:SPSSODescriptor</RetainedRole> 
-                </MetadataFilter> 
-            </MetadataFilter> 
-        </MetadataProvider> 
-... 
- 
-<!--     Security Configurations                --> 
-    <!-- ========================================== --> 
-    <security:Credential id="IdPCredential" xsi:type="security:X509Filesystem"> 
-        <security:PrivateKey>/opt/shibboleth-idp/credentials/idp.key</security:PrivateKey> 
-        <security:Certificate>/opt/shibboleth-idp/credentials/idp.crt</security:Certificate> 
-    </security:Credential> 
- 
- <!-- Trust engine used to evaluate the signature on loaded metadata. --> 
-    <security:TrustEngine id="shibboleth.MetadataTrustEngine" xsi:type="security:StaticExplicitKeySignature"> 
- 
- 
-    <!-- Confiance certificat metaData REnater --> 
-        <security:Credential id="renaterCredentials" xsi:type="security:X509Filesystem"> 
-            <security:Certificate>/opt/shibboleth-idp/credentials/metadata-federation-renater.crt</security:Certificate> 
-        </security:Credential> 
- 
- 
-    <!-- Confiance certificat metaData CruTest --> 
-        <security:Credential id="CruTestCredentials" xsi:type="security:X509Filesystem"> 
-            <security:Certificate>/opt/shibboleth-idp/credentials/federation.cru.fr.crt 
-</security:Certificate> 
-        </security:Credential> 
-    </security:TrustEngine> 
-... 
-</code> 
  
 === Metadata JASIG === === Metadata JASIG ===
Line 1426: Line 1374:
 il faut activer le LoginHandler UsernamePassword dans handler.xml et commenter le LoginHnadler RemoteUser, autrement c'est ce dernier qui prend la main . il faut activer le LoginHandler UsernamePassword dans handler.xml et commenter le LoginHnadler RemoteUser, autrement c'est ce dernier qui prend la main .
  
-cf http://marc.info/?l=shibboleth-users&m=125606962922962&w=2+cf http://marc.info/?l=shibboleth-users&m=125606962922962&w=2 et http://www.edugate.ie/shibboleth-identity-provider-setup/idp-configuration
  
 <code> <code>
 [root@idp /opt/shibboleth-idp/conf] [root@idp /opt/shibboleth-idp/conf]
 $ vim handler.xml $ vim handler.xml
- +                   
-<!--    <LoginHandler xsi:type="RemoteUser"> +<!-- Login Handlers --> 
- +    <!-- 
-<LoginHandler xsi:type="UsernamePassword" +    <ph:LoginHandler xsi:type="ph:RemoteUser"> 
 +        <ph:AuthenticationMethod>urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified</ph:AuthenticationMethod> 
 +    </ph:LoginHandler> 
 +    --> 
 + <!--  Username/password login handler --> 
 +    <ph:LoginHandler xsi:type="ph:UsernamePassword" 
                   jaasConfigurationLocation="file:///opt/shibboleth-idp/conf/login.config">                   jaasConfigurationLocation="file:///opt/shibboleth-idp/conf/login.config">
 +        <ph:AuthenticationMethod>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</ph:AuthenticationMethod>
 +    </ph:LoginHandler>
 +                   
 </code> </code>
  
Line 1587: Line 1543:
 </code> </code>
  
-==== Attributs calculés+==== Attributs calculés ====
  
-=== Expression Reguliere+=== Expression Reguliere ===
  
 Definition d'un attribut basé sur une expression reguliere Definition d'un attribut basé sur une expression reguliere
Line 1608: Line 1564:
 </code> </code>
  
-=== Attribut mappé+=== Attribut mappé ===
  
 <code> <code>
Line 1630: Line 1586:
 </code> </code>
  
-=== test+=== test ===
  
 http://trombi.it-sudparis.eu/secure/printenv.pl http://trombi.it-sudparis.eu/secure/printenv.pl
Line 1722: Line 1678:
 si on oublie de recopier la librairie et qu'on a par redeployer les source pour generer le war, c'est assez troublant, l'IDP semble tourné d'apres les logs idp-process.log, c'est dans /var/log/tomcat6/localhost.log qu'on retrouvre l'erreur "SEVERE" lié au manque du CAS client !.  si on oublie de recopier la librairie et qu'on a par redeployer les source pour generer le war, c'est assez troublant, l'IDP semble tourné d'apres les logs idp-process.log, c'est dans /var/log/tomcat6/localhost.log qu'on retrouvre l'erreur "SEVERE" lié au manque du CAS client !. 
  
 +===== changement de domain =====
 +
 +nous sommes passés de it-sudparis.eu a tem-tsp.eu ! cela implique plusieurs taches
 +
 +==== certificat interne a l'IDP ====
 +
 +https://wiki.shibboleth.net/confluence/display/SHIB2/IdPCertRenew
 +
 +<code>
 +[root@shibidp1 shibboleth-identityprovider-2.4.0]# ./install.sh renew-cert
 +Buildfile: src/installer/resources/build.xml
 +
 +renew-cert:
 +This will create a new set of credentials for your IdP.  If you ran this command previously and still have '*.new' files, they will be overwritten.  Do you wish to proceed? (yes, [no])
 +yes
 +Where is the Shibboleth Identity Provider installed? [/opt/shibboleth-idp]
 +
 +What is the fully qualified hostname of the Shibboleth Identity Provider server? [idp.example.org]
 +idp1.tem-tsp.eu
 +A keystore is about to be generated for you. Please enter a password that will be used to protect it.
 +secret
 +Generating new signing and encryption key, certificate, and keystore. 
 +
 +BUILD SUCCESSFUL
 +Total time: 29 seconds
 +
 +[root@shibidp1 shibboleth-identityprovider-2.4.0]# ls -ltr /opt/shibboleth-idp/credentials/ | tail -3 
 +-rw-r--r-- 1 root   root 1679 May 14 10:31 idp.key.new
 +-rw-r--r-- 1 root   root 1155 May 14 10:31 idp.crt.new
 +-rw-r--r-- 1 root   root 2173 May 14 10:31 idp.jks.new
 +
 +[root@shibidp1 credentials]# cp idp.jks.new idp.jks
 +cp: overwrite `idp.jks'? y
 +[root@shibidp1 credentials]# cp idp.crt.new idp.crt
 +cp: overwrite `idp.crt'? y
 +[root@shibidp1 credentials]# cp idp.key.new idp.key
 +cp: overwrite `idp.key'? y
 +
 +</code>
 +
 +==== changer le hostname =====
 +
 +<code>
 +[root@idpr shibboleth-idp]# grep idpr /etc/sysconfig/network
 +HOSTNAME="idpr.tem-tsp.eu"
 +
 +[root@idpr metadata]# hostname
 +idpr.tem-tsp.eu
 +</code>
 +
 +
 +==== certificats pour le frontal apache  ====
 +
 +changer la configuration du fichier ssl.conf d'apache pour charger les nouveau certificats public (TCS/renater)
 +
 +==== publication des metadata ====
 +
 +il faut modifier les metadata de notre propre IDP :  /opt/shibboleth-idp/metadata/idp-metadata.xml
 +
 +  * modifier l'entityID (si changement, pas necessairement recommandé !)
 +  * modifier les URL d'acces aux services
 +  * modifier l'enumeration du certificat
 +
 +<code>
 +$ vim /opt/shibboleth-idp/metadata/idp-metadata.xml
 +...
 +< MIIDLDCCAhSgAwIBAgIVANglo+Sutu51HUayHY5NWsVctK5OMA0GCSqGSIb3DQEB
 +< BQUAMBsxGTAXBgNVBAMTEGlkcG10LnRlbS10c3AuZXUwHhcNMTQwNTE5MTEzMTQ4
 +...
 +---
 +> MIIDSDCCAjCgAwIBAgIVAOcj4Pu5khNxBuX5dSD5nr6TeIUhMA0GCSqGSIb3DQEB
 +> BQUAMCIxIDAeBgNVBAMTF3NoaWJpZHAzLml0LXN1ZHBhcmlzLmV1MB4XDTExMDkw
 +...
 +<         <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://idpr.tem-tsp.eu/idp/profile/Shibboleth/SSO"/>
 +---
 +>         <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://shibidp1.it-sudparis.eu/idp/profile/Shibboleth/SSO"/>
 +...
 +<         <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://idpr.tem-tsp.eu:8443/idp/profile/SAML2/SOAP/AttributeQuery"/>
 +---
 +>         <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://shibidp1.it-sudparis.eu:8443/idp/profile/SAML2/SOAP/AttributeQuery"/>
 +
 +</code>
 +
 +il faut aussi appliquer le changement des informations dans le guicher Renater : federation.renater.fr/registry
 +
 +onglet informations techinques => URL et certificat
 +
 +
 +
 +==== Filtre CAS ====
 +
 +quand on utilise un filtre CAS, il faut penser à l'URL de retour au service qui est au nom de notre IDP, donc changer le hostname là aussi !
 +
 +dans /usr/local/shibboleth-identityprovider-2.4.0/src/main/webapp/WEB-INF/web.xml
 +
 +<code>
 +<context-param>
 +<param-name>serverName</param-name>
 +<param-value>https://idpr.tem-tsp.eu</param-value>
 +</context-param>
 +</code>
 +
 +relancer install.sh pour deployer ce nouveau web.xml en prenant garde de ne pas ecraser le configuration actuelle .
docpublic/systemes/shibboleth/idpv2x.1396703319.txt.gz · Last modified: 2014/04/05 13:08 by procacci@tem-tsp.eu
[unknown link type]Back to top
CC Attribution-Noncommercial-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0