Store and monitor login access to your Plone site
Project description
Save any login operation done in your Plone site to an external database and provide a Plone interface for query the database.
Introduction
This Plone add-on is based on z3c.saconfig and SQLAlchemy, and can’t provide any new feature to Plone without a proper configuration.
Keep reading for installation and configuration guide.
How to use
After the installation, any login done in your Plone will save to an external database an entry that store:
user id
a timestamp
Then a new configuration panel can bhe found in the site configuration: “Monitor user logins”.
From this view you can query the database previously populated:
You must limit the search inside a rande of dates, and optionally limiting users to members of a group. Results of the table displayed can be export to a CSV file.
Multiple sites
If your buildout hosts multiple Plone sites, all of them will store data in the database keeping same username on different sites separated.
Installation and configuration
You must configure an access to an external DBMS. The name of the engine used must be plone_logins.
Follow an example based on sqlite (not advised for production environment).
Add collective.login_monitor to your buildout, then provide a SQLAlchemy connection string:
[buildout] ... [instance] ... eggs= ... collective.login_monitor zcml-additional = ... <configure xmlns="http://namespaces.zope.org/zope" xmlns:db="http://namespaces.zope.org/db"> <include package="z3c.saconfig" file="meta.zcml" /> <db:engine name="plone_logins" url="sqlite:///${buildout:directory}/var/filestorage/plone_logins.db" setup="collective.login_monitor.prepare_model.prepare" /> <db:session name="plone_logins" engine="plone_logins" /> </configure>
Credits
Developed with the support of:
All of them supports the PloneGov initiative.
Changelog
1.0.0 (2022-07-15)
major refactoring for python 3.8 and plone 5.2. [reflab]
0.4 (2015-08-21)
Added a contact form, for sending ad email message to all users found by the search [keul]
Added an (hidden) export to JSON feature. 3rd party add-ons can use this for performing operation of search results [keul]
Search view is now “callable” with custom parameters [keul]
Added a negative search filter, for looking for users who didn’t logged in in the given range. Please note that users must still be indexed by the table (a user who never logged in will not be found) [keul]
Added search filter by user id [keul]
Added new information about last login date of the user [keul]
Fixed errors in foreign key definition on schema models [keul]
0.3.1 (2014-11-06)
Fixed date error in that will be raised in some cases [keul]
React to a wider range of problems when database connection is not working [keul]
0.3 (2014-10-28)
Dropped Plone 3 compatibility
Add Full Name and E-mail columns to the search results and CSV output. [davidjb]
Fix selected Group logic on search form. [davidjb]
Clarify description for group selection field. [davidjb]
Minor grammar update for column headings on search page and export. [davidjb]
Change icon URLs to use PNG format rather than deprecated GIF images. [davidjb]
Add exception handling in the event, if no db is configured [cekk]
0.2 (2013-04-18)
First public release
old code totally refactored (removed sqldict for a pure SQLAlchemy approach) [keul]
i18n support [keul]
0.1 (unreleased)
Initial release
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file collective.login_monitor-1.0.0.tar.gz
.
File metadata
- Download URL: collective.login_monitor-1.0.0.tar.gz
- Upload date:
- Size: 23.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45ae73160ed5eced5cae3c7967b8a5278d8464c9ee07625b15f4444edd9f4f0e |
|
MD5 | 5ad4c01b8628cddf03be2696b49b43a0 |
|
BLAKE2b-256 | 8c4772507e494047015e591757c8d44a3069ab9099e6bd11df8a15ee99ca4ffd |