[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/usr/share/se3/scripts/ -> group_mapping.sh (source)

   1  #!/bin/bash
   2  
   3  #
   4  ##### Script de mapping de groupe #####
   5  #
   6  # Auteur: Olivier lacroix
   7  #
   8  ## $Id: group_mapping.sh 7061 2012-04-02 09:22:45Z dbo $ ##
   9  #
  10  # /usr/share/se3/scripts/group_mapping.sh
  11  
  12  
  13  if [ "$1" = "--help" -o "$1" = "-h" -o $# -eq 0 -o $# -gt 3 ]; then
  14      echo "Script permettant de mapper un groupe, lance à partir de l'interface Annuaire"
  15      echo ""
  16      echo "Usage : Avec 3 parametres : le nom du groupe à mapper (Posix Group), le nom nt  et la description "
  17      echo "        Avec 1 ou 2 parametres : les autre sont recuperes dans ldap"
  18      echo " /usr/share/se3/scripts/group_mapping.sh Classe_2nde1"
  19      exit
  20  fi
  21  
  22  WWWPATH="/var/www"
  23  
  24  ## recuperation des variables necessaires pour interoger mysql ###
  25  if [ -e $WWWPATH/se3/includes/config.inc.php ]; then
  26      dbhost=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbhost=" | cut -d = -f 2 | cut -d \" -f 2`
  27      dbname=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbname=" | cut    -d = -f 2 | cut -d \" -f 2`
  28       dbuser=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbuser=" | cut -d = -f 2 | cut -d \" -f 2`
  29       dbpass=`cat $WWWPATH/se3/includes/config.inc.php | grep "dbpass=" | cut -d = -f 2 | cut -d \" -f 2`
  30  else
  31      ERREUR "Fichier de configuration inaccessible, le script ne peut se poursuivre."
  32      
  33  fi
  34  
  35      ### recuperation des parametres actuels de l'annuaire dans la base ####
  36      BASEDN=`echo "SELECT value FROM params WHERE name=\"ldap_base_dn\"" | mysql -h $dbhost $dbname -u $dbuser -p$dbpass -N`
  37  
  38      TST_GRP_POSIX=$(ldapsearch -xLLL "cn=$1" | grep -i posixGroup)
  39  #echo "resultat recherche LDAP : $TST_GRP_POSIX"
  40  if [ -z "$TST_GRP_POSIX" ]; then
  41    echo "Groupe absent de l'annuaire LDAP ou de type \"Group of name\" : le mapping de groupe n'est pas possible avec ces derniers."
  42  else
  43    TST_MAPPING=$(ldapsearch -xLLL "cn=$1" | grep -i sambaGroupMapping)
  44    if [ -z "$TST_MAPPING" ]; then
  45      if [ -z "$2" ]; then
  46          ntgroup=$1
  47      else
  48          ntgroup=$2
  49      fi
  50      if [ -z "$3" ]; then
  51          description=$(ldapsearch -xLLL "cn=$1" | grep description | sed "s/description: //")
  52      else
  53          description="$3"
  54      fi
  55     
  56      net groupmap add ntgroup=$ntgroup unixgroup=$1 type=domain comment="$description" 1>/dev/null
  57      echo "Mapping du groupe $1 effectue"
  58    else
  59      echo "Le groupe $1 est déjà mappe dans l'annuaire"
  60    fi
  61  fi


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1