Saltar al contenido principal
Los detalles del producto se muestran en inglés. Próximamente traducciones.
Generic Security Restriction — A build-to-order Odoo module that restricts menus, fields, buttons, and actions with granular  — 1/1Vista previa ilustrativa

A build-to-order Odoo module that restricts menus, fields,

buttons, and actions with granular model-level access controls and record rules.

ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 environment.

¿Qué es Generic Security Restriction?

A build-to-order Odoo module that restricts menus, fields, buttons, and actions with granular model-level access controls and record rules. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 environment. 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

Restriction profiles that bundle menu, field, button, and action rules and map to Odoo res.groups so they survive module upgrades
Server-side field masking enforced in the models.Model read path, not just UI hiding — restricted fields stay hidden over XML-RPC/JSON-RPC and in exports
Menu visibility control over ir.ui.menu, hiding or exposing app and submenu entries per profile without editing source XML
Read-only and hidden field enforcement via dynamic get_views / fields_view_get overrides plus groups attributes on view nodes
Action and button restriction (Confirm, Validate, Post, Cancel, Delete) at the view and ORM level so blocked users cannot trigger the write
Parameterized ir.rule record rules scoped by company, sales team, department, or any nominated field, with domain templates you configure
Multi-company aware rules that honor company_id and company_ids consistently, including cross-company visibility edge cases
ir.model.access.csv generation tied to profiles so create/read/write/unlink permissions stay in sync with the restriction model
Contextual, compute-backed visibility using @api.depends where a restriction depends on record state rather than a static group
Export and report guardrails so restricted fields do not leak through QWeb reports, list exports, or scheduled outputs
Automated-action hooks to log or block restricted operations for audit trails where compliance requires it
Version-aware implementation across Odoo 17.0, 18.0, and 19.0, accounting for get_views API and OWL view differences
Community and Enterprise compatible — Enterprise-only views/actions handled when they are in the agreed scope
Idempotent, upgrade-safe data files so re-installs and version bumps do not duplicate groups or rules

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 teams reach a point where Odoo's out-of-the-box security is either too coarse or too fiddly to manage safely. A salesperson can see margin fields they shouldn't; a warehouse user stumbles into Accounting menus; a junior can still click Validate, Cancel, or Post on documents that should be locked to a supervisor. Odoo core gives you res.groups, ir.model.access.csv, and ir.rule record rules — powerful primitives — but wiring field-level visibility, button-level restrictions, and multi-dimensional record rules by hand across dozens of models quickly becomes an unmaintainable sprawl of XML and CSV that breaks on every upgrade. This is where native Odoo runs out of road: it has the mechanisms, but no unified, admin-friendly control surface to govern who sees which menu, which field, and which action, without a developer editing source every time policy changes.

Generic Security Restriction is a made-to-order Odoo module that ECOSIRE designs, builds, and installs for you to close exactly that gap. Rather than hard-coding restrictions, we deliver a configurable security layer: a settings-driven model where administrators define restriction profiles that hide or read-only menus (ir.ui.menu), fields (via groups attributes and dynamic fields_view_get/get_views overrides in the ORM), and action buttons in both backend XML/OWL views and QWeb-driven flows. Under the hood we generate the appropriate res.groups, ir.model.access.csv entries, and parameterized ir.rule domains, then bind them to your restriction profiles so policy changes become configuration, not code. Field masking is enforced server-side in the models.Model read path — not just hidden in the UI — so the same rules hold over the XML-RPC/JSON-RPC API and in exports, closing the common loophole where a restricted field leaks through a report or an external integration.

Technically, the module is built to your model map. We audit the objects you need to govern, define compute-backed visibility helpers (@api.depends where a restriction is contextual), and apply record rules scoped by company, team, department, or any field you nominate — including multi-company setups where company_ids and company_id must be honored consistently. Menu and action restrictions are applied through group membership so they survive upgrades, and every override is written to be idempotent and version-aware across Odoo 17.0, 18.0, and 19.0 (we account for the get_views API changes and OWL view differences between those releases, and for Community vs Enterprise where an Enterprise-only view or action is in scope). We keep the footprint minimal and dependency-light so it coexists cleanly with your other apps and does not fight the standard upgrade path.

Because this is build-to-order, delivery starts with a short scoping call, not a download. We confirm the exact models, fields, menus, and actions in scope, agree the restriction profiles and who they map to, then build against a copy of your database, validate on staging, and install into production with a rollback plan. Typical delivery is one working week from confirmed scope, depending on how many models and profiles are involved and whether integrations or data migration are required. Pricing starts from $999 (indicative, single-company base scope); broader model coverage, multi-company record rules, deeper localization, and additional integration surfaces (API clients, external reports) increase the quoted scope. You receive a fixed written quote after the scoping call — never a surprise.

lo que obtienes

  • Installable module source code for your target Odoo version (17.0, 18.0, or 19.0), built to your model and profile map
  • Installation and configuration on your environment, including group/profile setup and initial restriction rules
  • Technical documentation covering the module architecture, res.groups, ir.rule domains, and how to extend restriction profiles
  • End-user and administrator guide plus a live training session for the team who will manage restrictions
  • Post-go-live support window for defect fixes and configuration questions after production install
  • UAT on a staging copy of your database with a documented, tested rollback plan before production cutover
  • Git repository handover with full commit history and tagged release for your version
  • Configuration reference mapping each restriction profile to the menus, fields, and actions it governs

¿Para quién es esto?

Odoo Administrator / Internal IT

Owns user roles and wants to manage who sees which menu, field, and button from configuration rather than filing a developer ticket every time a policy changes or a new hire needs a scoped role.

Operations or Finance Manager

Needs to ensure staff cannot see sensitive data (margins, salaries, cost prices) or trigger privileged actions like posting or cancelling documents, with enforcement that holds over reports and the API, not just hidden in the screen.

Compliance / Data-Governance Lead

Must demonstrate least-privilege access and an auditable trail of who can do what, especially in regulated or multi-company groups where record-level segregation between entities is mandatory.

Multi-Company Group Controller

Runs several companies in one Odoo database and needs consistent record rules so users only see their entity's data while shared-service roles retain the cross-company access they legitimately require.

Cómo se compara Generic Security Restriction

CriterioECOSIREConstrucción personalizadaCompetidorNativo de Odoo
Menu, field, and action controlUnified restriction profiles governing menus, fields, buttons, and actions from one configurable layerPossible but you design and maintain the whole framework yourselfOften covers menus and fields but rarely all four in one consistent modelManual res.groups + CSV + view groups edited case by case
Enforcement depthServer-side in the ORM and ir.rule, holds over API, exports, and reportsDepends entirely on the developer's rigorFrequently UI-only, leaks via API or exportsStrong at record-rule level, weak for granular field/button UI
Fit to your modelsBuilt to your exact model map after a scoping callFully bespoke but slow and costly to build from zeroGeneric; you adapt your process to its assumptionsYou configure within core limits, no tailoring
Multi-company record rulesCompany/team/department-scoped ir.rule handled and tested for your setupAchievable with significant in-house effortBasic multi-company support, edge cases often unhandledAvailable but manual to configure and easy to get wrong
Upgrade safety (17/18/19)Version-aware, idempotent data files, tested across 17.0/18.0/19.0Whatever you build must be re-tested each upgradeDepends on vendor's version cadenceCore upgrades cleanly but your manual edits may not
Support and ownershipPost-go-live support window plus full git repo and source handoverYou own it and you support it entirelyVendor support varies; source may be obfuscatedCommunity/Enterprise support, no custom logic covered
Total cost and timeIndicative from $999, fixed quote after scoping, one working weekHighest cost and longest timelineLow upfront license but adaptation and gaps add costNo license cost but heavy admin time and risk of misconfiguration
Audit and complianceOptional automated-action logging and documented least-privilege mappingOnly if you scope and build itRarely includes audit toolingNo built-in restriction audit trail

Preguntas frecuentes sobre Generic Security Restriction

How long does delivery take?

This is a build-to-order module, not an instant download. After a scoping call to confirm the exact models, fields, menus, and actions in scope, typical delivery is one working week from confirmed scope. Timelines lengthen with more models and profiles, multi-company record rules, or integration and data-migration work, and we give you a schedule with your fixed quote.

How does pricing and scoping work?

Pricing starts from $999 as an indicative from-price for a single-company base scope. The final number depends on how many models, fields, and restriction profiles you need, multi-company complexity, localization depth, and any integrations. You get a fixed written quote after the scoping call — no charges begin until you approve that quote.

What support and updates are included?

Every build includes a post-go-live support window for defect fixes and configuration questions. Because we hand over the git repository and full source, you own the code. We also offer optional ongoing support and paid version upgrades to keep the module current as you move between Odoo 17.0, 18.0, and 19.0.

Does this work with Odoo Community and Enterprise?

Yes. The module is built on standard security primitives (res.groups, ir.model.access.csv, ir.rule) that exist in both editions and supports Odoo 17.0, 18.0, and 19.0. Where an Enterprise-only view or action is in your scope, we handle it as part of the build; we confirm your edition and version during scoping.

Are restrictions actually enforced, or just hidden in the interface?

Enforced. Field and record restrictions are applied server-side in the ORM read/write path and via ir.rule domains, so they hold over the XML-RPC/JSON-RPC API, exports, and QWeb reports — not only in the screen. UI hiding is layered on top for a clean experience, but the security boundary is at the model level.

Can restrictions depend on record state, not just the user's role?

Yes. Alongside static group-based rules we can implement contextual restrictions using compute helpers and @api.depends — for example, making a field read-only once a document is confirmed, or blocking cancel after posting. We agree these conditional rules during scoping so behavior is explicit and testable.

Will it survive Odoo upgrades?

We build restrictions through group membership and idempotent, version-aware data files rather than ad-hoc source edits, which is far more upgrade-friendly than hand-patching views. Major Odoo version jumps can still require a compatibility pass, which we can quote as an upgrade engagement when you move versions.

Solicitar presupuesto

Generic Security Restriction

A build-to-order Odoo module that restricts menus, fields, buttons, and actions with granular model-level access controls and record rules. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17/18/19 environment.

  • Restriction profiles that bundle menu, field, button, and action rules and map to Odoo res.groups so they survive module upgrades
  • Server-side field masking enforced in the models.Model read path, not just UI hiding — restricted fields stay hidden over XML-RPC/JSON-RPC and in exports
  • Menu visibility control over ir.ui.menu, hiding or exposing app and submenu entries per profile without editing source XML
  • Read-only and hidden field enforcement via dynamic get_views / fields_view_get overrides plus groups attributes on view nodes

Solicitar presupuesto

Cuéntanos tus necesidades de Generic Security Restriction 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.