Encrypted Fields

by
Odoo
v 11.0 Third Party 500
Download for v 11.0 Deploy on Odoo.sh
Availability
Odoo Online
Odoo.sh
On Premise
Lines of code 161
Technical Name base_encrypted_field
LicenseLGPL-3
Websitehttps://www.modoolar.com/
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Lines of code 161
Technical Name base_encrypted_field
LicenseLGPL-3
Websitehttps://www.modoolar.com/

Encrypted Field

Overview

This module enables user to store field value in encrypted form. One or more fields can be stored inside single Encrypted Field. Just before storing to database, fields gets serialized, and encrypted. On the other hand, after reading, encrypted field gets decrypted and deserialized and values are available in each field in original form.

Encrypted Field uses symetrical AES algorithm. Refer to documentation for setup instructions.

MODOOLAR

With extensive experience in implementing Odoo based applications, we can offer you a custom-tailored solution that perfectly meets your needs, and spanning through CRM, Sales management, Accounting, HR management, Project management, Document management, eCommerce, Webshop, and many more. With our hands-on expertise, we can help you get exclusive tailor-made apps for your unique business needs. Our knowledge extends beyond our tech-stack expertise - we follow startup trends, so that we can provide guidance to our clients regarding the business process, legal issues and marketing strategies.

Contact us
License: LGPL-v3

Encrypted Field

This module enables user to store field value in encrypted form. One or more fields can be stored inside single Encrypted Field. Just before storing to database, fields gets serialized, and encrypted. On the other hand, after reading, encrypted field gets decrypted and deserialized and values are available in each field in original form. It uses symmetrical AES encryption.

Requirements

pip install cryptography

Configuration

Because this module extends odoo.fields module, it needs to be loaded as server wide module. This can be achieved by passing

--load="web,base_encrypted_field"

or by adding following line to the server config file:

server_wide_modules = web,base_encrypted_field

In order to set key for encryption/decryption, add following line to server config file:

encryption_key=<YOUR_KEY>

You can generate key with python cryptography module like this:

from cryptography.fernet import Fernet

Fernet.generate_key().decode()

Usage

Encrypted field works in such a way that it bundles other fields that point to it by setting encrypt argument. All those fields are becoming computed fields with inverse function, that populates Encrypted field.

Just before storing Encrypted field to database, its value gets encrypted, and it gets decrypted immediately after reading from database. Encrypted field is stored in binary form.

One model can have multiple Encrypted fields without restriction, and each Encrypted field can represent single or multiple regular fields.

Check the TestEncrypted model from models.py to see how field should be used.

Credits

Contributors

Maintainer

Modoolar

This module is maintained by Modoolar.

As Odoo Gold partner, our company is specialized in Odoo ERP customization and business solutions development.
Beside that, we build cool apps on top of Odoo platform.

To contribute to this module, please visit https://modoolar.com

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
Computed field
by
marwa
on 3/12/19, 10:39 AM

It can be work with the computed field, please ?


Could you have this module upgraded on V12?
by
Phuong
on 7/23/19, 6:08 AM

Could you have this module upgraded on V12?! Many thanks.