cancel
Showing results for 
Search instead for 
Did you mean: 

Utilisation de Automation PHP et CAS

djoncour_
Champ on-the-rise
Champ on-the-rise

Bonjour,

J'utilise Nuxeo Automation PHP afin d'effectuer des requêtes sur le serveur Nuxeo depuis une application externe, auparavant j'utilisais l'authentification standard c'est à dire l'utilisation du login/password afin de créer une session. Mais je souhaiterais qu'une fois connecté via CAS que l'on puisse effectuer des requêtes sur le serveur Nuxeo sans avoir besoin d'utiliser le mot de passe à chaque fois mais bien d'utiliser le ticket créer par CAS. Voici la configuration de mon cas-config.xml

<?xml version="1.0"?>
<component name="org.esup.ecm.login">
<!-- certains composants doivent être chargés avant que ce fichier soit
       lu car ils contiennent des points d'extension sur l'authentification -->
<require>org.nuxeo.ecm.platform.ui.web.auth.defaultConfig</require>
<require>org.nuxeo.ecm.platform.ui.web.auth.WebEngineConfig</require>
<require>org.nuxeo.ecm.platform.login.Cas2SSO</require>
 
<extension
    target="org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService"
    point="authenticators">
    <authenticationPlugin name="CAS2_AUTH">
       <needStartingURLSaving>true</needStartingURLSaving>
       <loginModulePlugin>Trusting_LM</loginModulePlugin>
        <parameters>
            <!-- variable contenant le ticket dans l'url -->
            <parameter name="ticketKey">ticket</parameter>
            <!-- si utilisation du mode proxy -->
            <!--<parameter name="proxyKey">ticket</parameter>-->
            <parameter name="appURL">http://adresseIp:port/nuxeo/</parameter>
            <!-- URL de login du serveur CAS -->
            <parameter name="serviceLoginURL">https://adresseIp/cas/login</parameter>
            <!-- URL de validation du ticket du serveur CAS -->
            <parameter name="serviceValidateURL">https://adresseIp/cas/serviceValidate</parameter>
            <!-- variable contenant le nom du service dans l'URL -->
            <parameter name="serviceKey">service</parameter>
            <!-- URL de logout de CAS -->
            <parameter name="logoutURL">https://adresseIp/cas/logout?service=http://adresseIp:port/nuxeo/</parameter>
        </parameters>
    </authenticationPlugin>
</extension>
<!-- chainage de l'authentification : on garde une authentification de type
     BASIC pour les accès particuliers (RSS/cmis/contentAutomation) -->
<extension
    target="org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService"
    point="chain">
    <authenticationChain>
        <plugins>
            <plugin>BASIC_AUTH</plugin>
            <plugin>CAS2_AUTH</plugin>
        </plugins>
    </authenticationChain>
</extension>
<extension point="specificChains" target="org.nuxeo.ecm.platform.ui.web.auth.service.PluggableAuthenticationService">

    <specificAuthenticationChain name="Automation">
        <urlPatterns>
            <url>(.*)/automation.*</url>
        </urlPatterns>

        <replacementChain>
            <plugin>AUTOMATION_BASIC_AUTH</plugin>
			<plugin>PORTAL_AUH</plugin>
			<plugin>CAS2_AUTH</plugin>
            <plugin>ANONYMOUS_AUTH</plugin>
        </replacementChain>
    </specificAuthenticationChain>
</extension>
</component>

Savez-vous comment serait-il possible de faire cela avec PHP Automation Client ?

Je vous remercie par avance pour votre aide.

1 REPLY 1

ludovic_UTT
Champ in-the-making
Champ in-the-making

Bonjour,

Getting started

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.