迁移到新 MWAA 环境的关键注意事项 - Amazon Managed Workflows for Apache Airflow

迁移到新 MWAA 环境的关键注意事项

详细了解在计划将 Apache Airflow 工作负载迁移到 Amazon MWAA 时的关键注意事项,例如身份验证和 Amazon MWAA 执行角色。

身份验证

Amazon MWAA 使用 AWS Identity and Access Management (IAM) 来控制对 Apache Airflow UI 的访问权限。您必须创建和管理 IAM 策略,这些策略授予 Apache Airflow 用户访问 Web 服务器和管理 DAG 的权限。您可以跨不同账户使用 IAM 管理 Apache Airflow 默认角色的身份验证和授权。

通过创建自定义 Airflow 角色并将其映射到 IAM 主体,您可以进一步管理和限制 Apache Airflow 用户仅访问部分工作流程 DAG。有关更多信息和分步教程,请参阅教程:限制 Amazon MWAA 用户对部分 DAG 的访问权限

您也可以配置联合身份以访问 Amazon MWAA。有关更多信息,请参阅以下内容。

执行角色

Amazon MWAA 使用执行角色向环境授予访问其他 AWS 服务的权限。您可以通过向角色添加相关权限来为工作流程提供 AWS 服务访问权限。如果您在首次创建环境时选择默认选项来创建新的执行角色,则 Amazon MWAA 会为该角色附加所需的最低权限,但 CloudWatch Logs 除外,Amazon MWAA 会自动为其添加所有日志组。

一旦创建了执行角色,Amazon MWAA 就无法代表您管理其权限策略。要更新执行角色,必须根据需要编辑策略以添加和删除权限。例如,您可以将 Amazon MWAA 环境 与 AWS Secrets Manager 集成作为后端,以安全地存储密钥和连接字符串,以便在 Apache Airflow 工作流程中使用。为此,请将以下权限策略附加到环境的执行角色。

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetResourcePolicy", "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:*" }, { "Effect": "Allow", "Action": "secretsmanager:ListSecrets", "Resource": "*" } ] }

与其他 AWS 服务的集成遵循类似的模式:您将相关的权限策略添加到 Amazon MWAA 执行角色中,向 Amazon MWAA 授予访问该服务的权限。有关管理 Amazon MWAA 执行角色的更多信息以及要查看更多示例,请访问《Amazon MWAA 用户指南》中的 Amazon MWAA 执行角色