craig-rueda opened a new pull request #14109:
URL: https://github.com/apache/superset/pull/14109


   ### SUMMARY
   Superset uses `sqlalchemy_utils`'s `EncrytpedType` in several places in 
order to provide application-level encryption to text fields before writing to 
the DB. The model definitions themselves are currently hard-coded to use these 
types inline, which doesn't allow others to customize their configuration. The 
current impl forces the use of the current `SECRET_KEY`, for instance, which 
some users may not want. What's worse is that the model classes themselves have 
a direct dependency on the Flask app's `config` object, which makes bootstrap 
harder than it needs to be. This change makes a small push in terms of 
unraveling this ball of wax.
   
   This PR introduces a factory, along with an adapter paradigm that allows 
Superset users to customize the implementation of the encrypted fields on their 
own. The default implementation is, of course, to use the same 
EncType+SECRET_KEY setup that is currently in use.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to