Repository
odoo/odoo · module folder
Module version
1.0
Category
Extra Tools
Folder size
1.18 MB
License
LGPL-3
Application
No
Auto-installable
No
Website
None
Last tracking update
2026-08-07 05:03:18
Authors
Maintainers
None
Committers
Xavier Morel, Olivier Dony, Raphael Collet, Christophe Simonis, Martin Trigaux, Odoo Translation Bot, xmo-odoo, qdp-odoo, GitHub, Yannick Tivisse, Odoo Online
Odoo dependencies
odoo/odoo:
Python dependencies
None
System dependencies
None
Required by
None
Description
This module allows you to anonymize a database.
===============================================

This module allows you to keep your data confidential for a given database.
This process is useful, if you want to use the migration process and protect
your own or your customer’s confidential data. The principle is that you run
an anonymization tool which will hide your confidential data(they are replaced
by ‘XXX’ characters). Then you can send the anonymized database to the migration
team. Once you get back your migrated database, you restore it and reverse the
anonymization process to recover your previous data.
    

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
view_ir_model_fields_anonymization_form ir.model.fields.anonymization.form ir.model.fields.anonymization form New
view_ir_model_fields_anonymization_history_form ir.model.fields.anonymization.history.form ir.model.fields.anonymization.history form New
view_ir_model_fields_anonymization_history_tree ir.model.fields.anonymization.history.tree ir.model.fields.anonymization.history tree New
view_ir_model_fields_anonymization_tree ir.model.fields.anonymization.tree ir.model.fields.anonymization tree New
view_ir_model_fields_anonymize_wizard_form ir.model.fields.anonymize.wizard.form ir.model.fields.anonymize.wizard form New
view_ir_model_fields_nonymization_kanban ir.model.fields.anonymization.kanban ir.model.fields.anonymization kanban New
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (4)

New fields (5)
  • field_id Many2one → ir.model.fields
    ondelete='set null' string='Field' args: 'ir.model.fields'
  • field_name Char
    required=True
  • model_id Many2one → ir.model
    ondelete='set null' string='Object' args: 'ir.model'
  • model_name Char
    required=True args: 'Object Name'
  • state Selection
    default='clear' readonly=True required=True selection=FIELD_STATES string='Status'
Public methods (3)
  • create(self, vals)
    @api.model
  • unlink(self)
    @api.multi
  • write(self, vals)
    @api.multi

New fields (6)
  • date Datetime
    readonly=True required=True
  • direction Selection
    readonly=True required=True selection=ANONYMIZATION_DIRECTION
  • field_ids Many2many → ir.model.fields.anonymization
    readonly=True string='Fields' args: 'ir.model.fields.anonymization', 'anonymized_field_to_history_rel', 'field_id', 'history_id'
  • filepath Char
    readonly=True args: 'File path'
  • msg Text
    readonly=True args: 'Message'
  • state Selection
    readonly=True required=True selection=ANONYMIZATION_HISTORY_STATE string='Status'
Public methods (0)

No public methods.

New fields (6)
  • field_name Char
    args: 'Field'
  • model_name Char
    args: 'Model'
  • query Text
  • query_type Selection
    selection=[('sql', 'sql'), ('python', 'python')] string='Query'
  • sequence Integer
  • target_version Char
    args: 'Target Version'
Public methods (0)

No public methods.

New fields (6)
  • file_export Binary
    args: 'Export'
  • file_import Binary
    help="This is the file created by the anonymization process. It should have the extension '.json' or '.pickle'." args: 'Import'
  • msg Text
    args: 'Message'
  • name Char
    args: 'File Name'
  • state Selection
    compute='_compute_state' selection=WIZARD_ANONYMIZATION_STATES string='Status'
  • summary Text
    compute='_compute_summary'
Public methods (4)
  • anonymize_database(self)
    @api.multi
    Sets the 'anonymized' state to defined fields
  • default_get(self, fields_list)
    @api.model
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
  • reverse_anonymize_database(self)
    @api.multi
    Set the 'clear' state to defined fields

Loading…

Loading…

Loading…

Loading…

Loading…