Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 19/07/2011 14:54:57

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Configurer l'accès limité avec CAS et LDAP

Bonjour,
Je teste actuellement  le snapshot  : ametys-3.2.1.20110716-0340-b515-SNAPSHOT
J'ai configuré le BO avec CAS et LDAP. Cela fonctionne parfaitement.
J'ai paramétré une page avec limitation d'accès (pour moi même, cad utilisateur delage du LDAP).
J'ai configuré le plugin cas sur le FO.

L'accès sur la page ainsi protégé me renvoie bien sur mon authentification CAS, mais j'obtiens ensuite l'erreur suivanet :

ADMINISTRATION - Access denied

org.ametys.runtime.authentication.AccessDeniedException : Access denied for user anonymous for URL http://cms-test:8080/cms/generate/intratest/fr/zone-reserve.html?_contextPath=&_baseServerPath=http://intratest.univ-lemans.fr&_initialRequest=%2Ffr%2Fzone-reserve.html

Est-ce la bonne méthode. J'ai un doute car il existe un plugin usermanagerFO (sur le BO mais pas sur le FO ???)

Merci pour votre aide.

Patrick

Offline

#2 19/07/2011 20:12:13

Cédric Damioli
Ametys Product Manager
From: Toulouse
Registered: 10/08/2010
Posts: 323

Re: Configurer l'accès limité avec CAS et LDAP

Bonjour,

Excellente remarque !
Alors je vais essayer d'être clair :
Il y a trois concepts mis en oeuvre :
- La liste des utilisateurs du back (chez vous c'est LDAP), qui se configure dans le runtime.xml du CMS pour le point d'extension UsersManager
- La liste des utilisateurs du front, qui se configure de la même façon dans le runtime.xml du site. Par défaut, cette liste est restreinte à un seul utilisateur, qui s'appelle anonymous (via l'extension org.ametys.runtime.plugins.core.user.Static), d'où l'erreur que vous rencontrez.
- La liste des utilisateurs du front vus par le back, qui se configure dans le CMS dans le runtime.xml via le point d'extension org.ametys.runtime.user.UsersManager.FO
Par défaut, ce point d'extension part du principe que la liste est le même dans le back que dans le front, ce qui est votre cas.

Dans votre cas, il faut donc utiliser dans le front le UsersManager LDAP et le configurer de la même manière que dans le back.
N'oubliez pas également de configurer le CredentialsProvider avec CAS.

Offline

#3 20/07/2011 09:03:46

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

Et si vous ouvrez un ticket sur le JIRA d'amélioration (en anglais) pour que la liste des utilisateurs du site soit automatiquement la même que la liste des utilisateurs du site vu par le CMS
... je voterai pour vous !


Raphael Franchet
Expert Ametys

Offline

#4 20/07/2011 11:38:41

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

Bonjour,
Pour le Jira, je veux bien, à 2 conditions  wink
- que je comprenne bien le focntionnement
- que cela fonctionne, car pour le moment, cela plante encore.

J'ai bien suivi le post de Cedric.
J'ai configuré le BACK comme suit :

<org.ametys.runtime.user.UsersManager.FO>org.ametys.web.frontoffice.DefaultFrontOfficeUsersMan
ager</org.ametys.runtime.user.UsersManager.FO></extensions>

Une question : cette extension ne se configure pas ? Elle fournit au FRONT la liste des  utilisateurs pour qui ont a lilmité l'accès ?

et le FRONT

<org.ametys.runtime.authentication.CredentialsProvider>org.ametys.runtime.plugins.core.authentica
tion.CAS</org.ametys.runtime.authentication.CredentialsProvider><org.ametys.runtime.user.UsersManager
>org.ametys.runtime.plugins.core.Ldap</org.ametys.runtime.user.UsersManager></extensions>
</runtime>

Mais j'ai cette erreur sur le FRONT sur ma zone que j'ai limitée :

ADMINISTRATION - Authorization required

org.ametys.runtime.authentication.AuthorizationRequiredException
Hide details
org.ametys.runtime.authentication.AuthorizationRequiredException at org.ametys.runtime.authentication.BasicCredentialsProvider.notAllowed(BasicCredentialsProvider.java:132) at org.ametys.runtime.workspaces.admin.authentication.AdminAuthenticateAction._checkAuth(AdminAuthenticateAction.java:114) at org.ametys.runtime.workspaces.admin.authentication.AdminAuthenticateAction.act(AdminAuthenticateAction.java:84) at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:120)

Merci
Patrick

Offline

#5 20/07/2011 12:08:57

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

Une question : cette extension ne se configure pas ? Elle fournit au FRONT la liste des  utilisateurs pour qui ont a lilmité l'accès ?

Non, elle indique au back que le front utilise les mêmes utilisateurs que lui.
Le back a besoin de savoir cela pour proposer les utilisateurs dans les accès limités.
Et du coup, aucun paramètre n'est nécessaire (ce sont ceux du usermanager du back)


Raphael Franchet
Expert Ametys

Offline

#6 20/07/2011 12:11:14

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

Et pour votre problème.
Quand vous vous connectez au site (à la vue de la stacktrace) j'ai l'impression que c'est à l'administration que vous vous connectez (admin/admin donc) par exemple pq vous avez besoin de paramétrer la conf CAS.
Le acces denied est donc surement pour l'accès à l'administration de l'application SITE.


Raphael Franchet
Expert Ametys

Offline

#7 20/07/2011 13:38:14

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

Non, je vais sur l'adresse , puis sur zone-reserve (sur laquelle j'ai limité l'accès)
je suis redirigé vers mon serveur cas :

Je m'identifie, puis j'obtiens l'erreur org.ametys.runtime.authentication.AccessDeniedException
sur l'adresse

le log cms :

2011-07-20 13:32:55,807 ERROR [org.ametys.runtime.plugins.core.authentication.UsersManagerAuthentication] UsersManager cannot authenticate
2011-07-20 13:32:55,807 ERROR [sitemap.handled-errors]
org.ametys.runtime.authentication.AccessDeniedException
    at org.ametys.runtime.authentication.AuthenticateAction.act(AuthenticateAction.java:83)

Pour aller sur l'interface d'administration, je dois utiliser l'url
avec le code admin/.....

Patrick

Offline

#8 20/07/2011 14:48:14

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

oui en effet, mais parfois, quand une configuration est manquante, quelle que soit l'adresse demandée vous êtes redirigé vers l'administration.

je dis cela car dans la trace que vous donnez plus haut il y a ceci :

org.ametys.runtime.authentication.BasicCredentialsProvider.notAllowed(BasicCredentialsProvider.java:132) at org.ametys.runtime.workspaces.admin.authentication.AdminAuthenticateAction._checkAuth(AdminAuthenticateAction.java:114) at 

qui est la trace d'une connexion à l'administration...

est-ce que vous arrivez à vous connecter à l'administration ?


Raphael Franchet
Expert Ametys

Offline

#9 20/07/2011 15:07:31

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

Oui, je vais sur l'url
avec le code admin/..... et j'obtiens bien l'interface d'administration.
Ne serait-ce pas un pb de config apache-tomcat ??
Patrick

Offline

#10 20/07/2011 15:41:52

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

Je viens de tracer le trafic entre le FO et le CMS lors de l'accès à la page à accès limité :

requete site-test FO (195.221.244.67) vers cms-test  (195.221.244.68)

      4 0.003425    195.221.244.67        195.221.244.68        HTTP     GET /cms/generate/intratest/
fr/zone-reserve.html?_contextPath=&_baseServerPath=http://intratest.univ-lemans.fr&_initialRequest=%2
Ffr%2Fzone-reserve.html HTTP/1.1

reponse :

HTTP/1.1 401 Non-Autorisé
Server: Apache-Coyote/1.1
X-Cocoon-Version: 2.1.11
WWW-Authenticate: BASIC realm="null"
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Wed, 20 Jul 2011 12:58:45 GMT

1fb6

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-stri
ct.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html;
charset=UTF-8" /><meta content="IE=8" http-equiv="X-UA-Compatible" /><title>ADMINISTRATION - Authoriz
ation required</title><link type="text/css" href="/cms/kernel/resources/css/error/error.css" rel="sty
lesheet" /><link type="text/css" href="/cms/kernel/resources/css/homepage/view.css" rel="stylesheet"
/><link href="/cms/kernel/resources/img/runtime_favico.gif" type="image/gif" rel="icon" /><link href=
"/cms/kernel/resources/img/runtime_favico.ico" type="image/x-icon" rel="shortcut icon" /><!--[if lt I
E 7]>
             .....

Cela semble confirmer votre hypothèse de pb de config, mais coté CMS ???
Patrick

Offline

#11 20/07/2011 15:51:42

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

quelle est l'url de votre CMS ? http://cms-test:8080/cms ?
j'ai l'impression que c'est mal configuré en effet...
est-ce que vous avez des apache devant l'un ou l'autre ? qui pourrait intercepter certaines requêtes ?
coté site, l'url du cms est-elle bien configurée ?

les pages non-limitées fonctionnent bien ?


Raphael Franchet
Expert Ametys

Offline

#12 20/07/2011 15:58:54

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

J'ai un apache devant les 2.
url CMS :
fonctionne également.

Coté site (FO) : url CMS

Les pages non limitées fonctionnement bien.
Config apache du cms :

NameVirtualHost *:80
<VirtualHost *:80>s_cms.conf
        # Autorisation locale de proxification
        <Proxy
            Order deny,allow
            Allow from all
        </Proxy>

        # Racine des documents statiques du CMS
        DocumentRoot /usr/local/tomcat/webapps/cms

        <Directory "/usr/local/tomcat/webapps/cms">
            Order allow,deny
            Allow from all
        </Directory>

        ServerName cms-test.univ-lemans.fr
        UseCanonicalName On
        AddDefaultCharset     UTF-8

        RewriteEngine On
        ProxyRequests Off

        RewriteRule ^(/.*i18n)$                                  $1      [P,L]
        RewriteRule  ^/plugins/([a-zA-Z0-9]*)/resources/(.*)$    /plugins/$1/resources/$2              [L]
        RewriteRule  ^/kernel/resources/(.*)$                    /kernel/resources/$1                  [L]
        RewriteRule  ^/_([a-zA-Z0-9]*)/resources/(.*)$           /workspaces/$1/resources/$2           [L]
        RewriteRule  ^/resources/(.*)$                           /workspaces/cms/resources/$1          [L]

        RewriteRule        ^(/.*)$  $1 [P,L]
        ProxyPassReverse   /       
</VirtualHost>

Patrick

Last edited by pdelage (20/07/2011 16:08:36)

Offline

#13 20/07/2011 16:21:24

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

les pages non-limitées fonctionnent bien ?

jusqu'ici on parle des pages à accès limitées.
est-ce que sur ce site, une page normale "publique" fonctionne normalement ?

(je cherche à voir si le site est configuré correctement, ou si le pb bien de la limitation d'accès)


Raphael Franchet
Expert Ametys

Offline

#14 20/07/2011 16:32:05

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

Oui, les pages publiques fonctionnent bien.  (page d'accueuil par ex.)
Seule la page avec limitation d'accès pose problème.
Dès je rend publique la page zone-reserve", j'y accède sans problème.
Vous pouvez tester sur l'url
Patrick

Last edited by pdelage (20/07/2011 17:17:08)

Offline

#15 21/07/2011 09:28:46

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

Ok, donc c'est vraiment la conf d'authentification qui doit poser problème.
Est-ce que vous pouvez nous coller votre WEB-INF/param/runtime.xml du SITE et celui du CMS ?


Raphael Franchet
Expert Ametys

Offline

#16 21/07/2011 09:39:57

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

Bonjour,
Voici les éléments de ma config sur

Merci
Patrick

Offline

#17 21/07/2011 09:55:31

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

Est-ce que le CMS et le SITE sont sur la même machine ?
Est-il possible que la machine SITE n'est pas accès au LDAP par le réseau ?
C'est simple à vérifier, dans l'admin du site vous allez dans l'icone "Utilisateur" et vous lancez une recherche
---
Si ça ne vient pas de là, il faudrait vider les logs, faire une tentative et regarder les logs CMS et BACK générés par cette tentative


Raphael Franchet
Expert Ametys

Offline

#18 21/07/2011 10:10:57

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

cms-test et site-test sont 2 machines différentes.
Accès LDAP de site-test OK (j'avais vérifié, et viens de le faire à nouveau ..)

Je vide les logs et les mets sur
Patrick

PS un seul log cms...log sur site.

Offline

#19 21/07/2011 10:19:32

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

ouf ça y est ! J'ai trouvé !

2011-07-21 10:08:57,360 ERROR [org.ametys.runtime.plugins.core.authentication.UsersManagerAuthentication] UsersManager cannot authenticate

Par défaut, le mécanisme d'authentification essaie de valider le mot de passe auprès du UsersManager
Mais dans votre cas, c'est CAS qui s'occupe du mot de passe.

Il faut donc avoir un fichier WEB-INF/param/authentication.xml
Vous pouvez recopier celui du CMS.


Raphael Franchet
Expert Ametys

Offline

#20 21/07/2011 10:55:26

pdelage
Guest
From: Le Mans
Registered: 07/10/2010
Posts: 196
Website

Re: Configurer l'accès limité avec CAS et LDAP

Bravo !!!!!
Je suis nul, j'aurais pu y penser.
Cela fonctionne maintenant.
Merci encore.
Bonnes vacances à tous
Patrick (en congé demain midi) et satisfait

Offline

#21 21/07/2011 10:57:58

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Configurer l'accès limité avec CAS et LDAP

Tant mieux smile
Raphael (en congé demain soir) et satisfait aussi wink


Raphael Franchet
Expert Ametys

Offline

Board footer

Powered by FluxBB