你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
将 AWS 帐户连接到 Microsoft Defender for Cloud
由于云工作负载通常跨多个云平台分布,因此云安全服务也需要如此。 Microsoft Defender for Cloud 可保护 Azure、Amazon Web Services (AWS) 和 Google Cloud Platform (GCP) 中的工作负载。
要保护基于 AWS 的资源,可以使用以下任一方式连接 AWS 帐户:
本机云连接器(推荐)- 提供到 AWS 帐户的无代理连接,你可使用 Defender for Cloud 的 Defender 计划扩展该连接以保护 AWS 资源:
- 云安全态势管理 (CSPM) 根据特定于 AWS 的安全建议来评估 AWS 资源,并通过安全功能分数反映安全状况。 资产清单使你可在一个位置查看所有受保护的 AWS 资源。 法规合规性仪表板显示是否符合特定于 AWS 的内置标准,包括 AWS CIS、AWS PCI DSS 和 AWS 基础安全最佳做法。
- Microsoft Defender for Servers 向受支持的 Windows 和 Linux EC2 实例提供威胁检测和高级防御功能。
- Microsoft Defender for Containers 向受支持的 Amazon EKS 群集提供威胁检测和高级防御功能。
- Microsoft Defender for SQL 为在 AWS EC2、AWS RDS Custom for SQL Server 上运行的 SQL Server 提供威胁检测和高级防御功能。
经典云连接器 - 需要在 AWS 帐户中进行配置才能创建 Defender for Cloud 可用于连接到 AWS 环境的用户。 如果你有经典云连接器,我们建议删除这些连接器并使用本机连接器重新连接到帐户。 同时使用经典连接器和本机连接器可能会生成重复的建议。
有关 Defender for Cloud 可为 AWS 资源提供的所有建议的参考列表,请参阅 AWS 资源的安全性建议 - 参考指南。
在此屏幕截图中,可以看到 Defender for Cloud 的“概述”仪表板中显示了 AWS 帐户。
可观看 Defender for Cloud 的实际应用视频系列中的该视频了解详细信息:
可用性
| 方面 | 详细信息 |
|---|---|
| 发布状态: | 正式发布版 (GA) |
| 定价: | “CSPM 计划”是免费的。 Defender for SQL 计划采用与 Azure 资源相同的价格计费。 Defender for Containers 计划在预览期间免费。 此后,会按与 Azure 资源相同的价格对 AWS 进行计费。 对于使用已启用 Azure Arc 的服务器连接到 Azure 的每台 AWS 计算机,Defender for Servers 计划按与 Azure 计算机的 Microsoft Defender for Servers 计划相同的价格计费。 如果 AWS EC2 未部署 Azure Arc 代理,则不需要为该计算机付费。 |
| 所需角色和权限: | 相关 Azure 订阅的参与者权限。 AWS 帐户上的管理员。 |
| 云: |
先决条件
本机云连接器需要:
访问 AWS 账户。
若要启用 Defender for Containers 计划,需要:
- 至少一个有权访问 EKS K8s API 服务器的 Amazon EKS 群集。 如果需要创建新的 EKS 群集,请按照 Amazon EKS 入门 - eksctl 中的说明操作。
- 在群集区域创建新 SQS 队列、Kinesis Fire Hose 传送流和 S3 存储桶的资源容量。
若要启用 Defender for SQL 计划,需要满足以下条件:
已在订阅上启用 Microsoft Defender for SQL。 了解如何在所有数据库上启用保护。
一个活动的 AWS 帐户,该帐户具有运行 SQL Server 或 RDS Custom for SQL Server 的 EC2 实例。
在 EC2 实例/RDS Custom for SQL Server 上安装 Azure Arc for servers。
(推荐)使用自动预配过程在所有现有和未来 EC2 实例上安装 Azure Arc。
自动预配由 AWS Systems Manager (SSM) 通过 SSM 代理托管。 某些 Amazon 计算机映像 (AMIS) 已经预安装了 SSM 代理。 如果已预安装了 SSM 代理,AMI 在预安装了 SSM 代理的 AMI 中列出。 如果你的 EC2 实例没有 SSM 代理,则需要按照 Amazon 提供的以下相关说明之一进行安装:
注意
若要启用 Azure Arc 自动预配,你需要在相关 Azure 订阅上具有“所有者”权限。
应在已连接 Arc 的计算机上启用其他扩展。
Log Analytics (LA) 代理在 Arc 计算机上,并确保所选工作区已安装安全解决方案。 LA 代理当前在订阅级别中配置。 同一订阅下的所有多云 AWS 帐户和 GCP 项目都将继承订阅设置。
了解如何在订阅上配置自动预配。
若要启用 Defender for Servers 计划,需要满足以下条件:
已在订阅上启用 Microsoft Defender for Servers。 在启用增强的安全功能中了解如何启用计划。
一个具有 EC2 实例的有效 AWS 帐户。
已在 EC2 实例上安装 Azure Arc for servers。
(推荐)使用自动预配过程在所有现有和未来 EC2 实例上安装 Azure Arc。
自动预配由 AWS Systems Manager (SSM) 通过 SSM 代理托管。 某些 Amazon 计算机映像 (AMIS) 已经预安装了 SSM 代理。 如果是这种情况,他们的 AMI 将列在预装了 SSM 代理的 AMI 中。 如果你的 EC2 实例没有 SSM 代理,则需要按照 Amazon 提供的以下相关说明之一进行安装:
注意
若要启用 Azure Arc 自动预配,你需要在相关 Azure 订阅上具有所有者权限。
- 若要在现有和将来的 EC2 实例上手动安装 Azure Arc,请使用 EC2 实例应连接到 Azure Arc 建议标识未安装 Azure Arc 的实例。
应在已连接 Arc 的计算机上启用其他扩展。
用于终结点的 Microsoft Defender
VA 解决方案 (TVM/Qualys)
Arc 计算机上的 Log Analytics (LA) 代理。 确保所选工作区已安装安全解决方案。
LA 代理当前在订阅级别配置,因此,同一订阅下的所有多云帐户和项目(来自 AWS 和 GCP)都将继承与 LA 代理相关的订阅设置。
了解如何在订阅上配置自动预配。
注意
Defender for Servers 将标记分配给 AWS 资源,以管理自动预配过程。 必须将这些标签正确分配给资源,以便 Defender for Cloud 管理资源:AccountId、Cloud、InstanceId、MDFCSecurityConnector
连接到你的 AWS 帐户
要使用本机连接器将 AWS 帐户连接到 Defender for Cloud,请执行以下操作:
如果你有任何经典连接器,请将其删除。
同时使用经典连接器和本机连接器可能会生成重复的建议。
登录到 Azure 门户。
导航到“Defender for Cloud”>“环境设置”。
选择“添加环境”>“Amazon Web Services” 。
输入 AWS 帐户的详细信息(包括连接器资源的存储位置)。
(可选)选择“管理帐户”以创建管理帐户的连接器。 将为每个在提供的管理帐户下发现的成员帐户创建连接器。 将为所有新加入的帐户启用自动预配。
然后选择“下一步: 选择计划”。
注意
每个计划都有自己的权限要求,可能会产生费用。
重要
若要显示建议的当前状态,CSPM 计划将每日多次查询 AWS 资源 API。 这些只读 API 调用不会产生费用,但如果已为读取事件启用痕迹,它们便会在 CloudTrail 中注册。 正如 AWS 文档中所述,保留一条痕迹不会产生额外费用。 如果要将数据从 AWS 中导出(例如导出到外部 SIEM),这一增加的调用量也可能增加引入成本。 在此类情况下,我们建议筛选掉来自 Cloud for Cloud 用户或角色 ARN:
arn:aws:iam::[accountId]:role/CspmMonitorAws(这是默认的角色名称,请确认帐户上配置的角色名称)的只读调用。默认情况下,“服务器”计划设置为“开”。 这是将 Defender for server 的覆盖范围扩展到 AWS EC2 所必需的。
- (可选)选择“配置”,根据需要编辑配置。
默认情况下,“容器”计划设置为“开”。 这是使 Defender for Containers 保护 AWS EKS 群集所必需的。 确保已满足 Defender for Containers 计划的网络要求。
注意
应安装已启用 Azure Arc 的 Kubernetes、Defender Arc 扩展和 Azure Policy Arc 扩展。 使用专用 Defender for Cloud 建议以部署扩展(和 Arc,如有必要),请参阅保护 Amazon Elastic Kubernetes 服务群集中的说明。
- (可选)选择“配置”,根据需要编辑配置。 如果选择禁用此配置,将禁用
Threat detection (control plane)功能。 详细了解功能可用性。
- (可选)选择“配置”,根据需要编辑配置。 如果选择禁用此配置,将禁用
默认情况下,“数据库”计划设置为“开”。 需要将 Defender for SQL 的覆盖范围扩展到 AWS EC2 和 RDS Custom for SQL Server。
- (可选)选择“配置”,根据需要编辑配置。 建议将其设置为默认配置。
选择“下一步: 配置访问权限”。
下载 CloudFormation 模板。
使用下载的 CloudFormation 模板,根据屏幕上的说明在 AWS 中创建堆栈。 如果要加入管理帐户,则需要以 Stack 和 StackSet 的形式运行 CloudFormation 模板。 将在加入后最多 24 小时为成员帐户创建连接器。
选择“下一步: 审阅并生成”。
选择“创建” 。
Defender for Cloud 将立即开始扫描 AWS 资源,并将在几个小时内显示安全性建议。 有关 Defender for Cloud 可为 AWS 资源提供的所有建议的参考列表,请参阅 AWS 资源的安全性建议 - 参考指南。
删除“经典”连接器
如果存在使用经典云连接器体验创建的现有连接器,请先删除它们:
登录到 Azure 门户。
导航到“Defender for Cloud”>“环境设置”。
选择用于切换回经典连接器体验的选项。
对于每个连接器,选择行末尾的省略号按钮“...”,然后选择“删除”。
在 AWS 上,删除角色 ARN 或为集成创建的凭据。
可用性
| 方面 | 详细信息 |
|---|---|
| 发布状态: | 正式发布版 (GA) |
| 定价: | 需要 Microsoft Defender for Servers 计划 2 |
| 所需角色和权限: | 相关 Azure 订阅上的“所有者”角色 如果所有者提供服务主体详细信息,则参与者也可连接一个 AWS 帐户 |
| 云: |
连接到你的 AWS 帐户
按照以下步骤创建 AWS 云连接器。
步骤 1。 设置 AWS 安全中心:
若要查看针对多个区域的安全建议,请针对每个相关区域重复以下步骤。
重要
如果使用的是 AWS 管理帐户,请重复以下三个步骤,在所有相关区域中配置管理帐户和所有连接的成员帐户
- 启用 AWS Config。
- 启用 AWS 安全中心。
- 验证数据是否流向安全中心。 首次启用安全中心时,可能需要几个小时才能获得数据。
步骤 2. 在 AWS 中为 Defender for Cloud 设置身份验证
Defender for Cloud 可以通过两种方法向 AWS 进行身份验证:
- 为 Defender for Cloud 创建 IAM 角色(推荐) - 此方法最安全
- Defender for Cloud 的 AWS 用户 - 安全性相对较低的选项(如果不启用 IAM)
为 Defender for Cloud 创建 IAM 角色
在 Amazon Web Services 控制台中,在“安全性、标识与符合性”下选择“IAM”。&
依次选择“角色”、“创建角色” 。
选择“另一个 AWS 帐户”。
输入以下详细信息:
- 帐户 ID - 输入 Defender for Cloud 的 AWS 连接器页中显示的 Microsoft 帐户 ID (158177204117) 。
- 需要外部 ID - 应选择
- 外部 ID - 输入 Defender for Cloud 的 AWS 连接器页中显示的订阅 ID
选择“下一步” 。
在“附加权限策略”部分,选择以下 AWS 托管策略:
- SecurityAudit (
arn:aws:iam::aws:policy/SecurityAudit) - AmazonSSMAutomationRole (
arn:aws:iam::aws:policy/service-role/AmazonSSMAutomationRole) - AWSSecurityHubReadOnlyAccess (
arn:aws:iam::aws:policy/AWSSecurityHubReadOnlyAccess)
- SecurityAudit (
选择性地添加标记。 将标记添加到用户不会影响连接。
选择“下一步” 。
在“角色”列表中,选择创建的角色
保存 Amazon 资源名称 (ARN) 待稍后使用。
为 Defender for Cloud 创建 AWS 用户
打开“用户”选项卡,然后选择“添加用户”。
在“详细信息”步骤中,输入 Defender for Cloud 的用户名,并确保为“AWS 访问类型”选择“编程访问” 。
选择“下一步: 权限”。
选择“直接附加现有策略”并应用以下策略:
- SecurityAudit
- AmazonSSMAutomationRole
- AWSSecurityHubReadOnlyAccess
在完成时选择“下一步: 标记”。 选择性地添加标记。 将标记添加到用户不会影响连接。
选择“查看”。
保存自动生成的访问密钥 ID 和机密访问密钥 CSV 文件以供稍后使用。
查看摘要,然后选择“创建用户”。
步骤 3. 配置 SSM 代理
跨 AWS 资源自动执行任务需要使用 AWS Systems Manager。 如果 EC2 实例没有 SSM 代理,请按照 Amazon 的相关说明进行操作:
步骤 4. 完成 Azure Arc 先决条件
确保注册适当的 Azure 资源提供程序:
- Microsoft.HybridCompute
- Microsoft.GuestConfiguration
为大规模加入创建服务主体。 在你要用于完成加入过程的订阅上,以所有者身份按照为大规模加入创建服务主体中的说明创建一个服务主体用于 Azure Arc 加入过程。
步骤 5。 将 AWS 连接到 Defender for Cloud
在 Defender for Cloud 的菜单中,打开“环境设置”,然后选择切换回经典连接器体验的选项。
选择“添加 AWS 帐户”。
在“AWS 身份验证”选项卡中配置选项:
- 在“显示名称”中输入连接器的显示名称。
- 确认订阅是正确的。 这是将要包含连接器和 AWS 安全中心建议的订阅。
- 根据身份验证选项,在步骤 2:在 AWS 中为 Defender for Cloud 设置身份验证中选择:
选择“假设角色”,然后粘贴来自为 Defender for Cloud 创建 IAM 角色的 ARN。
OR
选择“凭据”,并粘贴在为 Defender for Cloud 创建 AWS 用户中保存的 .csv 文件中的“访问密钥”和“密钥” 。
选择“下一步” 。
在“Azure Arc 配置”选项卡中配置选项:
Defender for Cloud 在连接的 AWS 帐户中发现 EC2 实例,并使用 SSM 将其加入 Azure Arc。
提示
有关受支持的操作系统的列表,请参阅常见问题解答中的哪些操作系统支持我的 EC2 实例?。
选择要在所选订阅中将所发现的 AWS EC2 加入到其中的资源组和 Azure 区域。
在“服务主体 ID”和“服务主体客户端机密”中输入 Azure Arc 的相应信息,如此处的创建服务主体以用于大规模载入中所述
如果计算机是通过代理服务器连接到 internet 的,请指定计算机用来与代理服务器通信的代理服务器 IP 地址或名称以及端口号。 按格式
http://<proxyURL>:<proxyport>输入相应值选择“查看 + 创建” 。
查看摘要信息
“标记”部分会列出将自动为每个载入的 EC2 创建的所有 Azure 标记及其相关详细信息,以便于在 Azure 中轻松识别它。
请参阅使用标记整理 Azure 资源和管理层次结构,详细了解 Azure 标记。
步骤 6。 确认
成功创建连接器并正确配置 AWS 安全中心后:
- Defender for Cloud 扫描要使用 AWS EC2 实例的环境,将其加入 Azure Arc,以便能够安装 Log Analytics 代理、提供威胁防护和安全建议。
- Defender for Cloud 服务每隔 6 小时扫描一次新的 AWS EC2 实例,并根据配置将其加入。
- Defender for Cloud 的法规合规性仪表板中会显示 AWS CIS 标准。
- 如果启用了安全中心策略,加入过程完成 5-10 分钟后,Defender for Cloud 门户和合规性仪表板中会显示建议。
监视 AWS 资源
正如前面的屏幕截图所示,Defender for Cloud 的安全建议页会显示 AWS 资源。 可以使用环境筛选器体验 Defender for Cloud 的多云功能:同时查看 Azure、AWS 和 GCP 资源的建议。
若要按资源类型查看资源的所有活动建议,可使用 Defender for Cloud 的“资产清单”页,并筛选到所需的 AWS 资源类型:
常见问题解答 - Defender for Cloud 中的 AWS
哪些操作系统支持我的 EC2 实例?
有关预安装了 SSM 代理的 AMI 列表,请参阅 AWS 文档中的此页。
对于其他操作系统,应使用以下说明手动安装 SSM 代理:
对于 CSPM 计划,需要哪些 IAM 权限才能发现 AWS 资源?
需要以下 IAM 权限才能发现 AWS 资源:
| DataCollector | AWS 权限 |
|---|---|
| API Gateway | apigateway:GET |
| 应用程序自动缩放 | application-autoscaling:Describe* |
| 自动缩放 | autoscaling-plans:Describe* autoscaling:Describe* |
| 证书管理器 | acm-pca:Describe* acm-pca:List* acm:Describe* <br>acm:List* |
| CloudFormation | cloudformation:Describe* cloudformation:List* |
| CloudFront | cloudfront:DescribeFunction cloudfront:GetDistribution cloudfront:GetDistributionConfig cloudfront:List* |
| CloudTrail | cloudtrail:Describe* cloudtrail:GetEventSelectors cloudtrail:List* cloudtrail:LookupEvents |
| CloudWatch | cloudwatch:Describe* cloudwatch:List* |
| CloudWatch 日志 | logs:DescribeLogGroups logs:DescribeMetricFilters |
| CodeBuild | codebuild:DescribeCodeCoverages codebuild:DescribeTestCases codebuild:List* |
| 配置服务 | config:Describe* config:List* |
| DMS - 数据库迁移服务 | dms:Describe* dms:List* |
| DAX | dax:Describe* |
| DynamoDB | dynamodb:Describe* dynamodb:List* |
| Ec2 | ec2:Describe* ec2:GetEbsEncryptionByDefault |
| ECR | ecr:Describe* ecr:List* |
| ECS | ecs:Describe* ecs:List* |
| EFS | elasticfilesystem:Describe* |
| EKS | eks:Describe* eks:List* |
| Elastic Beanstalk | elasticbeanstalk:Describe* elasticbeanstalk:List* |
| ELB - 弹性负载均衡 (v1/2) | elasticloadbalancing:Describe* |
| 弹性搜索 | es:Describe* es:List* |
| EMR - 弹性映射减少 | elasticmapreduce:Describe* elasticmapreduce:GetBlockPublicAccessConfiguration elasticmapreduce:List* elasticmapreduce:View* |
| GuardDute | guardduty:DescribeOrganizationConfiguration guardduty:DescribePublishingDestination guardduty:List* |
| IAM | iam:Generate* iam:Get* iam:List* iam:Simulate* |
| KMS | kms:Describe* kms:List* |
| LAMDBA | lambda:GetPolicy lambda:List* |
| 网络防火墙 | network-firewall:DescribeFirewall network-firewall:DescribeFirewallPolicy network-firewall:DescribeLoggingConfiguration network-firewall:DescribeResourcePolicy network-firewall:DescribeRuleGroup network-firewall:DescribeRuleGroupMetadata network-firewall:ListFirewallPolicies network-firewall:ListFirewalls network-firewall:ListRuleGroups network-firewall:ListTagsForResource |
| RDS | rds:Describe* rds:List* |
| RedShift | redshift:Describe* |
| S3 和 S3Control | s3:DescribeJob s3:GetEncryptionConfiguration s3:GetBucketPublicAccessBlock s3:GetBucketTagging s3:GetBucketLogging s3:GetBucketAcl s3:GetBucketLocation s3:GetBucketPolicy s3:GetReplicationConfiguration s3:GetAccountPublicAccessBlock s3:GetObjectAcl s3:GetObjectTagging s3:List* |
| SageMaker | sagemaker:Describe* sagemaker:GetSearchSuggestions sagemaker:List* sagemaker:Search |
| 机密管理器 | secretsmanager:Describe* secretsmanager:List* |
| 简单通知服务 - SNS | sns:Check* sns:List* |
| SSM | ssm:Describe* ssm:List* |
| SQS | sqs:List* sqs:Receive* |
| STS | sts:GetCallerIdentity |
| WAF | waf-regional:Get* waf-regional:List* waf:List* wafv2:CheckCapacity wafv2:Describe* wafv2:List* |
了解更多
可查看以下博客:
- Ignite 2021:Microsoft Defender for Cloud 新闻。
- 适用于 AWS 工作负荷的 Microsoft Defender for Cloud 中的自定义评估和标准(预览版)。
- AWS 和 GCP 的安全态势管理和服务器保护
后续步骤
连接 AWS 帐户是 Microsoft Defender for Cloud 提供的多云体验的一部分。 有关相关信息,请参阅以下页面:

