configuration serveur CAS et annuaire LDAP

configuration serveur CAS et annuaire LDAP - Réseaux grand public / SoHo

Marsh Posté le 14-02-2006 à 10:33:29    

Bonjour,
 
Pour le développement de notre projet tutoré, nous avons récemment installé,
séparément, un serveur CAS et avons configuré un annuaire LDAP, le tout sur  
une distribution Fedora Core 4.
Nous voudrions maintenant configurer le serveur CAS et s'authentifier via
l'annuaire LDAP.
Quelqu'un aurait il une idée sur la manière de comment procéder?
Quels sont les fichiers à configurer?
La configuration va t'elle se faire sur les fichiers LDAP?Le serveur CAS?ou  
les 2?
 
Nous vous en serions reconnaissants.
Merci d'avance

Reply

Marsh Posté le 14-02-2006 à 10:33:29   

Reply

Marsh Posté le 14-02-2006 à 10:44:34    

c'est quoi un serveur CAS ?

Reply

Marsh Posté le 14-02-2006 à 11:02:58    

(j'espère être dans la bonne catégorie) Si j'ai bien compris  :D  c'est un serveur qui sert pour l'authentification d'applications. Il évite de s'authentifier à chaque fois qu'on accède à une appli en mettant en place un système de ticket.

Reply

Marsh Posté le 14-02-2006 à 11:09:07    

comme kerberos ?

Reply

Marsh Posté le 15-02-2006 à 09:01:46    

oui je crois, il y a une notion de tickets, un peu à la manière kerberos (même si je ne sais pas vraiment ce que c'est).
 
J'ai choppé quelques infos ici: http://www.esup-portail.org/consor [...] index.html
Mais je ne trouve pas d'infos précises sur la configuration de ce serveur, les fichiers à modifier quoi.

Reply

Marsh Posté le 15-02-2006 à 09:13:32    

Oui, CAS est un systéme de Single Sign On : on s'authentifie sur un site web, et on est alors authentifier sur tous les sites web qui utilisent le même serveur CAS.
 
ça me semble pourtant bien détaillé ici pour l'install : http://www.esup-portail.org/consor [...] stall.html
Qu'est ce qui te semble pas clair là dedans

Reply

Marsh Posté le 07-03-2006 à 10:13:16    

bonjour, je relance (je n'avais pas vraiment essayé jusqu'a maintenant)
 
J'avais déjà installé CAS. C'est pourquoi, à partir de ton lien, j'ai commencé à l'étape "Installation de la classe d'authentification locale". Et je bloque déjà sur le point suivant  :( , à savoir la construction du fichier build.sh : je ne sais pas où placer ce fichier.  
 
Dans la suite de la page, je pense aussi qu'il y aura des problèmes au niveau des chemins, du style où placer tel fichier. Si tu pouvais détailler (si tu connais)  :)  
 
merci


Message édité par welcominh le 07-03-2006 à 14:58:34

---------------
Direct-download.com, le moteur de recherche pour Mega
Reply

Marsh Posté le 10-03-2006 à 17:28:33    

En fait la page que je t'ai filé ne semble pas bonne à partir de la version 3 de CAS.
D'après le INSTALL.txt contenu dans le package, plus besoin de créer un build.sh pour compiler le le servlet. Suffit de prendre le cas.war qui se trouve dans le répertoire target, le copier dans le répertoire webapps de Tomcat, puis redémarrer Tomcat pour déployer l'appli.
Jette un oeil dans le README pour vérifier qe tu as bien installer les classes don dépend CAS, ainsi que les bonnes versions de Java et Tomcat.
 
Une fois l'appli déployée, prend un navigateur, va sur http://localhost:8080/cas/login et si tu as autre chose qu'une erreur 404, ça veut surement dire que CAS est installé correctement.
Reste ensuite à le configurer pour utiliser la bonne source pour l'authentification, mais ça je me suis pas encore penshé dessus.

Reply

Marsh Posté le 21-03-2006 à 21:41:19    

Ca va ca marche maintenant  :)  On utilise l'adresse https://192.168.0.1:8443/cas/login
Le login a la fin de l'adresse est facultatif. Apparemment, c'est la page par défaut.  
 
Par contre, la on j'essaie de faire une ptite appli web a CAS-éifier. Mais je suis vraiment bloqué. Un camarade m'a filé un script qu'il a chopé sur le net (probablement le même site) mais je n'arrive pas à le faire marcher
 

Code :
  1. <?php
  2. /* ------ exemple de client CAS écrit en PHP --------*/
  3. // localisation du serveur CAS
  4.                                        //c'est le seul truc que j'ai changé, le reste je comprends pas trop...
  5. define('CAS_BASE','https://192.168.0.1:8443');
  6. // propre URL
  7. $service = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
  8. /** Cette simple fonction réalise l’authentification CAS.
  9. @return le login de l’utilisateur authentifié, ou FALSE.*/
  10. function authenticate() {
  11. global $service ;
  12. // récupération du ticket (retour du serveur CAS)
  13.                                              //apparemment, il faut entrer le ticket dans l'URL ???
  14.                                              //remplir ce champs avec quoi avec des données de mon LDAP?
  15.                                              //la variable service me semble un peu similaire, donc je sais pas
  16.                                              //quoi remplir non plus
  17. if (!isset($_GET['ticket']))
  18. {
  19.  // pas de ticket : on redirige le navigateur web vers le serveur CAS
  20.  header('Location: ' . CAS_BASE . '/login?service=' . $service));
  21.  exit() ;
  22. }
  23. // un ticket a été transmis, on essaie de le valider auprès du serveur CAS
  24. $fpage = fopen (CAS_BASE . '/serviceValidate?service='
  25. . preg_replace('/&/','%26',$service) . '&ticket=' . $ticket, 'r');
  26. if ($fpage)
  27. {
  28.  while (!feof ($fpage)) { $page .= fgets ($fpage, 1024); }
  29.  // analyse de la réponse du serveur CAS
  30.  if (preg_match('|<cas:authenticationSuccess>.*</cas:authenticationSuccess>|mis',$page))
  31.  {
  32.   if(preg_match('|<cas:user>(.*)</cas:user>|',$page,$match))
  33.   {
  34.    return($match[1]);
  35.   }
  36.  }
  37. }
  38. // problème de validation
  39. return FALSE;
  40. }
  41. $login = authenticate();
  42. if ($login === FALSE )
  43. {
  44. echo 'Requête non authentifiée (<a href="'.$service.'"><b>Recommencer</b></a> ).';
  45. exit() ;
  46. }
  47. // à ce point, l’utilisateur est authentifié
  48. echo 'Utilisateur connecté : ' . $login . '(<a href="' . CAS_BASE . '/logout"><b>déconnexion</b></a> )';
  49. ?>


Message édité par welcominh le 21-03-2006 à 21:46:50
Reply

Marsh Posté le 28-11-2007 à 15:44:34    

Hello, j'essaie également de faire marcher un serveur CAS avec un LDAP (plus exactement un Active Directory), mais je n'arrive pas à faire le BIND.
 
Première question : est-ce que je peux utiliser le war de démo fourni et modifier les fichiers de config ou dois-je me faire un projet Eclipse et tout recompiler ?
 
Deuxième question : j'essaie de configurer un LDAP en authentification generic  

Code :
  1. <bean id="contextSource" class="org.jasig.cas.adaptors.ldap.util.AuthenticatedLdapContextSource">
  2. <property name="urls">
  3.   <list>
  4.    <value>ldap://yourdc.yourdomain.edu/</value>
  5.   </list>
  6. </property>
  7. <property name="userName" value="{cn=bind_user_goes_here,cn=Users,dc=yourdomain,dc=edu}"/>
  8. <property name="password" value="{bind_user_password_goes_here}"/>
  9. <property name="baseEnvironmentProperties">
  10.   <map>
  11.    <entry>
  12.      <key>
  13.       <value>java.naming.security.authentication</value>
  14.      </key>
  15.      <value>generic</value>
  16.    </entry>
  17.   </map>
  18. </property>
  19. </bean>


 
Problème ça plante en me disant que l'AuthenticationHandler ne la gère pas, y a-t-il un moyen de le gérer ?


Message édité par lapin21 le 28-11-2007 à 15:45:46
Reply

Marsh Posté le 28-11-2007 à 15:44:34   

Reply

Marsh Posté le 29-11-2007 à 17:19:59    

Bon j'ai trouvé, en fait mon authentification simple suffisait, il ne fallait pas mettre les accolades pour le user et le password du bind....

Reply

Marsh Posté le 13-02-2008 à 11:32:56    

Bonjour,
 
J'ai le même problème d'utilisation d'Active Directory avec CAS. Peux-tu me dire comment tu as paramétré ce que j'imagine être le fichier securityContext.xml. Si tu (ou quelqu'un d'autre sur le forum) pouvais me donner un peu plus de détails sur la manière dont tu t'y es pris, ça serait super sympa.
 
Merci.

Reply

Marsh Posté le 28-09-2008 à 17:32:32    

Bonjour,
 
Je cherche actuellement à déployer un serveur CAS sur une plate-forme Windows serveur 2003.  
J'ai installé mon JDK et mon JRE , puis Tomcat 6.
J'ai déployé le serveur :  "cas-server-3.3-release"
J'ai bien ma page par défaut pour tester le fonctionnement du serveur . A savoir le serveur m'authentifie lorsque le nom d'utilisateur et son mot de passe son identique.
A présent je voudrais que mon serveur Cas s'appuie sur mon active directory pour authentifier mes Users.
J'ai donc modifié le fichier POM.XML qui se trouve dans :"/webapps/cas-web/META-INF/maven/org.jasig.cas/cas-server-webapp"
J'ai ajouté ceci :  
1        <dependency>
2             <groupId>${project.groupId}</groupId>
3             <artifactId>cas-server-support-ldap</artifactId>
4             <version>${project.version}</version>
5        </dependency>
 
Par la suite j'ai modifié mon fichier "deployerConfigContext.xml" qui se trouve ici "/webapps/cas-web/WEB-INF/"
 
   1. <bean id="contextSource" class="org.jasig.cas.adaptors.ldap.util.AuthenticatedLdapContextSource">
   2. <property name="urls">
   3.   <list>
   4.    <value>ldap://toto.lan/</value>
   5.   </list>
   6. </property>
   7. <property name="userName" value="{cn=bind_user_goes_here,cn=Users,dc=toto,dc=lan}"/>
   8. <property name="password" value="{bind_user_password_goes_here}"/>
   9. <property name="baseEnvironmentProperties">
  10.   <map>
  11.    <entry>
  12.      <key>
  13.       <value>java.naming.security.authentication</value>
  14.      </key>
  15.      <value>generic</value>
  16.    </entry>
  17.   </map>
  18. </property>
  19. </bean>
 
 
 
Puis j'ai remplacé le "SimpleTestUsernamePasswordAuthenticationHandler" par ceci :
 
1               <bean class="org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler">
2                    <property name="filter" value="sAMAccountName=%u" />
3                    <property name="searchBase" value="OU=mes_user,OU=mon_entreprise,DC=toto,DC=com,DC=lan" />
4                    <property name="contextSource" ref="contextSource" />
5                    <property name="ignorePartialResultException" value="yes" /> <!-- fix because of how AD returns results -->
6                </bean>
 
 
 
Bilan quand je démarre à nouveau Tomcat j'ai ceci :
 
Etat HTTP 404 -
 
type Rapport d''état
 
message
 
description La ressource demandée () n'est pas disponible.
 
Apache Tomcat/6.0.18

 
Quelqu'un peut-il m'expliquer ou je me plante SVP ? :hello:


Message édité par little_minx le 28-09-2008 à 17:33:05
Reply

Marsh Posté le 28-09-2008 à 18:06:47    

mauvaise section pour un windows 2003....


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 28-09-2008 à 21:31:04    

OUPS un Modo peut déplacer SVP ?


Message édité par little_minx le 28-09-2008 à 21:33:24
Reply

Marsh Posté le 28-09-2008 à 21:42:17    

Ce sujet a été déplacé de la catégorie OS Alternatifs vers la categorie Réseaux grand public / SoHo par Black_lord


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 06-03-2009 à 15:11:16    

bonjour,
 
dans ton fichier pom.xml tu vas ajouter:
<dependency>
   <groupId>org.jasig.cas</groupId>
   <artifactId>cas-server-support-ldap</artifactId>
   <version>3.3.1</version>
</dependency>
 
et puis dans le fichier deployerConfigContext.xml:
 
<bean id="contextSource" class="org.jasig.cas.adaptors.ldap.util.AuthenticatedLdapContextSource">
 <property name="anonymousReadOnly" value="false" />
 <property name="pooled" value="true"/>
 <property name="urls">
  <list>
   <value>ldaps://ldap.abc.fr:389/</value>
   
  </list>
 </property>
 <property name="userDn" value="cn=admin,dc=abc,dc=fr"/>
 <property name="password" value="pass"/>
 <property name="baseEnvironmentProperties">
  <map>
   <!--entry>
            <key><value>java.naming.security.protocol</value></key>
            <value>ssl</value>
    </entry-->
   <entry>
    <key>
     <value>java.naming.security.authentication</value>
    </key>
    <value>simple</value>
   </entry>
  </map>
 </property>
</bean>
 
<bean
     class="org.jasig.cas.adaptors.ldap.BindLdapAuthenticationHandler">
     <property name="filter" value="uid=%u" />
     <property name="searchBase" value="ou=moodle,dc=abc,dc=fr" />  
     <property
      name="contextSource"
      ref="contextSource" />
    </bean>
 
ça va marcher.
 
n'oublies pas ajouter cas-server-support-ldap-xxxx.jar dans cas\WEB-INF\lib


Message édité par haitrieu le 06-03-2009 à 15:13:04
Reply

Marsh Posté le 22-03-2009 à 17:31:44    

salut tu peux me dire où récupérer le cas-server-support-ldap-xxx.jar
te remercie d'avance pour ta réponse
 

Reply

Marsh Posté le 18-05-2009 à 21:04:23    

Bonjour,  
cela fait plus de 2 jours que j'essaye de configurer le serveur CAS avec Active Directory  
j'ai lu ce post ainsi que ces documentations "http://www.ja-sig.org/wiki/display/CASUM/LDAP" et "https://shibsp.ntu.ac.uk/confluence/display/Shibboleth/Install+and+Configure+CAS+Server+(Windows)", mais je n'arrive toujours pas à le faire fonctionner.
J'ai pourtant mis le fichier "cas-server-support-ldap-3.3.2.jar" dans "C:\tomcat\webapps\cas\WEB-INF\lib" et fait ce que haitrieu a écrit, mais rien a faire.
Quelqu'un pourrait-il m'expliquer les étapes à suivre ou me donner un lien qui explique comment faire ?
Le fichier "deployerConfigContext.xml" faut-il supprimer tout ce qu'il y a entre <beans> et </beans> avant de mettre ce qu'à écrit haitrieu ou faut-il  juste rajouter à la suite ?  
Merci d'avance


Message édité par derzy971 le 22-05-2009 à 17:02:41
Reply

Marsh Posté le 27-03-2010 à 21:00:09    

Bonsoir ,  
j'ai le même problème . au fur et a mesure j'ai réussi a intégrer cas-3.3.5 et apache 6.0   .  
maintenant j'essaye de donner aux utilisateurs des mots de passe en utilisant ldap .  
 ca serait génial si vous m'aider dans cela .  
                                                              Merci d'avance .

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed