> I would turn your argument the other way around--if you're already in a > no-install, serialized model for DAGs why not extend that to all aspects of > the webserver such as connections and UI plugins? Seems that would be more > consistent.
There are more to providers than just defining connection types. For example you can define custom operator links in providers http://airflow.apache.org/docs/apache-airflow/stable/howto/define_extra_link.html and to avoid potential deserialisation attacks the links must be registered with the webserver code before it will create an instance of the class (And links are classes rather than static so that you can do things like generate temporary/presigned S3 URLs) -Ash On 18 June 2021 22:58:29 BST, "Jackson, John" <[email protected]> wrote: >Plugins, providers, and their associated Python libraries all need to execute >code in order to be installed which is a vulnerability. Plugins in particular >are often developed/installed by the data engineers and not by system >administrators, leading us back to our original problem. > >I would turn your argument the other way around--if you're already in a >no-install, serialized model for DAGs why not extend that to all aspects of >the webserver such as connections and UI plugins? Seems that would be more >consistent. > >On 2021-06-18, 1:36 PM, "Jarek Potiuk" <[email protected]> wrote: > > CAUTION: This email originated from outside of the organization. Do not > click links or open attachments unless you can confirm the sender and know > the content is safe. > > > > > That would certainly help a bit, but unfortunately it's not just the > packages. It's the fact that authentication is tied to Python code that can > be patched by anyone with permission to execute code on the web server, which > in turn would give them access to packages or any anything else they'd like. > > But in Airflow 2.0 the code provided by "DAG writers" is not executed > any more. This is entirely gone together with Airflow 1.10. This has > been handled by DAG serialization, which is the only option available > in 2.0. I do not see how the "Users" could add any code if "Admins" > control the packages that are installed in the webserver. Now if > Admin/User is the only problem then I think this is really > misunderstanding coming from the pre-DAG-serialization world of Apache > Airflow. > > J. >
