Gosa

De Manteniment IES Ebre
Dreceres ràpides: navegació, cerca

TODO: Icona

http://gosa.iesebre.com

Gosa és l'aplicació web que utilitzem al centre per a la gestió d'usuaris i altres recursos del centre. És important tenir en compte que estem utilitzant un Gosa amb un plugin específic per a la gestió d'usuaris d'un centre de secundaria (highschoolusers). Aquest plugin s'ha desenvolupat a mida per al nostre centre.

Contingut

Desenvolupament

S'esta desenvolupant (--Sergi 11:07, 13 març 2011 (UTC)) un plugin per als centres. La feina s'està fent a l'ordinador del coordinador:

http://192.168.0.102/gosa

Hi ha una carpeta de desnvolupament i una carpeta d'explotació al mateix ordinador. El desenvolupament es realitza a:

/home/sergi/development/highschoolusers
  ./usr/share/gosa/plugins/admin/HighSchoolUsers
  ./usr/share/gosa/plugins/personal/highschoolgeneric/
  ./usr/share/gosa/plugins/personal/highschoolposix/

És a dir 3 nous plugin, un per la gestió d'usuaris i després dos per canviar els Tabs generic i Posix dels usuaris.

Es tracta d'una copia de treball de subversion. El codi font esta versionat i es consultable a:

http://www.iesebre.com/subversion/projectes/highschoolusers

Treballem amb un a:Makefile que és el que gestiona l'instal·lació del projecte cda cop que es fa un canvi a l'entorn de desenvolupament.

~/development/highschoolusers$ sudo make install

Per aplicar canvis de gosa també podem fer:

~/development/highschoolusers$ sudo make updatea

La carpeta d'explotació és la versió 2.7 de gosa. Gosa 2.7 es troba al lloc estàndard:

/usr/share/gosa

El que havia abans es troba a:

/usr/share/gosa26

S'estan passant els canvis que es van fer a 2.6 de qualsevol manera a un plugin, de forma que es pugui actualitzar la versió de gosa sense perdre les adaptacions pròpies.

S'utilitza una copia de la base de dades Ldap real de l'Institut per fer més reals i senzilles les proves.

El plugin és un nou mòdul de gestió d'usuaris adaptat a les necessitats d'un centre de secundaria (HighSchoolUsers). El trobem a:

/usr/share/gosa/plugins/admin/HighSchoolUsers/

Adreça

http://gosa.iesebre.com

Es troba al servidor d'alumnat 192.168.0.8. gosa.iesebre.com és

  • Des de fora del centre: una redirecció a:
  • De de dins és resol com a DNS amb la IP 192.168.0.8

Adreçes internes:

http://192.168.0.8
http://192.168.0.8/gosa
http://192.168.0.8:8081
http://192.168.0.8:8081/gosa

També funcionen les adreçes:

http://www.iesebre.com/gosa
http://www.iesebre.com/users
http://www.iesebre.com/usuaris

Gestió d'usuaris

Substituts i proves

És possible crear un camp userPassword extra (amb Apache Directory Studio és crear un nou atribut amb el botó dret). Aleshores l'usuari pot entrar amb qualsevol de les dues paraules de pas. És útil per fer proves amb un usuari.

Al canviar la paraula de pas a GOsa s'esborren totes les existents i es posa una única de nova.

TODO: Desenvolupar una opció a GOsa que permeti crear aquesta segona paraula de pas.

Accions

Classe managment: /usr/share/gosa/include/class_managment.inc

Les classes que hereten de management tenen a la seva disposició la funció:

registerAction

Per exemple /usr/share/gosa/plugins/admin/users/class_userManagment.inc al constructor registra

$this->registerAction("password", "changePassword");

Hi ha una sèrie d'accions que estan registrades per defecte:

   // Register default actions
   $this->registerAction("new",    "newEntry");
   $this->registerAction("edit",   "editEntry");
   $this->registerAction("apply",  "applyChanges");
   $this->registerAction("save",   "saveChanges");
   $this->registerAction("cancel", "cancelEdit");
   $this->registerAction("cancelDelete", "cancelEdit");
   $this->registerAction("remove", "removeEntryRequested");
   $this->registerAction("removeConfirmed", "removeEntryConfirmed");

   $this->registerAction("copy",   "copyPasteHandler");
   $this->registerAction("cut",    "copyPasteHandler");
   $this->registerAction("paste",  "copyPasteHandler");

   $this->registerAction("snapshot",    "createSnapshotDialog");
   $this->registerAction("restore",     "restoreSnapshotDialog");
   $this->registerAction("saveSnapshot","saveSnapshot");
   $this->registerAction("restoreSnapshot","restoreSnapshot");
   $this->registerAction("cancelSnapshot","closeDialogs");

RegisterAction l'únic que fa és mantenir el vector d'accions:

function registerAction($action,$target)
  {
    $this->actions[$action] = $target;
  }

El vector action és un array associatiu:

"Nom acció" --> "nom funció"

La funció s'ha d'implementar a la classe.

La funció execute de la classe té una funció (handleActions) que controla quina acció s'ha de dur a terme

   $str = $this->handleActions($this->detectPostActions());

La funció detectPostActions és la hem d'implementar indicant quines accions es poden dur a terme:

// Inject user actions 
 function detectPostActions()
 {
   $action = management::detectPostActions();
   if(isset($_POST['template_continue'])) $action['action'] = "templateContinue";
   if(isset($_POST['templatize_continue'])) $action['action'] = "templatizeContinue";
   if(isset($_POST['save_event_dialog'])) $action['action'] = "saveEventDialog";
   if(isset($_POST['abort_event_dialog'])) $action['action'] = "abortEventDialog";
   if(isset($_POST['password_cancel'])){
     $action['action'] = "passwordCancel";
   }elseif((count($this->pwd_change_queue) || isset($_POST['password_finish']))){
     $action['action'] = "passwordQueue";
   }
   return($action);
 }
NOTA: Fixeu-vos que eés crida al detectPostActions del pare.

Desenvolupament

Afegir objectClass

Si afegim objectClasses als objectes LDAP de Gosa (cal modificar la base de dades LDAP i la classe). Aleshores pot donar un missatge amb els objectes que ja existien a la base de dades conforme no tenen extensions vàlides, cal afegir els objectClass a mà per la base de dades.

Usuaris

Usuaris automàtics

El nom d'usuari és:

nomcognom1[1-20]

Si ja existeix un usuari s'afegeix un número fins a 20. Si el nom o el cognom1 són compostos ens quedem amb la primera paraula del nom o cognom compost.

L'aplicació ho fa automàticament

Paraules de pas

  • Es genera una paraula de pas automàticament --> Complicada
  • Es pot recuperar automàticament mitjançant un correu electrònic personal
  • Obligar a canviar la paraula de pas inicial
  • Els usuaris es poden canviar la paraula de pas
  • Mínims de seguretat: mida mínima 6 dígits

S'entrega un paper a l'alumne amb:

Nom i Cognoms de l'alume
DNI
nº alumne assignat :
Usuari: 
Paraula de pas inicial:
Normes d'ús dels recursos TIC:
Correu electrònic del centre: 
Correu electrònic personal: 

Doc còpies: exemple per l'interessat i exemplar per l'Escola. S'ha de firmar i annexar a l'expedient de l'alumne.

Recuperador de paraules de pas

Formulari:

Usuari:
Correu electrònic
  • Al menys cal posar un dels dos camps
  • Si s'ha posat usuari, mirar si existeix, sinó --> error i no continuar
  • Si s'ha posat email, mirar si existeix, sinó --> error i no continuar
  • El email no pot ser el del centre, ha de ser un de personal
  • Comprovar si existeix l'usuari o el email cal fer-ho en una funció--> Poder canviar a LDAP

Contingut del correu

Benvolgut/Benvolguda usuari/usuaria,

Hem rebut una petició de recuperació de paraula de pas per al vostre usuari de l'Institut de l'Ebre.

El vostre nom d'usuari és:

   nom_usuari

Si tu no has demanat aquest recuperació de paraula de pas, aleshores el que has de fer és ignorar aquest correu.
 
Per tal d'escollir una nova paraula de pas aneu a la URL: 

https://www.iesebre.com/gosa/resetpass/numero_aleatori_md5 

Exemple:  https://www.iesebre.com/gosa/resetpass/4M2iUp81zZBTcAupdhjAhQ

Tens 48 hores per tal d'accedir a aquesta pàgina web i canviar la teva paraula de pas.

La petició s'ha realitzat des de la IP: IP

Salutacions,

L'equip TIC de l'Institut de l'Ebre
Institut de l'Ebre: http://wwww.iesebre.com 
  • Missatge: S'ha enviat un correu a [Adreça de correu] amb les instruccions necessàries per tal de recuperar la paraula de pas

Mirar codi del wordpress?:

http://blog.acacha.org/wp-login.php?checkemail=confirm

Departaments

Criteris de noms

Cal evitar els caràcters:

  • Apostrof
  • Sembla ser que tant el GADS com Gosa tenen problemes al utilitzar el caràcter apostrof en una URL. Noms com "Projectes d'Edificació" causen problemes

Estructura buida

Accés des de Internet

http://gosa.iesebre.com

L'accés intern també serveix:

http://gosa.iesebre.com

o

http://192.168.0.8

L'accés es dona través del Encaminador:web i la línia ADSL 7. Ha calgut configurar el NAT del router ADSL per redireccionar el port 8081 a 192.168.0.8:80

Donar d'alta un ordinador al GOsa

Eliminar una máquina del GOsa

Cuando se elimina una máquina del GOsa no basta con eliminar el usuario máquina sino que también hay que eliminar el registro DHCP del servidor que se lo asigna, en este caso el COP

TODO

Millores:

  • Baixes: operació que no elimini usuaris si no que els mogui a la carpeta baixes. Tenir uan carpeta per a baixes d'alumnes i un altre per a baixes de profes.
  • A les altes, comprovar abans que no hi hagui algú similar a baixes.

Urgents:

  • PDF: Mirar correu electronic centre al PDF (encara és calculat).
  • Template Unix: Calcular la home automaticament com a /home/login --Sergi 05:30, 30 juny 2010 (UTC)
  • Posar una mida mínima a la paraula de pas
  • Impedir certes paraules de pas fluixes...

Altres

  • No funcionen alguns camps (externalID internalID) quan es dona d'alta un usuari que no és a partir d'una plantilla ... --Sergi 05:30, 30 juny 2010 (UTC)
  • No funciona calendari per data de naixement... A vegades si a vegades no....
  • Millora possible...Al guardar matrícula també imprimir... el problema és que es pot arribar a imprimir sense haver guardat la paraula de pas!
  • Full matrícula.. Afegir text... si passa quelcom amb el teu usuari el responsable és el propietari de l'usuari... Al final es descarta --Sergi 05:30, 30 juny 2010 (UTC)
  • No funciona la primera pàgina amb Windows o Linux i Acrobat Reader. Si funciona amb altres lectors de PDF.
Problema amb el upgrade del sistema! Sempre hi ha paquets pendents d'actualitzar. Deprecated warnings de PHP?!!.. He tret el repositori de Gosa de sources.list...--Sergi 05:30, 30 juny 2010 (UTC)
  • Comprovar que no hi hagi ningú amb email personal ja existent al crear un usuari des de plantilla?
  • Controls javascipt:
Format del DNI? checkbox indicant si és DNI (sinó ho és no fer comprovació!)
Format Email
Mirar projecte Ivan Segon ASI una eina que ja fa aquest tipus de comprovacions?
La TIS té algun format? és TIS o TSI? És TSI i no he trobat cap algorisme per Internet
  • Afegir el català com idioma --Sergi 05:30, 30 juny 2010 (UTC). Traduir els camps del locale, generar el locale
  • Al formulari de nou alumne, a la plantilla posar el català
  • Crear un rol per als alumnes per defecte! Que pugui canviar la paraula de pas i consultar les seves dades? --Sergi 05:30, 30 juny 2010 (UTC)
  • Compte Unix al template i Samba! --Sergi 05:30, 30 juny 2010 (UTC)
  • Donar d'alta la llista de Departaments --Sergi 05:30, 30 juny 2010 (UTC)
  • Donar d'alta la llista de cicles --Sergi 05:30, 30 juny 2010 (UTC)

IMPORTANT:

  • Indicar de quin cicle és matrícula l'alumne --Sergi 05:30, 30 juny 2010 (UTC)
  • Indicar el curs? --Sergi 05:30, 30 juny 2010 (UTC)

UNIX:

  • Home de l'usuari automàtica. --Sergi 05:30, 30 juny 2010 (UTC)
  • El usuario debe introducir la contraseña en el primer inicio de sesión ???? Forçar canvis de paraules de pas?

Entorno

  • Mirar el tema de perfils...

Samba TODO

Usuaris:

  • Crear usuaris de matrícula --> Secretaria
  • Crear usuaris tècnics TIC
  • Crear usuaris becaris... Que poden fer?

Donar d'alta els professors:

  • Quins canvis ens interessen al formulari d'alta d'usuari? Camps específics dels profes?

MATRíCULA

  • Donar d'alta els grups --> 1 grup per cicle i curs (i tenir en compte desdoblats -> 2 subgrups)

Bugs

  • New User from template: des de la icona de la plantilla no mostra el employeeId (id intern!) --Sergi 17:03, 15 juny 2010 (UTC). En canvi si funciona des de crear alumne nou....
  • No guarda la foto des de GOSA... des de ADS si que ho fa correctament!... --Sergi 17:14, 15 juny 2010 (UTC)
  • No guarda el camp email normal...--> Faltava afegir el camp a l'objecte class-user.inc i al vector attrbs.
  • No es guarda bé el mobile phone... --> Havia un camp a la secció de la organització que el sobreescrivia!!
  • No guarda el email corporatiu!....--> l'estem guardant al camp pager!! He tret camp pager del la part de la organització--> Ara comprova que és un número!

Imprès de matrícula:

  • Pàgina personal S'ha descartat temporalment...
  • Identificador del centre no apareix bé! --Sergi 05:31, 30 juny 2010 (UTC)

aaaaaaaaaaaaaaaaaaaaa


  • No apareixen correctament les dades al tornar a imprimir la matrícula d'un alumne. En alguns casos si he pogut (profes?!) : Solucionat. Es tornen a buscar les dades del usuari a partir del DN. --Sergi 14:22, 4 jul 2010 (UTC)
  • Només apareix bé la nova paraula de pas i part del correu electrònic de l'INS de l'Ebre
  • Al cancel·lar es descarrega un fitxer main.php. Sembla ser que si no passa prou temps entre la impressió i el salvar aleshores dona el problema!!!
  • Modificacions:
  • Alguns camps no es poden modificar (employeeNumber, externalID, etc...). Problema de ACLs?? no. Només eren el employeeNumber i el IrisPersonalUniqueID. El employeeNumber tornia a sortia a les dades de més abaix (dades de la organització) i el externalID estava mal escrit el camp post.
  • No es guarda la home de Unix als nous usuaris (es queda amb /home).

Millores:

  • En negreta el Nom i cognoms i el DNI i la data de matrícula...
  • Validar DNI/NIE, email. Fet però només a javascript i al template (caldria fer-ho en PHP i al modificar una entrada)
  • Guardar la data de matrícula a Ldap i mostra-la a GoSA.
  • La data surt en castellà Solucionat posant com a locale ca_ES.UTF-8
Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
Webs
Altres pàgines
Eines
Edició