Subversion Repositories Applications.annuaire

Rev

Rev 605 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 605 Rev 615
Line 29... Line 29...
29
	protected $nomCookie = "this_is_not_a_good_cookie_name";
29
	protected $nomCookie = "this_is_not_a_good_cookie_name";
Line 30... Line 30...
30
 
30
 
31
	/** Domaine du cookie - lire la doc de set_cookie() */
31
	/** Domaine du cookie - lire la doc de set_cookie() */
Line -... Line 32...
-
 
32
	protected $domaineCookie = null;
-
 
33
 
-
 
34
	/** Si true, passera secure=true à setCookie; le cookie sera reçu en HTTPS seulement */
32
	protected $domaineCookie = null;
35
	protected $cookieSecurise = true;
33
 
36
 
Line 34... Line 37...
34
	/** Bibliothèque de gestion des utilisateurs */
37
	/** Bibliothèque de gestion des utilisateurs */
35
	protected $utilisateur;
38
	protected $utilisateur;
Line 42... Line 45...
42
		}
45
		}
43
		$this->forcerSSL = ($this->config['auth']['forcer_ssl'] == "1");
46
		$this->forcerSSL = ($this->config['auth']['forcer_ssl'] == "1");
44
		$this->dureeJeton = $this->config['auth']['duree_jeton'];
47
		$this->dureeJeton = $this->config['auth']['duree_jeton'];
45
		$this->dureeCookie = $this->config['auth']['duree_cookie'];
48
		$this->dureeCookie = $this->config['auth']['duree_cookie'];
46
		$this->nomCookie = $this->config['auth']['nom_cookie'];
49
		$this->nomCookie = $this->config['auth']['nom_cookie'];
-
 
50
		$this->cookieSecurise = $this->config['auth']['cookie_securise'];
47
		if (! empty($this->config['auth']['domaine_cookie'])) {
51
		if (! empty($this->config['auth']['domaine_cookie'])) {
48
			$this->domaineCookie = $this->config['auth']['domaine_cookie'];
52
			$this->domaineCookie = $this->config['auth']['domaine_cookie'];
49
		}
53
		}
50
		// gestion des utilisateurs @WARNING on utilise un service comme une lib, c'est
54
		// gestion des utilisateurs @WARNING on utilise un service comme une lib, c'est
51
		// mal !!  @TODO séparer service et lib (ou réécrire tout ce foutoir)
55
		// mal !!  @TODO séparer service et lib (ou réécrire tout ce foutoir)
Line 531... Line 535...
531
	 * contenant $valeur
535
	 * contenant $valeur
532
	 * 
536
	 * 
533
	 * @param string $valeur le contenu du cookie (de préférence un jeton JWT)
537
	 * @param string $valeur le contenu du cookie (de préférence un jeton JWT)
534
	 */
538
	 */
535
	protected function creerCookie($valeur) {
539
	protected function creerCookie($valeur) {
536
		setcookie($this->nomCookie, $valeur, time() + $this->dureeCookie, '/', $this->domaineCookie, true);
540
		setcookie($this->nomCookie, $valeur, time() + $this->dureeCookie, '/', $this->domaineCookie, $this->cookieSecurise);
537
	}
541
	}
Line 538... Line 542...
538
 
542
 
539
	/**
543
	/**
540
	 * Renvoie le cookie avec une valeur vide et une date d'expiration dans le
544
	 * Renvoie le cookie avec une valeur vide et une date d'expiration dans le
541
	 * passé, afin que le navigateur le détruise au prochain appel
545
	 * passé, afin que le navigateur le détruise au prochain appel
542
	 * @TODO envisager l'envoi d'un jeton vide plutôt que la suppression du cookie
546
	 * @TODO envisager l'envoi d'un jeton vide plutôt que la suppression du cookie
543
	 * 
547
	 * 
544
	 * @param string $valeur la valeur du cookie, par défaut ""
548
	 * @param string $valeur la valeur du cookie, par défaut ""
545
	 */
549
	 */
546
	protected function detruireCookie() {
550
	protected function detruireCookie() {
547
		setcookie($this->nomCookie, "", -1, '/', $this->domaineCookie, true);
551
		setcookie($this->nomCookie, "", -1, '/', $this->domaineCookie, $this->cookieSecurise);
548
		// mode transition: supprime l'ancien cookie posé sur "www.tela-botanica.org" sans quoi on ne peut plus se déconnecter!
552
		// mode transition: supprime l'ancien cookie posé sur "www.tela-botanica.org" sans quoi on ne peut plus se déconnecter!
549
		// @TODO supprimer au bout d'un moment
553
		// @TODO supprimer au bout d'un moment
550
		setcookie($this->nomCookie, "", -1, '/', null, true);
554
		setcookie($this->nomCookie, "", -1, '/', null, $this->cookieSecurise);
Line 551... Line 555...
551
	}
555
	}
Line 552... Line 556...
552
 
556