Saltar al contenido principal
Los detalles del producto se muestran en inglés. Próximamente traducciones.
User Activity & Login Audit Monitor — A build-to-order Odoo module that logs every login, session, IP, and record-level actio — 1/1Vista previa ilustrativa

A build-to-order Odoo module that logs every login, session,

IP, and record-level action into a searchable audit trail with suspicious-activity alerts and a per-user activity dashboard.

ECOSIRE scopes, builds, installs, and supports it for your database.

¿Qué es User Activity & Login Audit Monitor?

A build-to-order Odoo module that logs every login, session, IP, and record-level action into a searchable audit trail with suspicious-activity alerts and a per-user activity dashboard. ECOSIRE scopes, builds, installs, and supports it for your database. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Características clave

Custom `ecosire.audit.log` model written on create/write/unlink (and optional read) for the specific models you nominate during scoping
Login, logout, and failed-attempt logging via overridden auth entry points (`_check_credentials`) — failures captured even when no session is created
Per-event capture of resolved client IP (request / `X-Forwarded-For`), user agent, session id, and precise UTC timestamp
Record-level action history with old-vs-new field values on tracked models, stored independently of `mail.thread` chatter
Optional read-access logging for sensitive models (`res.partner`, `account.move`, `hr.payslip`, etc.) — something Odoo core cannot record
Immutable audit entries enforced by `ir.model.access.csv` (no unlink/write for normal users) plus record rules scoping visibility to an Audit Manager group
Configurable suspicious-activity rules via automated actions and `ir.cron`: N failed logins in M minutes, new-IP login, off-hours access, bulk read/export
Alerting that raises an in-app `mail.activity`, sends templated email, or flags the offending session when a rule fires
Per-user activity dashboard built in OWL/JS over read-only server data, with drill-down to individual audit entries
List, pivot, and graph views with filters/group-by for period access reviews and segregation-of-duties analysis
QWeb PDF access-review report (per user, per model, per date range) suitable for handing to an external auditor
Configurable retention with a scheduled purge/archive job to keep audit volume and DB size under control
XML-RPC / JSON-RPC exposure of the audit stream so an external SIEM or monitoring stack can pull events on a schedule
Session tracking that correlates multiple actions to a single login and surfaces concurrent-session anomalies
Targets Odoo 17.0, 18.0, and 19.0; Community-compatible, with Enterprise-only hooks used only when you run Enterprise

Hecho a medida, listo para ti

Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.

  1. 1

    Haces el pedido

    Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.

  2. 2

    Creamos e instalamos

    ECOSIRE la crea, la configura y la instala en tu Odoo.

  3. 3

    En marcha + soporte

    Sales en vivo en aproximadamente una semana laboral, con dos semanas de soporte tras la puesta en marcha. Los defectos en el código que entregamos se corrigen sin coste.

Especificaciones técnicas

Compatibilidad con Odoo
Odoo 17, Odoo 18, Odoo 19
Ediciones
Enterprise y Community
Licencia
La licencia requiere confirmación
Requisito de Python
Python 3.10+
Base de datos
PostgreSQL 12+

Sobre este producto

Most ERP security incidents are invisible until it is too late. Odoo core keeps only a thin trail of who touched what: res.users has login_date, mail.thread chatter records some field changes on tracked models, and the server log can hold auth lines if you configure it — but there is no unified, in-database record of failed login attempts, the IP and device behind each session, or which user read (not just wrote) a sensitive res.partner, account.move, or hr.payslip. When an auditor asks "who accessed this customer's data on March 3rd, and from where?", the honest answer with a stock database is usually "we can't tell you." That gap fails SOC 2, ISO 27001, GDPR/HIPAA access-log requirements, and internal segregation-of-duties reviews.

We build a dedicated audit module that closes that gap. At its core is a custom model (ecosire.audit.log) written on every relevant event, plus a lightweight ecosire.login.attempt model. Authentication events are captured by overriding res.users._check_credentials / the auth entry points so both successful logins and failed attempts are recorded with timestamp, resolved IP (from the HTTP request/X-Forwarded-For), user agent, and session id — failed attempts are logged even when no user session is created, which core cannot do. Record-level activity is captured by extending the ORM (create, write, unlink, and optionally read) on the specific models you nominate during scoping, so we log high-value objects without drowning the database in noise. Every entry is immutable to end users and enforced through ir.model.access.csv plus record rules that restrict visibility to a dedicated Audit Manager group.

On top of the log we build the analytics and controls your compliance team actually uses: a per-user activity dashboard (OWL/JS views over read-only server data), filtered and grouped list/pivot views, and QWeb PDF reports for period access reviews you can hand to an auditor. Suspicious-activity detection runs as Odoo automated actions / scheduled ir.cron jobs — configurable rules such as N failed logins in M minutes, login from a new IP or outside business hours, or bulk export/read of a protected model — that raise an in-app activity, send an email, or flag the session. Everything is reachable over the standard XML-RPC/JSON-RPC API, so a SIEM or external monitoring stack can pull the audit stream on a schedule.

Because this is build-to-order, you are not downloading a generic binary and hoping it fits. After a short scoping call we confirm exactly which models are audited, your retention and alerting rules, and your Community vs Enterprise baseline (the module targets Odoo 17.0/18.0/19.0; Enterprise-only hooks are used only if you run Enterprise). We build against your version, test on a staging clone, run UAT with you, then install on production with a rollback plan. Typical delivery is one working week from confirmed scope, and you receive the full source and git repository so nothing is locked behind us.

lo que obtienes

  • Installable module source code built and pinned to your exact Odoo version (17.0 / 18.0 / 19.0), Community or Enterprise
  • Installation and configuration on your environment: audited-model selection, alert rules, groups, and retention settings
  • Technical documentation: model/field reference, ORM override points, security (`ir.model.access.csv` + record rules), and cron/automated-action config
  • End-user and Audit Manager guide plus a live training session for your security/compliance team
  • UAT on a staging clone of your database with a documented rollback plan before any production change
  • Post-go-live support window for bug fixes and configuration adjustments
  • Full git repository handover — no code locked behind ECOSIRE
  • Sample QWeb access-review report and pre-seeded suspicious-activity rules you can tune

¿Para quién es esto?

Compliance & Security Administrator

Owns SOC 2 / ISO 27001 / GDPR access-log evidence and needs a defensible, immutable record of who logged in, from where, and what protected data they touched — exportable for auditors.

ERP System Administrator

Runs the Odoo instance and wants alerts on brute-force logins, new-IP or off-hours access, and concurrent sessions, without wading through raw server logs or hand-writing SQL.

Internal Auditor / Risk Manager

Performs periodic access reviews and segregation-of-duties checks and needs pivotable activity data and per-user PDF reports scoped to a date range and model set.

IT Security / SOC Engineer

Wants the Odoo audit stream pulled into an external SIEM over XML-RPC/JSON-RPC so ERP events sit alongside the rest of the monitoring stack.

Cómo se compara User Activity & Login Audit Monitor

CriterioECOSIREConstrucción personalizadaCompetidorNativo de Odoo
Failed-login loggingCaptured with IP, device, and timestamp even when no session startsPossible, but you build the auth override yourselfOften only successful logins trackedNot recorded in-database
Record read-access loggingOptional per-model read capture on the sensitive models you chooseFeasible but needs careful ORM work to avoid slowdownsRarely offered; usually write-onlyNone — reads leave no trace
IP & session trackingResolved IP, user agent, and session id correlated per loginDepends entirely on your implementationVaries; often partialOnly `login_date` on `res.users`
Tamper resistanceImmutable via access rules + record rules; Audit Manager group onlyOnly as strong as your own security designAccess controls vary by vendorChatter can be pruned; no dedicated protection
Suspicious-activity alertsConfigurable rules via automated actions + `ir.cron` with email/in-app alertsBuildable but time-consuming to design and tuneSometimes fixed, non-configurable rulesNone
Compliance reportingQWeb PDF access-review reports + pivot views per user/model/dateYou design and build the reportsBasic list export at bestNo audit-oriented reports
Version & environment fitBuilt and tested against your exact 17/18/19, Community or EnterpriseFits, but you own all version maintenanceMay lag Odoo releases or assume EnterpriseN/A
Support & source ownershipPost-go-live support window + full git repo handoverYou maintain everythingVendor-locked binary; support variesCommunity support only

Preguntas frecuentes sobre User Activity & Login Audit Monitor

How long does delivery take?

Because this is build-to-order, we build it for your database rather than shipping a generic binary. Typical delivery is one working week from confirmed scope. The clock starts once we've agreed which models are audited, your alert and retention rules, and your Odoo version — smaller scopes land sooner, broad read-logging across many models sits toward the upper end.

Does it work on Odoo Community, or only Enterprise?

It works on Community. The core audit log, login/failed-attempt capture, record-action history, alerts, dashboard, and reports are all built with standard framework features (ORM overrides, `ir.model.access.csv`, record rules, `ir.cron`, QWeb, OWL). Enterprise-only hooks are used only if you run Enterprise. We target Odoo 17.0, 18.0, and 19.0.

Will read-access logging slow down my database?

Read logging is the heaviest event type, so we don't apply it blanket. During scoping we nominate only sensitive models (e.g. `res.partner`, `account.move`, `hr.payslip`) for read capture, keep write/login logging everywhere it's cheap, and add a scheduled purge/archive job plus indexes so the audit table stays fast. We load-test on staging before go-live.

Can users delete or edit the audit trail to cover their tracks?

No. Audit entries are immutable for normal users — `ir.model.access.csv` grants no write/unlink on the log model, and record rules restrict even read access to a dedicated Audit Manager group. Only the scheduled retention job removes aged records, and that behavior is documented and configurable.

How do the suspicious-activity alerts work?

Detection runs as Odoo automated actions and `ir.cron` jobs against configurable thresholds — for example N failed logins in M minutes, a login from a new IP or outside business hours, or bulk read/export of a protected model. When a rule fires it can raise an in-app activity, send a templated email, or flag the session. You tune the rules; we seed sensible defaults.

Can I feed this into my existing SIEM or monitoring tools?

Yes. The audit stream is exposed over Odoo's standard XML-RPC/JSON-RPC API, so an external SIEM, Splunk-style collector, or custom job can pull events on a schedule and correlate ERP activity with the rest of your security stack. We document the endpoints and a sample pull during handover.

What about support and updates after go-live?

Every build includes a post-go-live support window for bug fixes and configuration tweaks, and you receive the full git repository so your team can maintain it. For future Odoo version upgrades (e.g. moving 18.0 to 19.0) or new audited models and rules, we scope that as a follow-on engagement.

Solicitar presupuesto

User Activity & Login Audit Monitor

A build-to-order Odoo module that logs every login, session, IP, and record-level action into a searchable audit trail with suspicious-activity alerts and a per-user activity dashboard. ECOSIRE scopes, builds, installs, and supports it for your database.

  • Custom `ecosire.audit.log` model written on create/write/unlink (and optional read) for the specific models you nominate during scoping
  • Login, logout, and failed-attempt logging via overridden auth entry points (`_check_credentials`) — failures captured even when no session is created
  • Per-event capture of resolved client IP (request / `X-Forwarded-For`), user agent, session id, and precise UTC timestamp
  • Record-level action history with old-vs-new field values on tracked models, stored independently of `mail.thread` chatter

Solicitar presupuesto

Cuéntanos tus necesidades de User Activity & Login Audit Monitor y te enviaremos precios, opciones de licencia y una propuesta a medida, normalmente en un día hábil.

Sin pago ahora. Esto envía una solicitud de presupuesto a nuestro equipo; te responderemos por correo con precios y próximos pasos.