
* Adds a type that has the name `EncryptedType`. This type gives the possibility to encrypt a value, so that in the database exists the encrypted form of the value and not the original one. When a value needs to be read(and is of type `EncryptedType`) the value automatically decrypted in order to present to the user. * Two encryption/decryption engines are currently implemented. One is using the AES algorithm and the other is using the Fernet algorithm. These are implemented in a library that is called Cryptography. * Inside the tests folder there is a test whose name is `test_encrypted` and tests the functionality of the above type. * Inside the `encrypted.py` file there is documentation with a complete example. Also the `data_types.rst` is modified in order to add a section for the `EncryptedType`. Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
1.7 KiB
Data types
SQLAlchemy-Utils provides various new data types for SQLAlchemy. In
order to gain full advantage of these datatypes you should use automatic
data coercion. See force_auto_coercion
for how to set up this
feature.
sqlalchemy_utils.types
ArrowType
sqlalchemy_utils.types.arrow
ArrowType
ChoiceType
sqlalchemy_utils.types.choice
ChoiceType
ColorType
sqlalchemy_utils.types.color
ColorType
CountryType
sqlalchemy_utils.types.country
CountryType
EncryptedType
sqlalchemy_utils.types.encrypted
EncryptedType
JSONType
sqlalchemy_utils.types.json
JSONType
LocaleType
sqlalchemy_utils.types.locale
LocaleType
IPAddressType
sqlalchemy_utils.types.ip_address
IPAddressType
PasswordType
sqlalchemy_utils.types.password
PasswordType
PhoneNumberType
sqlalchemy_utils.types.phone_number
PhoneNumberType
ScalarListType
sqlalchemy_utils.types.scalar_list
ScalarListType
TimezoneType
sqlalchemy_utils.types.timezone
TimezoneType
URLType
sqlalchemy_utils.types.url
URLType
UUIDType
sqlalchemy_utils.types.uuid
UUIDType
WeekDaysType
sqlalchemy_utils.types.weekdays
WeekDaysType