Логирование авторизаций

+31
72.87K
Иллюстрация


Выкладываю версию этого плагина для InstantCMS 2.

Что умеет компонент

При авторизации пользователя, как при вводе логина и пароля, так и при автологине, в таблицу записываются данные:
— текущий ip адрес пользователя;
— UserAgent;
— дата авторизации.

При неудачной авторизации (неверном пароле) логируется попытка входа.

Как настраивается

В настройках можно указать количество записей, которое будет хранить компонент для каждого пользователя, а так же группы пользователей, которые будут видеть эту в кладку у всех пользователей.

Для InstantCMS версии меньшей 2.1.2, чтобы работали пометки о неудачных авторизациях, необходимо внести небольшое изменение (потом оно будет в релизе) в код файла /system/core/user.php
в функции public static function login() строки
  1. $user = $model->getUser();
  2. if (!$user) { return false; }
заменить на
  1. $user = $model->getUser();
  2. // не получили стандартным способом, пробуем через плагины
  3. if(!$user) {
  4. $user = cmsEventsManager::hook('user_auth_error', array('email'=>$email,'password'=>$password));
  5. }
  6. if (empty($user['id'])) { return false; }

Что показывается во вкладке

Список N последних авторизаций, где N — заданное в настройках количество. Показывается браузер пользователя, дата и ip адрес. Неудачные авторизации помечаются.
Название вкладки меняется в админке: Компоненты->Профили пользователей->Вкладки профилей.

Вызывает ли нагрузку?

Нет, не вызывает. Таблица с минимумом полей необходимого типа. Только в момент авторизации записываются данные.


Как установить компонент

1. Перейдите в Панель управления сайтом;
2. Перейдите в раздел Компоненты;
3. Нажмите Установить пакет дополнения;
4. Выберите архив дистрибутива, скаченный по ссылке выше и нажмите Продолжить;
5. На странице «Информация о пакете» нажмите Установить;
6. Заполните реквизиты для доступа по FTP (необходимо для загрузки файлов компонента на сайт);
7. Установка завершена.
+1
Алексей Т Алексей Т 10 лет назад #
Отличная новость+
спасибо!
0
ds_daemon ds_daemon 10 лет назад #
Fuze:
Для InstantCMS версии меньшей 2.1.2

Instantcms 2.1.2?????
Я чего-то не знаю? ))
0
Fuze Fuze 10 лет назад #
Я чего-то не знаю? )
просто внимательно прочитайте пост
+1
ds_daemon ds_daemon 10 лет назад #
Fuze:
В настройках можно указать количество записей, которое будет хранить компонент для каждого пользователя, а так же группы пользователей, которые будут видеть эту в кладку у всех пользователей.

Подскажите, а можно ли сделать как-то так, чтобы каждый юзер видел только свои авторизации? Чтобы нельзя было видеть чужие?
0
Александр Александр 10 лет назад #
на первой по умолчанию не видно вроде всем, только админы. а сорри Вы про свои)) я просто людям и свои не показываю))) извиняюсь
+2
ds_daemon ds_daemon 10 лет назад #
Имелось введу, чтобы каждый юзер видел только в своем профиле вкладку "История авторизаций", а в чужих профилях чтобы вкладки не было ))))
0
Александр Александр 10 лет назад #
да тоже верно конфиденциальность
+3
Fuze Fuze 10 лет назад #
Подскажите, а можно ли сделать как-то так, чтобы каждый юзер видел только свои авторизации? Чтобы нельзя было видеть чужие?
добавлю чуть позже. Сейчас просто выставите доступ для администраторов.
0
R161Net R161Net 10 лет назад #
Отличная вещь!
0
Sergon Sergon 9 лет назад #
Fuze, спасибо за компонент.
Как можно покорректнее сделать строчку во вкладке пользователя? Как можно изменить к примеру на "Авторизации". Ну в смысле покороче чтобы.))
0
Игорь Lu Игорь Lu 8 лет назад #
C версией Instant 2.4.0 не совместим.
0
Александр Р. Александр Р. 8 лет назад #
У меня 2.4 и все работает!
0
jorgovich jorgovich 6 лет назад #
А есть ли что нибудь по логированию, чуть чуть по расширенней, например какой контент добавил и куда, что отредактировал, такую информацию все по каждому пользователю вести?

Еще от автора

InstantCMS 2.17.0 релиз-кандидат
Тестируем релиз-кандидат InstantCMS 2.17.0. От того, как мы с вами выявим баги в новой версии, зависит стабильность релиза.
Как собрать обновление и релиз InstantCMS
Небольшой экскурс в сборку дистрибутива установки и обновления InstantCMS с GitHub.
InstantCMS 2.14.0 release candidate
Здравствуйте Тестируем релиз-кандидат InstantCMS 2.14.0. От того, как мы с вами выявим баги в новой версии, зависит стабильность релиза.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.