Documents:CNS esup-lecture

Un article de Wiki ESCO-Portail.

Intégration du CNS dans esup-lecture


Sommaire


Pré-requis

  • CNS a besoin des attributs uid, RNE (ESCOUAI), RNERattachement (ESCOUAIRattachement), profils (ENTPersonProfils),classes (ENTEleveClasses). cf Portail:Attributs pour la configuration CAS.
  • Il faut faire attention à la gestion des comptes chez CNS, il est impossible de conserver les comptes générés par l'établissement avec ceux qui seront générés à la volé par CNS avec la connexion au travers de l'ENT. CNS doit supprimer les comptes créés. Un autre point à surveiller est le nombre de licences dont l'établissement dispose par rapport à la population totale. Si le nombre de licence est bien inférieur au nombre de personnes susceptibles de se connecter il faut bien définir les groupes des personnes autorisées à se connecter.


Configuration de esup-lecture

Ajout d'une catégorie dans le fichier esup-lecture.xml

<categoryProfile
                name="cns"
                id="cns"
                urlCategory="http://link.portal.fr/esup-lecture/cns.xml"
                trustCategory="yes"
                access="public"
                ttl = "3600"
                timeout = "3000"  >
                <visibility>
                        <allowed/>
                        <autoSubscribed/>
                        <obliged>
                                <group
                                        name="local.0"/>
                        </obliged>
                </visibility>
        </categoryProfile>

flux de description de la source

Temporairement nous avons créé le fichier cns.xml déposé à la racine du portlet lecture déployé afin que celui-ci soit disponible à partir d'une url

<?xml version="1.0" encoding="UTF-8" ?>
<category edit="all" name="CNS" ttl="60">
        <description>Ressources Canal Num&#233;rique du Savoir</description>
        <visibility>
                <allowed></allowed>
                <autoSubscribed></autoSubscribed>
                <obliged>
                        <group name="ESCO-GROUPER.esco:Etablissements:CLAUDE DE FRANCE:Tous_CLAUDE DE FRANCE" />
                </obliged>
        </visibility>
        <sourceProfiles>
                <sourceProfile id="1" access="cas" name="Autres"
                        specificUserContent="no" ttl="60"
                        url="https://CNS.LINK.FR/?param1=xxxxx&amp;param2=xxxxxx&amp;param3=xxxxx">
                        <visibility>
                                <allowed></allowed>
 
                                <autoSubscribed></autoSubscribed>
                                <obliged>
                                        <!-- pour les tests 
                                        <group name="ESCO-GROUPER.esco:Etablissements:GIP_RECIA:Tous_GIP_RECIA" />

                                        -->
                                        <group name="ESCO-GROUPER.esco:Etablissements:CLAUDE DE FRANCE:Parents" />
                                        <group name="ESCO-GROUPER.esco:Etablissements:CLAUDE DE FRANCE:administratifs" />
                                </obliged>
                        </visibility>
                </sourceProfile>
                <sourceProfile id="2" access="cas" name="&#201;l&#232;ves"
                        specificUserContent="no" ttl="60"
                        url="https://CNS.LINK.FR/?param1=xxxxx&amp;param2=xxxxxx&amp;param3=xxxxx">
                        <visibility>
                                <allowed></allowed>
                                <autoSubscribed></autoSubscribed>
                                <obliged>
                                        <group
                                                name="ESCO-GROUPER.esco:Etablissements:CLAUDE DE FRANCE:Eleves" />
                                </obliged>
 
                        </visibility>
                </sourceProfile>
                <sourceProfile id="3" access="cas" name="Enseignants"
                        specificUserContent="no" ttl="60"
                        url="https://CNS.LINK.FR/?param1=xxxxx&amp;param2=xxxxxx&amp;param3=xxxxx">
                        <visibility>
                                <allowed></allowed>
                                <autoSubscribed>
 
                                </autoSubscribed>
                                <obliged>
                                        <group
                                                name="ESCO-GROUPER.esco:Etablissements:CLAUDE DE FRANCE:Profs" />
                                </obliged>
                        </visibility>
                </sourceProfile>
        </sourceProfiles>
</category>
  • access doit avoir la valeur à "cas" afin de pouvoir effectuer une requête en mode proxy sur le serveur cas, car le serveur cns effectue une demande CAS afin d'obtenir le ticket de l'utilisateur.

Ajouter la stylesheet

Créer la stylesheet stylesheetCNS.xsl de lecture du flux cns, et la déposer à la racine du portlet lecture déployé afin que celle-ci soit disponible à partir d'une url.

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method = "html" encoding="utf-8" />
   <xsl:template match="/">
   <h1>
      Ressource : <xsl:value-of select="Ressource/Libelle" />
   </h1>
 
   <br/>
   <b>Description : </b>
   <xsl:value-of select="Ressource/Description" disable-output-escaping="yes"/>
   <br/>
   <br/>
   <a target="_blank" href="https://auth.domain/cas/login?service={Ressource/Url}?code={Ressource/CodeProduit}"><b>Lien vers la ressource.</b></a><br/>
   <br/>
   <i>Editeur: <xsl:value-of select="/Ressource/Editeur" /></i>
   </xsl:template>
</xsl:stylesheet>

Configurer le mapping stylesheet / flux cns

<mapping
        rootElement="ServiceSuccess"
        xsltFile="http://link.portail.fr/esup-lecture/stylesheetCNS.xsl"
        itemXPath="/ServiceSuccess/Catalogue/Ressource">
</mapping>

configuration du portail ou du tomcat ayant le contexte esup-lecture

Il faut ajouter la CA du serveur de CNS. Ce certificat est à ajouter sur le serveur du portlet lecture ainsi que sur le serveur du CAS.

Creer le fichier de la CA cns.pem

Attention la validité du certificat n'est valable que jusqu'au 28/01/2013.

-----BEGIN CERTIFICATE-----
MIID2TCCAsGgAwIBAgIQNdpirWuKrPxRhDnUAm4b4zANBgkqhkiG9w0BAQUFADA8
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMVGhhd3RlLCBJbmMuMRYwFAYDVQQDEw1U
aGF3dGUgU1NMIENBMB4XDTExMTEyOTAwMDAwMFoXDTEzMDEyNzIzNTk1OVowcjEL
MAkGA1UEBhMCRlIxDjAMBgNVBAgTBVBBUklTMQ4wDAYDVQQHFAVQQVJJUzESMBAG
A1UEChQJUyBFIEogRSBSMRIwEAYDVQQLFAlTIEUgSiBFIFIxGzAZBgNVBAMUEiou
ZS1pbnRlcmZvcnVtLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
AKPeiRpTfWewJY6zSC1HRIXNlTeHWL2fxOT2AtFGSjRXpHZ71c56GEy9PG7dxsZe
TXkE0RquEVQejhCr/afp5M2COEvxT/XAkm07SK7UQnrp940HBKluO2fqurs+DRW9
cpIndnTH/sBHTlQSVkwClcW0RuNRY1F0xyHShcBZmUyt5GfBHJzP38iPJCRz48p1
mjOra5WfTezsabA7V/pxxKz/zo32yOXTwlEZSV7gIhgnkBfDkOLCBIb8TvjI98G9
Fss+Mz1COGVLAx8nzCRgdkEER+F3R5yShbEoDs/46DFmKkprKbBWmzQKGSM+/5EM
hsaBCntSaWA5fCTDbN5iwQkCAwEAAaOBoDCBnTAMBgNVHRMBAf8EAjAAMDoGA1Ud
HwQzMDEwL6AtoCuGKWh0dHA6Ly9zdnItb3YtY3JsLnRoYXd0ZS5jb20vVGhhd3Rl
T1YuY3JsMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAyBggrBgEFBQcB
AQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnRoYXd0ZS5jb20wDQYJKoZI
hvcNAQEFBQADggEBACRvtlo+NuMMycKkJB6wCbUuAfKURqetygg7jRf2QVcjnGVH
busOVBhMcjDi9rSwP9209GlrFofQSly6roQvFAo9MyrXGrlW+Mb7e4t8PYmkeTjA
xX0gdP1AMc90SW1y19ySGwwDCbXOPO6B+dQOrh1Qry8+Ty7mmryUpPHtL50T6Lzh
Teu6gXoDwUkPYnkZQHlm39fxn7fSYlUZ1K4Umd9jIWiaZ9//i6i5fgACYBiqgyrI
Aq3sY8FayF7eEz2cbt2hvI8yb2QU/tG393sMr9Q45idwmzUkWmBuzml1+hFRPrFZ
t0da26SX9tkv2RoFjdv1UZ2lLtzDgOKJxz7Qz3U=
-----END CERTIFICATE-----

Importer le certificat au keystore.

keytool -import -alias CNS -file /PATH/cns.pem -trustcacerts -keystore /PATH/ca-fichier.keystore -storepass PASSWORD

Suppression d'un certificat du keystore.

keytool -delete -alias CNS -keystore /PATH/ca-fichier.keystore

Contacts CNS

pages développeurs
pages "communauté ESCO"