diff --git a/providers/fab/src/airflow/providers/fab/auth_manager/cli_commands/permissions_command.py b/providers/fab/src/airflow/providers/fab/auth_manager/cli_commands/permissions_command.py index a535050750c64..be26ed6f55784 100644 --- a/providers/fab/src/airflow/providers/fab/auth_manager/cli_commands/permissions_command.py +++ b/providers/fab/src/airflow/providers/fab/auth_manager/cli_commands/permissions_command.py @@ -50,7 +50,11 @@ def cleanup_dag_permissions(dag_id: str, session: Session = NEW_SESSION) -> None from sqlalchemy import delete, select from airflow.providers.fab.auth_manager.models import Permission, Resource, assoc_permission_role - from airflow.security.permissions import RESOURCE_DAG_PREFIX, RESOURCE_DAG_RUN, RESOURCE_DETAILS_MAP + from airflow.providers.fab.www.security.permissions import ( + RESOURCE_DAG_PREFIX, + RESOURCE_DAG_RUN, + RESOURCE_DETAILS_MAP, + ) # Clean up specific DAG permissions dag_resources = session.scalars( @@ -107,7 +111,7 @@ def permissions_cleanup(args): from airflow.models import DagModel from airflow.providers.fab.auth_manager.cli_commands.utils import get_application_builder from airflow.providers.fab.auth_manager.models import Resource - from airflow.security.permissions import ( + from airflow.providers.fab.www.security.permissions import ( RESOURCE_DAG_PREFIX, RESOURCE_DAG_RUN, RESOURCE_DETAILS_MAP, diff --git a/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py b/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py index 464ce6b1ea5b1..28eff1ccdf03f 100644 --- a/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py +++ b/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py @@ -101,7 +101,6 @@ from airflow.providers.fab.www.security import permissions from airflow.providers.fab.www.security_manager import AirflowSecurityManagerV2 from airflow.providers.fab.www.session import AirflowDatabaseSessionInterface -from airflow.security.permissions import RESOURCE_BACKFILL if TYPE_CHECKING: from airflow.providers.fab.www.security.permissions import ( @@ -236,7 +235,7 @@ class FabAirflowSecurityManagerOverride(AirflowSecurityManagerV2): (permissions.ACTION_CAN_READ, permissions.RESOURCE_DAG_WARNING), (permissions.ACTION_CAN_READ, RESOURCE_ASSET), (permissions.ACTION_CAN_READ, RESOURCE_ASSET_ALIAS), - (permissions.ACTION_CAN_READ, RESOURCE_BACKFILL), + (permissions.ACTION_CAN_READ, permissions.RESOURCE_BACKFILL), (permissions.ACTION_CAN_READ, permissions.RESOURCE_CLUSTER_ACTIVITY), (permissions.ACTION_CAN_READ, permissions.RESOURCE_POOL), (permissions.ACTION_CAN_READ, permissions.RESOURCE_IMPORT_ERROR), @@ -308,9 +307,9 @@ class FabAirflowSecurityManagerOverride(AirflowSecurityManagerV2): (permissions.ACTION_CAN_DELETE, permissions.RESOURCE_XCOM), (permissions.ACTION_CAN_CREATE, RESOURCE_ASSET), (permissions.ACTION_CAN_DELETE, RESOURCE_ASSET), - (permissions.ACTION_CAN_CREATE, RESOURCE_BACKFILL), - (permissions.ACTION_CAN_EDIT, RESOURCE_BACKFILL), - (permissions.ACTION_CAN_DELETE, RESOURCE_BACKFILL), + (permissions.ACTION_CAN_CREATE, permissions.RESOURCE_BACKFILL), + (permissions.ACTION_CAN_EDIT, permissions.RESOURCE_BACKFILL), + (permissions.ACTION_CAN_DELETE, permissions.RESOURCE_BACKFILL), ] # [END security_op_perms] diff --git a/providers/fab/tests/unit/fab/auth_manager/cli_commands/test_permissions_command.py b/providers/fab/tests/unit/fab/auth_manager/cli_commands/test_permissions_command.py index 234a18ef6175d..0d570a1e32100 100644 --- a/providers/fab/tests/unit/fab/auth_manager/cli_commands/test_permissions_command.py +++ b/providers/fab/tests/unit/fab/auth_manager/cli_commands/test_permissions_command.py @@ -256,7 +256,7 @@ def test_cleanup_dag_permissions_removes_specific_dag_resources(self): cleanup_dag_permissions, ) from airflow.providers.fab.auth_manager.models import Action, Permission, Resource - from airflow.security.permissions import RESOURCE_DAG_PREFIX + from airflow.providers.fab.www.security.permissions import RESOURCE_DAG_PREFIX from airflow.utils.session import create_session with create_session() as session: @@ -309,7 +309,7 @@ def test_cleanup_dag_permissions_handles_resources_without_permissions(self): cleanup_dag_permissions, ) from airflow.providers.fab.auth_manager.models import Resource - from airflow.security.permissions import RESOURCE_DAG_PREFIX + from airflow.providers.fab.www.security.permissions import RESOURCE_DAG_PREFIX from airflow.utils.session import create_session with create_session() as session: @@ -330,7 +330,7 @@ def test_cleanup_dag_permissions_with_default_session(self): cleanup_dag_permissions, ) from airflow.providers.fab.auth_manager.models import Resource - from airflow.security.permissions import RESOURCE_DAG_PREFIX + from airflow.providers.fab.www.security.permissions import RESOURCE_DAG_PREFIX from airflow.utils.session import create_session # Setup test data