o-nikolas commented on code in PR #32098:
URL: https://github.com/apache/airflow/pull/32098#discussion_r1246907924


##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users

Review Comment:
   ```suggestion
   Capabilities of authenticated UI users
   ```



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users
+--------------------------------------
+
+The capabilities of **Authenticated UI users** can vary depending on
+whether the users belong to one of the general categories:

Review Comment:
   I'd like to call out that Roles and Permissions in Airflow are fluid and 
configurable, so the below three roles are not exhaustive, but are still 
helpful. Here's a proposed paragraph to lead into that list: 
   ```suggestion
   The capabilities of **Authenticated UI users** can vary depending on
   what roles have been configured by the Deployment Manager or Admin users as 
well as what permissions those roles have. Permissions on roles can be scoped 
as tightly as a single DAG, for example, or as broad as Admin. Below are three 
general categories to help conceptualize some of the capabilities authenticated 
users may have:
   ```



##########
.github/SECURITY.md:
##########
@@ -1,61 +1,50 @@
- .. Licensed to the Apache Software Foundation (ASF) under one
-    or more contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  The ASF licenses this file
-    to you under the Apache License, Version 2.0 (the
-    "License"); you may not use this file except in compliance
-    with the License.  You may obtain a copy of the License at
+This document contains information on how to report security vulnerabilities 
in Apache Airflow and
+how the security issues reported to Apache Airflow security team are handled. 
If you would like
+to learn about the security model of Airflow head to
+[Airflow 
Security](https://airflow.apache.org/docs/apache-airflow/stable/security/)
 
- ..   http://www.apache.org/licenses/LICENSE-2.0
-
- .. Unless required by applicable law or agreed to in writing,
-    software distributed under the License is distributed on an
-    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-    KIND, either express or implied.  See the License for the
-    specific language governing permissions and limitations
-    under the License.
-
-Security Model
---------------
-
-In the Airflow security model, the system administrators are fully trusted.
-They are the only ones who can upload new DAGs, which gives them the ability
-to execute any code on the server.
-
-Authenticated web interface and API users with Admin/Op permissions are 
trusted,
-but to a lesser extent: they can configure the DAGs which gives them some 
control,
-but not arbitrary code execution.
-
-Authenticated Web interface and API users with 'regular' permissions are 
trusted
-to the point where they can impact resource consumption and pause/unpause 
configured DAGs,
-but not otherwise influence their functionality.
-
-Reporting Vulnerabilities
--------------------------
+## Reporting Vulnerabilities
 
 **⚠️ Please do not file GitHub issues for security vulnerabilities as they are 
public! ⚠️**
 
 The Apache Software Foundation takes security issues very seriously. Apache
 Airflow specifically offers security features and is responsive to issues
 around its features. If you have any concern around Airflow Security or believe
 you have uncovered a vulnerability, we suggest that you get in touch via the
-e-mail address [email protected]. In the message, try to provide a
-description of the issue and ideally a way of reproducing it. The security team
-will get back to you after assessing the description.
+e-mail address 
[[email protected]](mailto:[email protected]).
+In the message, try to provide a description of the issue and ideally a way of
+reproducing it. The security team will get back to you after assessing the 
report.
 
 Note that this security address should be used only for undisclosed
 vulnerabilities. Dealing with fixed issues or general questions on how to use
 the security features should be handled regularly via the user and the dev
 lists. Please report any security problems to the project security address
 before disclosing it publicly.
 
-The `ASF Security team's page <https://www.apache.org/security/>`_ describes
-how vulnerability reports are handled, and includes PGP keys if you wish to use
-that.
+Before reporting vulnerabilities, please make sure to read and understand the
+[security 
model](https://airflow.apache.org/docs/apache-airflow/stable/security/) of 
Airflow, because
+some of the potential security vulnerabilities that are valid for projects 
that are publicly accessible
+from the Internet, are not valid for Airflow. Airflow is not designed to be 
used by untrusted users, and some
+trusted users are trusted enough to do a variety of operations that could be 
considered as vulnerabilities
+in other products/circumstances. This is the reason why some potential 
security vulnerabilities do not
+apply to Airflow, or have different severity than generic scoring systems (for 
example `CVSS`)
+calculation suggests.
 
+The [ASF Security team's page](https://www.apache.org/security/) describes
+how vulnerability reports are handled in general by all ASF projects, and 
includes PGP keys if
+you wish to use them when you report the issues.
 
-Handling security issues in Airflow
------------------------------------
+## Security vulnerabilities in Airflow and Airflow community managed providers
+
+Airflow core package is released separately from provider packages. While 
Airflow comes with ``constraints``
+which describe which version of providers have been tested when the version of 
Airflow was released, the
+users of Airflow are advised to install providers independently from Airflow 
core when they want to apply
+security fixes found and released in providers. Therefore the issues found and 
fixed in providers do
+not apply to Airflow core package. There are also airflow providers released 
by 3rd-parties, but the

Review Comment:
   ```suggestion
   security fixes found and released in providers. Therefore, the issues found 
and fixed in providers do
   not apply to the Airflow core package. There are also Airflow providers 
released by 3rd-parties, but the
   ```



##########
.github/SECURITY.md:
##########
@@ -1,61 +1,50 @@
- .. Licensed to the Apache Software Foundation (ASF) under one
-    or more contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  The ASF licenses this file
-    to you under the Apache License, Version 2.0 (the
-    "License"); you may not use this file except in compliance
-    with the License.  You may obtain a copy of the License at
+This document contains information on how to report security vulnerabilities 
in Apache Airflow and
+how the security issues reported to Apache Airflow security team are handled. 
If you would like
+to learn about the security model of Airflow head to
+[Airflow 
Security](https://airflow.apache.org/docs/apache-airflow/stable/security/)
 
- ..   http://www.apache.org/licenses/LICENSE-2.0
-
- .. Unless required by applicable law or agreed to in writing,
-    software distributed under the License is distributed on an
-    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-    KIND, either express or implied.  See the License for the
-    specific language governing permissions and limitations
-    under the License.
-
-Security Model
---------------
-
-In the Airflow security model, the system administrators are fully trusted.
-They are the only ones who can upload new DAGs, which gives them the ability
-to execute any code on the server.
-
-Authenticated web interface and API users with Admin/Op permissions are 
trusted,
-but to a lesser extent: they can configure the DAGs which gives them some 
control,
-but not arbitrary code execution.
-
-Authenticated Web interface and API users with 'regular' permissions are 
trusted
-to the point where they can impact resource consumption and pause/unpause 
configured DAGs,
-but not otherwise influence their functionality.
-
-Reporting Vulnerabilities
--------------------------
+## Reporting Vulnerabilities
 
 **⚠️ Please do not file GitHub issues for security vulnerabilities as they are 
public! ⚠️**
 
 The Apache Software Foundation takes security issues very seriously. Apache
 Airflow specifically offers security features and is responsive to issues
 around its features. If you have any concern around Airflow Security or believe
 you have uncovered a vulnerability, we suggest that you get in touch via the
-e-mail address [email protected]. In the message, try to provide a
-description of the issue and ideally a way of reproducing it. The security team
-will get back to you after assessing the description.
+e-mail address 
[[email protected]](mailto:[email protected]).
+In the message, try to provide a description of the issue and ideally a way of
+reproducing it. The security team will get back to you after assessing the 
report.
 
 Note that this security address should be used only for undisclosed
 vulnerabilities. Dealing with fixed issues or general questions on how to use
 the security features should be handled regularly via the user and the dev
 lists. Please report any security problems to the project security address
 before disclosing it publicly.
 
-The `ASF Security team's page <https://www.apache.org/security/>`_ describes
-how vulnerability reports are handled, and includes PGP keys if you wish to use
-that.
+Before reporting vulnerabilities, please make sure to read and understand the
+[security 
model](https://airflow.apache.org/docs/apache-airflow/stable/security/) of 
Airflow, because
+some of the potential security vulnerabilities that are valid for projects 
that are publicly accessible
+from the Internet, are not valid for Airflow. Airflow is not designed to be 
used by untrusted users, and some
+trusted users are trusted enough to do a variety of operations that could be 
considered as vulnerabilities
+in other products/circumstances. This is the reason why some potential 
security vulnerabilities do not
+apply to Airflow, or have different severity than generic scoring systems (for 
example `CVSS`)
+calculation suggests.

Review Comment:
   ```suggestion
   in other products/circumstances. Therefore, some potential security 
vulnerabilities do not
   apply to Airflow, or have a different severity than some generic scoring 
systems (for example `CVSS`)
   calculation suggests.
   ```



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.

Review Comment:
   Should we note that DB access is planned to change soon with the 
multi-tenancy work underway?



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users
+--------------------------------------
+
+The capabilities of **Authenticated UI users** can vary depending on
+whether the users belong to one of the general categories:
+
+1. **Admin users**: They manage and grant permissions to other users,
+   with full access to all UI capabilities. They can potentially execute
+   code on workers by configuring connections and need to be trusted not
+   to abuse these privileges. They have access to sensitive credentials
+   and can modify them. By default, they don't have access to
+   system-level configuration. They should be trusted not to misuse
+   sensitive information accessible through connection configuration.
+   They also have the ability to create a Webserver Denial of Service
+   situation and should be trusted not to misuse this capability.
+
+2. **Connection configuration users**: They configure connections and
+   potentially execute code on workers during DAG execution. Trust is
+   required to prevent misuse of these privileges. They have full access
+   to sensitive credentials stored in connections and can modify them.
+   Access to sensitive information through connection configuration
+   should be trusted not to be abused. They also have the ability to
+   create a Webserver Denial of Service situation and should be trusted
+   not to misuse this capability.
+
+3. **Operations users**: They have access to DAG execution status via
+   the UI. Currently, Airflow lacks full protection for accessing groups
+   of DAGs' history and execution. They can perform actions such as
+   clearing, re-running, triggering DAGs, and changing parameters.
+   Depending on access restrictions, they may also have access to
+   editing variables and viewing Airflow configuration. They should not
+   have access to sensitive system-level information or connections, and
+   they should not be able to access sensitive task information unless
+   deliberately exposed in logs by DAG authors. They should be trusted
+   not to abuse their privileges, as they can potentially overload the
+   server and cause Denial of Service situations.
+
+Responsibilities of Deployment Managers
+---------------------------------------
+
+Deployment Managers determine access levels and understand the potential
+damage users can cause. Some Deployment Managers may further limit
+access through fine-grained privileges for the **Authenticated UI
+users**. However, these limitations are outside the basic Airflow's
+security model and are at the discretion of Deployment Managers.
+Examples of fine-grained access control include (but are not limited
+to):
+
+-  Limiting login permissions: Restricting the accounts that users can
+   log in with, allowing only specific accounts or roles belonging to
+   access the Airflow system.
+
+-  Access restrictions to views or DAGs: Controlling user access to
+   certain views or specific DAGs, ensuring that users can only view or
+   interact with authorized components.
+
+-  Implementing static code analysis and code review: Introducing
+   processes such as static code analysis and code review as part of the
+   DAG submission pipeline. This helps enforce code quality standards,
+   security checks, and adherence to best practices before DAGs are
+   deployed.

Review Comment:
   Perhaps out of scope for a document focused on Airflow itself? I don't feel 
strongly though, happy to keep it.



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users
+--------------------------------------
+
+The capabilities of **Authenticated UI users** can vary depending on
+whether the users belong to one of the general categories:
+
+1. **Admin users**: They manage and grant permissions to other users,
+   with full access to all UI capabilities. They can potentially execute
+   code on workers by configuring connections and need to be trusted not
+   to abuse these privileges. They have access to sensitive credentials
+   and can modify them. By default, they don't have access to
+   system-level configuration. They should be trusted not to misuse
+   sensitive information accessible through connection configuration.
+   They also have the ability to create a Webserver Denial of Service
+   situation and should be trusted not to misuse this capability.
+
+2. **Connection configuration users**: They configure connections and
+   potentially execute code on workers during DAG execution. Trust is
+   required to prevent misuse of these privileges. They have full access
+   to sensitive credentials stored in connections and can modify them.
+   Access to sensitive information through connection configuration
+   should be trusted not to be abused. They also have the ability to
+   create a Webserver Denial of Service situation and should be trusted
+   not to misuse this capability.
+
+3. **Operations users**: They have access to DAG execution status via
+   the UI. Currently, Airflow lacks full protection for accessing groups
+   of DAGs' history and execution. They can perform actions such as
+   clearing, re-running, triggering DAGs, and changing parameters.
+   Depending on access restrictions, they may also have access to
+   editing variables and viewing Airflow configuration. They should not
+   have access to sensitive system-level information or connections, and
+   they should not be able to access sensitive task information unless
+   deliberately exposed in logs by DAG authors. They should be trusted
+   not to abuse their privileges, as they can potentially overload the
+   server and cause Denial of Service situations.
+
+Responsibilities of Deployment Managers
+---------------------------------------
+
+Deployment Managers determine access levels and understand the potential
+damage users can cause. Some Deployment Managers may further limit
+access through fine-grained privileges for the **Authenticated UI
+users**. However, these limitations are outside the basic Airflow's
+security model and are at the discretion of Deployment Managers.
+Examples of fine-grained access control include (but are not limited
+to):
+
+-  Limiting login permissions: Restricting the accounts that users can
+   log in with, allowing only specific accounts or roles belonging to
+   access the Airflow system.
+
+-  Access restrictions to views or DAGs: Controlling user access to
+   certain views or specific DAGs, ensuring that users can only view or
+   interact with authorized components.
+
+-  Implementing static code analysis and code review: Introducing
+   processes such as static code analysis and code review as part of the
+   DAG submission pipeline. This helps enforce code quality standards,
+   security checks, and adherence to best practices before DAGs are
+   deployed.
+
+These examples showcase ways in which administrators can refine and
+limit user privileges within Airflow, providing tighter control and
+ensuring that users have access only to the necessary components and
+functionalities based on their roles and responsibilities, however the
+fine-grained access control does not provide full isolation and
+separation of access allowing isolation of different user groups in a
+multi-tenant fashion yet. In the future versions of Airflow some of the
+fine-grained access features might become part of the Airflow security
+model. Airflow community works on a multi-tenant model that might
+address some of the fine-grained access components.

Review Comment:
   ```suggestion
   model. The Airflow community is working on a multi-tenant model that might
   address some of the fine-grained access components.
   ```



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users
+--------------------------------------
+
+The capabilities of **Authenticated UI users** can vary depending on
+whether the users belong to one of the general categories:
+
+1. **Admin users**: They manage and grant permissions to other users,
+   with full access to all UI capabilities. They can potentially execute
+   code on workers by configuring connections and need to be trusted not
+   to abuse these privileges. They have access to sensitive credentials
+   and can modify them. By default, they don't have access to
+   system-level configuration. They should be trusted not to misuse
+   sensitive information accessible through connection configuration.
+   They also have the ability to create a Webserver Denial of Service
+   situation and should be trusted not to misuse this capability.
+
+2. **Connection configuration users**: They configure connections and
+   potentially execute code on workers during DAG execution. Trust is
+   required to prevent misuse of these privileges. They have full access
+   to sensitive credentials stored in connections and can modify them.
+   Access to sensitive information through connection configuration
+   should be trusted not to be abused. They also have the ability to
+   create a Webserver Denial of Service situation and should be trusted
+   not to misuse this capability.
+
+3. **Operations users**: They have access to DAG execution status via
+   the UI. Currently, Airflow lacks full protection for accessing groups
+   of DAGs' history and execution. They can perform actions such as
+   clearing, re-running, triggering DAGs, and changing parameters.
+   Depending on access restrictions, they may also have access to
+   editing variables and viewing Airflow configuration. They should not
+   have access to sensitive system-level information or connections, and
+   they should not be able to access sensitive task information unless
+   deliberately exposed in logs by DAG authors. They should be trusted
+   not to abuse their privileges, as they can potentially overload the
+   server and cause Denial of Service situations.
+
+Responsibilities of Deployment Managers
+---------------------------------------
+
+Deployment Managers determine access levels and understand the potential
+damage users can cause. Some Deployment Managers may further limit
+access through fine-grained privileges for the **Authenticated UI
+users**. However, these limitations are outside the basic Airflow's
+security model and are at the discretion of Deployment Managers.
+Examples of fine-grained access control include (but are not limited
+to):
+
+-  Limiting login permissions: Restricting the accounts that users can
+   log in with, allowing only specific accounts or roles belonging to
+   access the Airflow system.
+
+-  Access restrictions to views or DAGs: Controlling user access to
+   certain views or specific DAGs, ensuring that users can only view or
+   interact with authorized components.
+
+-  Implementing static code analysis and code review: Introducing
+   processes such as static code analysis and code review as part of the
+   DAG submission pipeline. This helps enforce code quality standards,
+   security checks, and adherence to best practices before DAGs are
+   deployed.
+
+These examples showcase ways in which administrators can refine and
+limit user privileges within Airflow, providing tighter control and
+ensuring that users have access only to the necessary components and
+functionalities based on their roles and responsibilities, however the
+fine-grained access control does not provide full isolation and
+separation of access allowing isolation of different user groups in a
+multi-tenant fashion yet. In the future versions of Airflow some of the
+fine-grained access features might become part of the Airflow security
+model. Airflow community works on a multi-tenant model that might
+address some of the fine-grained access components.
+
+
+Releasing Airflow with security patches
+---------------------------------------
+
+Apache Airflow uses strict [SemVer](https://semver.org) versioning policy, 
which means that we strive for
+any release of a given ``MAJOR`` Version (version "2" currently) to be 
backwards compatible. When we
+release ``MINOR`` version, the development continues in the ``main`` branch 
where we prepare the next
+``MINOR`` version, but we release ``PATCHLEVEL`` releases with selected 
bugfixes (including security
+bugfixes) cherry-picked to the latest released ``MINOR`` line of Apache 
Airflow. At the moment, when we
+release a new ``MINOR`` version, we stop releasing ``PATCHLEVEL`` releases for 
the previous ``MINOR`` version.
+
+For example, when we released  ``2.6.0`` version on April 30, 2023, until we 
release ``2.7.0`` version,
+all the security patches will be cherry-picked and released in ``2.6.*`` 
versions only. There will be no
+``2.5.*`` versions  released after ``2.6.0`` has been released.

Review Comment:
   ```suggestion
   For example, once we released ``2.6.0`` version on April 30, 2023 all the 
security patches will be cherry-picked and released in ``2.6.*`` versions until 
we release ``2.7.0`` version. There will be no
   ``2.5.*`` versions  released after ``2.6.0`` has been released.
   ```



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users
+--------------------------------------
+
+The capabilities of **Authenticated UI users** can vary depending on
+whether the users belong to one of the general categories:
+
+1. **Admin users**: They manage and grant permissions to other users,
+   with full access to all UI capabilities. They can potentially execute
+   code on workers by configuring connections and need to be trusted not
+   to abuse these privileges. They have access to sensitive credentials
+   and can modify them. By default, they don't have access to
+   system-level configuration. They should be trusted not to misuse
+   sensitive information accessible through connection configuration.
+   They also have the ability to create a Webserver Denial of Service
+   situation and should be trusted not to misuse this capability.
+
+2. **Connection configuration users**: They configure connections and
+   potentially execute code on workers during DAG execution. Trust is
+   required to prevent misuse of these privileges. They have full access
+   to sensitive credentials stored in connections and can modify them.
+   Access to sensitive information through connection configuration
+   should be trusted not to be abused. They also have the ability to
+   create a Webserver Denial of Service situation and should be trusted
+   not to misuse this capability.
+
+3. **Operations users**: They have access to DAG execution status via
+   the UI. Currently, Airflow lacks full protection for accessing groups
+   of DAGs' history and execution. They can perform actions such as
+   clearing, re-running, triggering DAGs, and changing parameters.
+   Depending on access restrictions, they may also have access to
+   editing variables and viewing Airflow configuration. They should not
+   have access to sensitive system-level information or connections, and
+   they should not be able to access sensitive task information unless
+   deliberately exposed in logs by DAG authors. They should be trusted
+   not to abuse their privileges, as they can potentially overload the
+   server and cause Denial of Service situations.
+
+Responsibilities of Deployment Managers
+---------------------------------------
+
+Deployment Managers determine access levels and understand the potential
+damage users can cause. Some Deployment Managers may further limit
+access through fine-grained privileges for the **Authenticated UI
+users**. However, these limitations are outside the basic Airflow's
+security model and are at the discretion of Deployment Managers.
+Examples of fine-grained access control include (but are not limited
+to):
+
+-  Limiting login permissions: Restricting the accounts that users can
+   log in with, allowing only specific accounts or roles belonging to
+   access the Airflow system.
+
+-  Access restrictions to views or DAGs: Controlling user access to
+   certain views or specific DAGs, ensuring that users can only view or
+   interact with authorized components.
+
+-  Implementing static code analysis and code review: Introducing
+   processes such as static code analysis and code review as part of the
+   DAG submission pipeline. This helps enforce code quality standards,
+   security checks, and adherence to best practices before DAGs are
+   deployed.
+
+These examples showcase ways in which administrators can refine and
+limit user privileges within Airflow, providing tighter control and
+ensuring that users have access only to the necessary components and
+functionalities based on their roles and responsibilities, however the
+fine-grained access control does not provide full isolation and
+separation of access allowing isolation of different user groups in a
+multi-tenant fashion yet. In the future versions of Airflow some of the
+fine-grained access features might become part of the Airflow security
+model. Airflow community works on a multi-tenant model that might
+address some of the fine-grained access components.
+
+
+Releasing Airflow with security patches
+---------------------------------------
+
+Apache Airflow uses strict [SemVer](https://semver.org) versioning policy, 
which means that we strive for

Review Comment:
   ```suggestion
   Apache Airflow uses a strict [SemVer](https://semver.org) versioning policy, 
which means that we strive for
   ```



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types

Review Comment:
   in the .github/security.rst titles only had the first word capitalized 
(other than proper nouns of course) so we should probably follow the same in 
this one?:
   
   ```suggestion
   Airflow security model - user types
   ```



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users
+--------------------------------------
+
+The capabilities of **Authenticated UI users** can vary depending on
+whether the users belong to one of the general categories:
+
+1. **Admin users**: They manage and grant permissions to other users,
+   with full access to all UI capabilities. They can potentially execute
+   code on workers by configuring connections and need to be trusted not
+   to abuse these privileges. They have access to sensitive credentials
+   and can modify them. By default, they don't have access to
+   system-level configuration. They should be trusted not to misuse
+   sensitive information accessible through connection configuration.
+   They also have the ability to create a Webserver Denial of Service
+   situation and should be trusted not to misuse this capability.
+
+2. **Connection configuration users**: They configure connections and
+   potentially execute code on workers during DAG execution. Trust is
+   required to prevent misuse of these privileges. They have full access
+   to sensitive credentials stored in connections and can modify them.
+   Access to sensitive information through connection configuration
+   should be trusted not to be abused. They also have the ability to
+   create a Webserver Denial of Service situation and should be trusted
+   not to misuse this capability.
+
+3. **Operations users**: They have access to DAG execution status via
+   the UI. Currently, Airflow lacks full protection for accessing groups
+   of DAGs' history and execution. They can perform actions such as
+   clearing, re-running, triggering DAGs, and changing parameters.
+   Depending on access restrictions, they may also have access to
+   editing variables and viewing Airflow configuration. They should not
+   have access to sensitive system-level information or connections, and
+   they should not be able to access sensitive task information unless
+   deliberately exposed in logs by DAG authors. They should be trusted
+   not to abuse their privileges, as they can potentially overload the
+   server and cause Denial of Service situations.
+
+Responsibilities of Deployment Managers
+---------------------------------------
+
+Deployment Managers determine access levels and understand the potential
+damage users can cause. Some Deployment Managers may further limit
+access through fine-grained privileges for the **Authenticated UI
+users**. However, these limitations are outside the basic Airflow's
+security model and are at the discretion of Deployment Managers.
+Examples of fine-grained access control include (but are not limited
+to):
+
+-  Limiting login permissions: Restricting the accounts that users can
+   log in with, allowing only specific accounts or roles belonging to
+   access the Airflow system.
+
+-  Access restrictions to views or DAGs: Controlling user access to
+   certain views or specific DAGs, ensuring that users can only view or
+   interact with authorized components.
+
+-  Implementing static code analysis and code review: Introducing
+   processes such as static code analysis and code review as part of the
+   DAG submission pipeline. This helps enforce code quality standards,
+   security checks, and adherence to best practices before DAGs are
+   deployed.
+
+These examples showcase ways in which administrators can refine and
+limit user privileges within Airflow, providing tighter control and
+ensuring that users have access only to the necessary components and
+functionalities based on their roles and responsibilities, however the
+fine-grained access control does not provide full isolation and
+separation of access allowing isolation of different user groups in a
+multi-tenant fashion yet. In the future versions of Airflow some of the
+fine-grained access features might become part of the Airflow security
+model. Airflow community works on a multi-tenant model that might
+address some of the fine-grained access components.
+
+
+Releasing Airflow with security patches
+---------------------------------------
+
+Apache Airflow uses strict [SemVer](https://semver.org) versioning policy, 
which means that we strive for
+any release of a given ``MAJOR`` Version (version "2" currently) to be 
backwards compatible. When we
+release ``MINOR`` version, the development continues in the ``main`` branch 
where we prepare the next
+``MINOR`` version, but we release ``PATCHLEVEL`` releases with selected 
bugfixes (including security
+bugfixes) cherry-picked to the latest released ``MINOR`` line of Apache 
Airflow. At the moment, when we
+release a new ``MINOR`` version, we stop releasing ``PATCHLEVEL`` releases for 
the previous ``MINOR`` version.
+
+For example, when we released  ``2.6.0`` version on April 30, 2023, until we 
release ``2.7.0`` version,
+all the security patches will be cherry-picked and released in ``2.6.*`` 
versions only. There will be no
+``2.5.*`` versions  released after ``2.6.0`` has been released.
+
+This means that in order to apply security fixes with Apache Airflow software 
released by us, you
+MUST upgrade to the latest ``MINOR`` version of Airflow.
+
+Releasing Airflow Providers with security patches

Review Comment:
   ```suggestion
   Releasing Airflow providers with security patches
   ```



##########
docs/apache-airflow/security/index.rst:
##########
@@ -0,0 +1,165 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+Security
+========
+
+.. toctree::
+    :maxdepth: 1
+    :glob:
+
+    *
+    secrets/index
+
+
+This document describes Airflow's security model from the perspective of
+the Airflow user. It is intended to help users understand the security
+model and make informed decisions about how to deploy and manage Airflow.
+If you would like to know how to report security vulnerabilities and how
+security reports are handled by the security team of Airflow, head to
+`Airflow's Security Policy 
<https://github.com/apache/airflow/security/policy>`_.
+
+Airflow Security Model - user types
+-----------------------------------
+
+The Airflow security model involves different types of users with
+varying access and capabilities:
+
+1. **Deployment Managers**: They have the highest level of access and
+   control. They install and configure Airflow, make decisions about
+   technologies and permissions. They can potentially delete the entire
+   installation and have access to all credentials. Deployment Managers
+   can also decide to keep audits, backups and copies of information
+   outside of Airflow, which are not covered by Airflow's security
+   model.
+
+2. **DAG Authors**: They can upload, modify, and delete DAG files. The
+   code in DAG files is executed on workers. Therefore, DAG authors can create
+   and change code executed on workers and potentially access the credentials
+   that DAG code uses to access external systems. DAG Authors have full access
+   to the metadata database and internal audit logs.
+
+3. **Authenticated UI users**: They have access to the UI and API. Admin
+   users can manage permissions and execute code on workers. Connection
+   configuration users can configure connections and execute code on
+   workers. Operations users have access to DAG execution status. Trust
+   is crucial to prevent abuse and Denial of Service attacks.
+
+4. **Non-authenticated UI users**: Airflow doesn't support
+   unauthenticated users by default. If allowed, vulnerabilities must be
+   addressed by the Deployment Manager.
+
+Capabilities of Authenticated UI users
+--------------------------------------
+
+The capabilities of **Authenticated UI users** can vary depending on
+whether the users belong to one of the general categories:
+
+1. **Admin users**: They manage and grant permissions to other users,
+   with full access to all UI capabilities. They can potentially execute
+   code on workers by configuring connections and need to be trusted not
+   to abuse these privileges. They have access to sensitive credentials
+   and can modify them. By default, they don't have access to
+   system-level configuration. They should be trusted not to misuse
+   sensitive information accessible through connection configuration.
+   They also have the ability to create a Webserver Denial of Service
+   situation and should be trusted not to misuse this capability.
+
+2. **Connection configuration users**: They configure connections and
+   potentially execute code on workers during DAG execution. Trust is
+   required to prevent misuse of these privileges. They have full access
+   to sensitive credentials stored in connections and can modify them.
+   Access to sensitive information through connection configuration
+   should be trusted not to be abused. They also have the ability to
+   create a Webserver Denial of Service situation and should be trusted
+   not to misuse this capability.
+
+3. **Operations users**: They have access to DAG execution status via
+   the UI. Currently, Airflow lacks full protection for accessing groups
+   of DAGs' history and execution. They can perform actions such as
+   clearing, re-running, triggering DAGs, and changing parameters.
+   Depending on access restrictions, they may also have access to
+   editing variables and viewing Airflow configuration. They should not
+   have access to sensitive system-level information or connections, and
+   they should not be able to access sensitive task information unless
+   deliberately exposed in logs by DAG authors. They should be trusted
+   not to abuse their privileges, as they can potentially overload the
+   server and cause Denial of Service situations.
+
+Responsibilities of Deployment Managers
+---------------------------------------
+
+Deployment Managers determine access levels and understand the potential
+damage users can cause. Some Deployment Managers may further limit
+access through fine-grained privileges for the **Authenticated UI
+users**. However, these limitations are outside the basic Airflow's
+security model and are at the discretion of Deployment Managers.
+Examples of fine-grained access control include (but are not limited
+to):
+
+-  Limiting login permissions: Restricting the accounts that users can
+   log in with, allowing only specific accounts or roles belonging to
+   access the Airflow system.
+
+-  Access restrictions to views or DAGs: Controlling user access to
+   certain views or specific DAGs, ensuring that users can only view or
+   interact with authorized components.
+
+-  Implementing static code analysis and code review: Introducing
+   processes such as static code analysis and code review as part of the
+   DAG submission pipeline. This helps enforce code quality standards,
+   security checks, and adherence to best practices before DAGs are
+   deployed.
+
+These examples showcase ways in which administrators can refine and
+limit user privileges within Airflow, providing tighter control and
+ensuring that users have access only to the necessary components and
+functionalities based on their roles and responsibilities, however the
+fine-grained access control does not provide full isolation and
+separation of access allowing isolation of different user groups in a
+multi-tenant fashion yet. In the future versions of Airflow some of the
+fine-grained access features might become part of the Airflow security
+model. Airflow community works on a multi-tenant model that might
+address some of the fine-grained access components.
+
+
+Releasing Airflow with security patches
+---------------------------------------
+
+Apache Airflow uses strict [SemVer](https://semver.org) versioning policy, 
which means that we strive for
+any release of a given ``MAJOR`` Version (version "2" currently) to be 
backwards compatible. When we
+release ``MINOR`` version, the development continues in the ``main`` branch 
where we prepare the next

Review Comment:
   ```suggestion
   release a ``MINOR`` version, the development continues in the ``main`` 
branch where we prepare the next
   ```



-- 
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.

To unsubscribe, e-mail: [email protected]

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

Reply via email to