Mercurial > libervia-backend
view docker/backend-dev-e2e/certificates/minica.pem @ 4212:5f2d496c633f
core: get rid of `pickle`:
Use of `pickle` to serialise data was a technical legacy that was causing trouble to store
in database, to update (if a class was serialised, a change could break update), and to
security (pickle can lead to code execution).
This patch remove all use of Pickle in favour in JSON, notably:
- for caching data, a Pydantic model is now used instead
- for SQLAlchemy model, the LegacyPickle is replaced by JSON serialisation
- in XEP-0373 a class `PublicKeyMetadata` was serialised. New method `from_dict` and
`to_dict` method have been implemented to do serialisation.
- new methods to (de)serialise data can now be specified with Identity data types. It is
notably used to (de)serialise `path` of avatars.
A migration script has been created to convert data (for upgrade or downgrade), with
special care for XEP-0373 case. Depending of size of database, this migration script can
be long to run.
rel 443
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 23 Feb 2024 13:31:04 +0100 |
parents | 3b64b503f250 |
children |
line wrap: on
line source
-----BEGIN CERTIFICATE----- MIIDSzCCAjOgAwIBAgIIUWR9z7Z6sSswDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVbWluaWNhIHJvb3QgY2EgNTE2NDdkMCAXDTIzMTIxMDIxMzUzMloYDzIxMjMx MjEwMjEzNTMyWjAgMR4wHAYDVQQDExVtaW5pY2Egcm9vdCBjYSA1MTY0N2QwggEi MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtEdPbe67AxMnlQTHGRi8oYe5+ Ei3qZvE5V/YPY+zuiCTlZgjjlPXI9TZg0Ic5klF8xNIlLBWQ3n9VmyuEWVuG+oKw ObXE2pEPsHexhyblzWcmPu/QwF/5MudW2h4u2pAAt+MYn1H+b+CKYJkBC9Qm6NoP UkyE+YQ3dGUjk/DWAcGzro/M1RlL222hdBRH0S6BmHCfRxcHZiE8CyMsAV0IueLp vre3F3TaZPVp0YDxVqksgn7a3X3nvBNSF2wCUJMSeFrv5OohQMmridFR56JpPOvo gIvoaR9zbSaijsYDohuDrpAX8YZHZUkK0065tu5py4PB1QD6KzHsb2CXOPnPAgMB AAGjgYYwgYMwDgYDVR0PAQH/BAQDAgKEMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggr BgEFBQcDAjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBQn64ZnjZJ98LYU uQRuFPA2PU8VETAfBgNVHSMEGDAWgBQn64ZnjZJ98LYUuQRuFPA2PU8VETANBgkq hkiG9w0BAQsFAAOCAQEAqyA+OhzFvFLYbYdEZEZAo7W9JSseq2JkxOIHl3b8Jc+k NTBZnRbWgU+MP1zDvZ4ZDWmNmS4k97KcMDmzIknrUO/u+ks04P9OTEeHjYoFvX/z I7rA8Jj7GISkN5Dlz7JjzTlzk+3FWKCg3rKrSWg+v5ryYrT25s1iwm/nml9ozWKf U1JbfydrDX3iqJWxxskRvbsX/ns8KhQfJCICtNZxrY+FachDykJ9VI+fkJBYzDDE J/QwVWtRcqv/QlmSNVAO33QNykOM5qOxYwNw7lAQfSi9v/2PqaK+tzM8TTMXeigU qIRLQ/z7LOCwQKGGUmoCWCxxmUGlCblEDm89jvomLA== -----END CERTIFICATE-----