log des connexions à la console d'admin

This commit is contained in:
Jérôme Bousquié 2018-12-06 10:56:21 +01:00
parent fd242e2e7b
commit ad352fb619
5 changed files with 83 additions and 8 deletions

View File

@ -397,4 +397,15 @@ function FormateDelta(&$delta) {
return (string)$secs.$unit; return (string)$secs.$unit;
} }
// Fonction LogAdminConnexion(username)
// Insère un enregistrement dans la table de log des connexions à la console d'administration de Winlog
function LogAdminConnexion($username) {
$db = db_connect();
$req = "INSERT INTO log_admin_connexions (username) VALUES ('".$username."')";
db_query($db, $req);
}
?> ?>

View File

@ -17,9 +17,17 @@ switch ($auth_mode) {
break; break;
case "CAS": case "CAS":
$log = false;
if (!isset($_SESSION['username'])) {
// si la session n'est pas déjà démarrée, alors il faudra logguer la première connexion
$log = true;
}
// la session PHP est déjà démarrée par la lib phpCAS. // la session PHP est déjà démarrée par la lib phpCAS.
include('libhome.php'); include('libhome.php');
$username = phpCAS::getUser(); $username = phpCAS::getUser();
if ($log) {
LogAdminConnexion($username);
}
break; break;
case "LDAP": case "LDAP":

View File

@ -1,6 +1,7 @@
<?php <?php
// Formulaire d'authentification simple // Formulaire d'authentification simple
include_once('winlog_admin_conf.php'); include_once('winlog_admin_conf.php');
include_once('connexions.php');
include_once('password.php'); include_once('password.php');
// on sort immédiatement si login.php est appelé hors du auth_mode simple // on sort immédiatement si login.php est appelé hors du auth_mode simple
@ -15,6 +16,7 @@ $password = $_POST['password'];
if (array_key_exists($username, $passwords) && $password == $passwords[$username]) { if (array_key_exists($username, $passwords) && $password == $passwords[$username]) {
session_start(); session_start();
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
LogAdminConnexion($username);
header('Location: '.$winlog_url); header('Location: '.$winlog_url);
exit(); exit();
} }

View File

@ -1,6 +1,7 @@
<?php <?php
// Formulaire d'authentification LDAP // Formulaire d'authentification LDAP
include_once('winlog_admin_conf.php'); include_once('winlog_admin_conf.php');
include_once('connexions.php');
// on sort immédiatement si login_ldap.php est appelé hors du auth_mode LDAP // on sort immédiatement si login_ldap.php est appelé hors du auth_mode LDAP
if ($auth_mode !="LDAP") { if ($auth_mode !="LDAP") {
header('Location: interdit.php'); header('Location: interdit.php');
@ -41,7 +42,8 @@ if($ldapconn) {
if (($s2) && ($password != "") && ($dn != "")) if (($s2) && ($password != "") && ($dn != ""))
{ {
session_start(); session_start();
$_SESSION['username'] = $username; $_SESSION['username'] = $username;
LogAdminConnexion($username);
header('Location: '.$winlog_url); header('Location: '.$winlog_url);
exit(); exit();
} }

View File

@ -3,7 +3,7 @@
-- http://www.phpmyadmin.net -- http://www.phpmyadmin.net
-- --
-- Client : localhost -- Client : localhost
-- Généré le : Ven 30 Novembre 2018 à 10:26 -- Généré le : Jeu 06 Décembre 2018 à 10:51
-- Version du serveur : 5.5.53-0+deb8u1 -- Version du serveur : 5.5.53-0+deb8u1
-- Version de PHP : 5.6.27-0+deb8u1 -- Version de PHP : 5.6.27-0+deb8u1
@ -25,6 +25,9 @@ SET time_zone = "+00:00";
-- --
-- Structure de la table `comptes` -- Structure de la table `comptes`
-- --
-- Création : Mer 05 Décembre 2018 à 09:45
-- Dernière modification : Mer 05 Décembre 2018 à 09:45
--
CREATE TABLE IF NOT EXISTS `comptes` ( CREATE TABLE IF NOT EXISTS `comptes` (
`compte_id` int(11) NOT NULL, `compte_id` int(11) NOT NULL,
@ -32,13 +35,17 @@ CREATE TABLE IF NOT EXISTS `comptes` (
`prenom` varchar(25) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `prenom` varchar(25) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
`nom` varchar(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `nom` varchar(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
`groupe` varchar(25) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL `groupe` varchar(25) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL
) ENGINE=MyISAM AUTO_INCREMENT=928 DEFAULT CHARSET=utf8; ) ENGINE=MyISAM AUTO_INCREMENT=929 DEFAULT CHARSET=utf8;
-- -------------------------------------------------------- -- --------------------------------------------------------
-- --
-- Structure de la table `connexions` -- Structure de la table `connexions`
-- --
-- Création : Ven 25 Novembre 2016 à 12:34
-- Dernière modification : Jeu 06 Décembre 2018 à 09:51
-- Dernière vérification : Mer 31 Octobre 2018 à 10:05
--
CREATE TABLE IF NOT EXISTS `connexions` ( CREATE TABLE IF NOT EXISTS `connexions` (
`con_id` bigint(20) NOT NULL, `con_id` bigint(20) NOT NULL,
@ -49,13 +56,31 @@ CREATE TABLE IF NOT EXISTS `connexions` (
`debut_con` timestamp NULL DEFAULT '0000-00-00 00:00:00', `debut_con` timestamp NULL DEFAULT '0000-00-00 00:00:00',
`close` tinyint(1) NOT NULL DEFAULT '1', `close` tinyint(1) NOT NULL DEFAULT '1',
`archivable` tinyint(1) NOT NULL DEFAULT '0' `archivable` tinyint(1) NOT NULL DEFAULT '0'
) ENGINE=MyISAM AUTO_INCREMENT=193000 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; ) ENGINE=MyISAM AUTO_INCREMENT=195776 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
-- --------------------------------------------------------
--
-- Structure de la table `log_admin_connexions`
--
-- Création : Jeu 06 Décembre 2018 à 08:18
-- Dernière modification : Jeu 06 Décembre 2018 à 09:49
--
CREATE TABLE IF NOT EXISTS `log_admin_connexions` (
`id_admin_con` int(11) NOT NULL,
`username` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='table de logs des connexions à la console d''administration';
-- -------------------------------------------------------- -- --------------------------------------------------------
-- --
-- Structure de la table `machines` -- Structure de la table `machines`
-- --
-- Création : Jeu 29 Novembre 2018 à 10:27
-- Dernière modification : Jeu 06 Décembre 2018 à 09:50
--
CREATE TABLE IF NOT EXISTS `machines` ( CREATE TABLE IF NOT EXISTS `machines` (
`machine_id` varchar(15) COLLATE utf8_unicode_ci NOT NULL, `machine_id` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
@ -80,6 +105,9 @@ CREATE TABLE IF NOT EXISTS `machines` (
-- --
-- Structure de la table `ping` -- Structure de la table `ping`
-- --
-- Création : Ven 30 Novembre 2018 à 13:33
-- Dernière modification : Jeu 06 Décembre 2018 à 09:51
--
CREATE TABLE IF NOT EXISTS `ping` ( CREATE TABLE IF NOT EXISTS `ping` (
`machine_id` varchar(15) COLLATE utf8_unicode_ci NOT NULL, `machine_id` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
@ -91,6 +119,10 @@ CREATE TABLE IF NOT EXISTS `ping` (
-- --
-- Structure de la table `proxy` -- Structure de la table `proxy`
-- --
-- Création : Ven 16 Septembre 2016 à 12:39
-- Dernière modification : Jeu 06 Décembre 2018 à 09:48
-- Dernière vérification : Mer 31 Octobre 2018 à 10:05
--
CREATE TABLE IF NOT EXISTS `proxy` ( CREATE TABLE IF NOT EXISTS `proxy` (
`ip` varchar(30) COLLATE utf8_unicode_ci NOT NULL, `ip` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
@ -105,6 +137,9 @@ CREATE TABLE IF NOT EXISTS `proxy` (
-- --
-- Structure de la table `salles` -- Structure de la table `salles`
-- --
-- Création : Mer 05 Décembre 2018 à 09:18
-- Dernière modification : Mer 05 Décembre 2018 à 09:18
--
CREATE TABLE IF NOT EXISTS `salles` ( CREATE TABLE IF NOT EXISTS `salles` (
`salle_id` varchar(10) COLLATE utf8_unicode_ci NOT NULL `salle_id` varchar(10) COLLATE utf8_unicode_ci NOT NULL
@ -115,6 +150,8 @@ CREATE TABLE IF NOT EXISTS `salles` (
-- --
-- Structure de la table `total_connexions` -- Structure de la table `total_connexions`
-- --
-- Création : Lun 11 Décembre 2017 à 09:05
--
CREATE TABLE IF NOT EXISTS `total_connexions` ( CREATE TABLE IF NOT EXISTS `total_connexions` (
`con_id` bigint(20) NOT NULL, `con_id` bigint(20) NOT NULL,
@ -130,6 +167,10 @@ CREATE TABLE IF NOT EXISTS `total_connexions` (
-- --
-- Structure de la table `wifi` -- Structure de la table `wifi`
-- --
-- Création : Mar 13 Décembre 2016 à 09:02
-- Dernière modification : Jeu 06 Décembre 2018 à 09:49
-- Dernière vérification : Mer 31 Octobre 2018 à 10:05
--
CREATE TABLE IF NOT EXISTS `wifi` ( CREATE TABLE IF NOT EXISTS `wifi` (
`wifi_id` bigint(20) NOT NULL, `wifi_id` bigint(20) NOT NULL,
@ -138,7 +179,7 @@ CREATE TABLE IF NOT EXISTS `wifi` (
`wifi_browser` varchar(160) COLLATE utf8_unicode_ci NOT NULL, `wifi_browser` varchar(160) COLLATE utf8_unicode_ci NOT NULL,
`wifi_deb_conn` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `wifi_deb_conn` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`close` tinyint(4) NOT NULL DEFAULT '0' `close` tinyint(4) NOT NULL DEFAULT '0'
) ENGINE=MyISAM AUTO_INCREMENT=96340 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; ) ENGINE=MyISAM AUTO_INCREMENT=97548 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
-- --
-- Index pour les tables exportées -- Index pour les tables exportées
@ -156,6 +197,12 @@ ALTER TABLE `comptes`
ALTER TABLE `connexions` ALTER TABLE `connexions`
ADD PRIMARY KEY (`con_id`), ADD KEY `user_host` (`username`,`hote`), ADD KEY `close` (`close`), ADD KEY `archivable` (`archivable`); ADD PRIMARY KEY (`con_id`), ADD KEY `user_host` (`username`,`hote`), ADD KEY `close` (`close`), ADD KEY `archivable` (`archivable`);
--
-- Index pour la table `log_admin_connexions`
--
ALTER TABLE `log_admin_connexions`
ADD PRIMARY KEY (`id_admin_con`);
-- --
-- Index pour la table `machines` -- Index pour la table `machines`
-- --
@ -194,17 +241,22 @@ ALTER TABLE `wifi`
-- AUTO_INCREMENT pour la table `comptes` -- AUTO_INCREMENT pour la table `comptes`
-- --
ALTER TABLE `comptes` ALTER TABLE `comptes`
MODIFY `compte_id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=928; MODIFY `compte_id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=929;
-- --
-- AUTO_INCREMENT pour la table `connexions` -- AUTO_INCREMENT pour la table `connexions`
-- --
ALTER TABLE `connexions` ALTER TABLE `connexions`
MODIFY `con_id` bigint(20) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=193000; MODIFY `con_id` bigint(20) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=195776;
--
-- AUTO_INCREMENT pour la table `log_admin_connexions`
--
ALTER TABLE `log_admin_connexions`
MODIFY `id_admin_con` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=2;
-- --
-- AUTO_INCREMENT pour la table `wifi` -- AUTO_INCREMENT pour la table `wifi`
-- --
ALTER TABLE `wifi` ALTER TABLE `wifi`
MODIFY `wifi_id` bigint(20) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=96340; MODIFY `wifi_id` bigint(20) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=97548;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;