适用于 Azure 专用链接的 Azure 安全基线

此安全基线将 Azure 安全基准版本 1.0 中的指南应用于 Azure 专用链接。 Azure 安全基准提供有关如何在 Azure 上保护云解决方案的建议。 内容按“安全控制”分组,这些控制由适用于 Azure 专用链接的 Azure 安全基准和相关的指导定义。

当某个功能具有相关的Azure Policy定义时,它们列在此基线中,以帮助衡量 Azure 安全基准控件和建议的符合性。 某些建议可能需要付费的 Microsoft Defender 计划才能启用某些安全方案。

注意

已排除不适用于 Azure 专用链接或 Microsoft 为其责任方的控制。 若要查看 Azure 专用链接如何完全映射到 Azure 安全基准,请参阅完整的 Azure 专用链接安全基线映射文件

网络安全

有关详细信息,请参阅 Azure 安全基线: 网络安全性

1.11:使用自动化工具来监视网络资源配置和检测更改

指导:使用 Azure 活动日志监视资源配置,并检测与专用链接相关的网络资源的更改情况。

在 Azure Monitor 中创建当关键资源发生更改时触发的警报。

责任:客户

日志记录和监视

有关详细信息,请参阅 Azure 安全基线: 日志记录和监视

2.2:配置中心安全日志管理

指导:通过 Azure Monitor 引入日志,以聚合网络资源(如专用链接终结点、虚拟网络和网络安全组)生成的安全数据。

在 Azure Monitor 中,使用 Log Analytics 工作区进行查询和执行分析,并将 Azure 存储帐户用于长期/存档存储。

另外根据组织业务需求,启用数据并将其上传到 Microsoft Sentinel 或第三方 SIEM。

责任:客户

2.3:为 Azure 资源启用审核日志记录

指导:启用 Azure Monitor 活动日志,这些日志中记录了对专用链接资源执行的操作,例如谁启动了操作、操作发生的时间、操作状态以及其他有用的审核信息。

责任:客户

2.5:配置安全日志存储保留期

指导:对于与专用链接有关的日志,应根据 Azure Monitor 中的组织合规性法规,设置 Log Analytics 工作区保持期。 使用 Azure 存储帐户对日志进行任何长期/存档存储。

责任:客户

2.6:监视和查看日志

指导:分析和监视日志中的异常行为,并定期查看结果。 使用 Azure Monitor 的 Log Analytics 工作区查看日志并对日志数据执行查询。

另一个选项是启用数据并将其上传到 Microsoft Sentinel 或第三方 SIEM。

责任:客户

2.7:针对异常活动启用警报

指南:使用配置了 Log Analytics 工作区的 Microsoft Defender for Cloud 来监视安全日志和事件中的异常活动并发出警报。

根据组织业务需求,启用数据并将其上传到 Microsoft Sentinel 或第三方 SIEM。

责任:客户

标识和访问控制

有关详细信息,请参阅 Azure 安全基线: 标识和访问控制

3.1:维护管理帐户的清单

指导:使用可显式分配并可查询的 Azure Active Directory (Azure AD) 内置管理员角色。 运行 Azure AD PowerShell 模块以执行即席查询,从而发现属于管理组成员的帐户。

责任:客户

3.3:使用专用管理帐户

指南:围绕专用管理帐户的使用创建标准操作程序。 使用 Microsoft Defender for Cloud 的标识和访问管理功能监视管理帐户的数量。

另外,通过使用针对 Microsoft 服务的 Azure Active Directory (Azure AD) Privileged Identity Management 特权角色和 Azure 资源管理器来启用实时/足够访问权限。

责任:客户

3.4:使用 Azure Active Directory 单一登录 (SSO)

指导:尽可能使用 Azure Active Directory (Azure AD) 单一登录,而不是为每个服务配置单个独立凭据。

责任:客户

3.5:对所有基于 Azure Active Directory 的访问使用多重身份验证

指导:启用 Azure Active Directory (Azure AD) 多重身份验证,并遵循 Microsoft Defender for Cloud 标识和访问管理的建议。

责任:客户

3.6:使用由 Azure 管理的安全工作站执行管理任务

指导:使用配置了多重身份验证的特权访问工作站 (PAW) 来登录并配置 Azure 网络资源。

责任:客户

3.7:记录来自管理帐户的可疑活动并对其发出警报

指导:使用 Azure Active Directory (Azure AD) 风险检测功能来查看有关风险用户行为的警报和报告。

将 Microsoft Defender for Cloud 风险检测警报引入 Azure Monitor,并使用操作组配置自定义警报/通知。

责任:客户

3.8:仅从批准的位置管理 Azure 资源

指导:使用条件访问命名位置,仅允许从 IP 地址范围或国家/地区的特定逻辑分组进行访问。

责任:客户

3.9:使用 Azure Active Directory

指导:使用 Azure Active Directory (Azure AD) 作为中心身份验证和授权系统。 Azure AD 通过对静态数据和传输中数据使用强加密以及加盐、哈希处理和安全存储用户凭据来保护数据。

责任:客户

3.10:定期审查和协调用户访问

指导:Azure Active Directory (Azure AD) 提供日志来帮助发现过时的帐户。 此外,还可以使用 Azure 标识访问评审来有效管理组成员身份、对企业应用程序的访问权限以及角色分配。 可以定期评审用户的访问权限,确保只有适当的用户才持续拥有访问权限。

责任:客户

3.11:监视尝试访问已停用凭据的行为

指导:使用 Azure Active Directory (Azure AD) 登录活动、审核和风险事件日志源,与任何 SIEM/监视工具相集成。

可通过为 Azure AD 用户帐户创建诊断设置,并将审核日志和登录日志发送到 Log Analytics 工作区,来简化此过程。 在 Log Analytics 工作区中配置所需的警报。

责任:客户

3.12:针对帐户登录行为偏差发出警报

指导:使用 Azure Active Directory (Azure AD) 风险和标识保护功能,配置如何自动响应所检测到的与网络资源的用户标识相关的可疑操作。

将数据引入 Microsoft Sentinel 中进行进一步调查。

责任:客户

数据保护

有关详细信息,请参阅 Azure 安全基线: 数据保护

4.2:隔离存储或处理敏感信息的系统

指导:使用单独的订阅和管理组对各个安全域(如环境类型和数据敏感度级别)实现隔离。

根据业务要求,限制应用程序和企业环境中对 Azure 资源的访问级别。

通过 Azure 基于角色的访问控制 (Azure AD) 控制对 Azure 资源的访问。

责任:客户

4.4:加密传输中的所有敏感信息

指导:加密传输中的所有敏感信息。 确保连接到虚拟网络中 Azure 资源的任何客户端都能够协商 TLS 1.2 或更高版本。 专用链接不会干扰基础协议。 对客户所用的其他产品/服务运用最佳做法。

请遵循 Microsoft Defender for Cloud 的建议,了解静态加密和传输中加密(如果适用)。

责任:共享

4.6:使用 Azure RBAC 控制对资源的访问

指导:使用 Azure 基于角色的访问控制 (Azure RBAC) 控制对数据和资源的访问,否则请使用特定于服务的访问控制方法。

调用 PowerShell cmd“Get-AzRoleDefinition”或“az role definition list”以检索环境中的角色列表。

查看选项,通过“可见性”设置来控制服务曝光与否。 在专用链接中。 这些可见性设置决定了使用者是否可以连接到你的服务。

将服务设置为区别于其他虚拟网络的专用(仅限 Azure RBAC 权限)。 限制对一组有限的受信任订阅曝光,或将其设置为公开,以便所有 Azure 订阅都可以在专用链接服务上请求连接。

责任:客户

4.9:记录对关键 Azure 资源的更改并对此类更改发出警报

指导:使用 Azure Monitor 活动日志警报来创建针对关键 Azure 资源(如专用链接服务和终结点)发生更改的警报。

责任:客户

清单和资产管理

有关详细信息,请参阅 Azure 安全基线: 清单和资产管理

6.1:使用自动化资产发现解决方案

指导:使用 Azure Resource Graph 来查询和发现订阅中的所有网络资源(例如专用链接服务)和终结点。

确保你在租户中拥有适当的(读取)权限,并且可以枚举所有 Azure 订阅,以及订阅中的资源。

责任:客户

6.2:维护资产元数据

指导:使用元数据将标记应用到 Azure 资源,以便有条理地将其组织成某种分类。

责任:客户

6.3:删除未经授权的 Azure 资源

指导:使用标记、管理组和单独订阅(如果适用)来组织和跟踪专用链接和相关资源。

定期核对清单,确保及时地从订阅中删除未经授权的资源。

责任:客户

6.4:定义并维护已批准的 Azure 资源的清单

指导:根据组织需求,创建已获批用于计算资源的 Azure 资源和软件的清单。

责任:客户

6.5:监视未批准的 Azure 资源

指导:在 Azure Policy 中使用以下内置策略定义,对可以在客户订阅中创建的资源类型施加限制:

  • 不允许的资源类型

  • 允许的资源类型

另外使用 Azure Resource Graph 来查询/发现订阅中的资源。 这可以在基于高安全性的环境(例如具有存储帐户的环境)中提供帮助。

责任:客户

6.7:删除未经批准的 Azure 资源

指导:根据客户的公司政策,客户可以阻止通过 Azure Policy 来创建或使用资源的操作。 你可以实施自己的流程来删除未经授权的资源。

责任:客户

6.9:仅使用已批准的 Azure 服务

指导:在 Azure Policy 中使用以下内置策略定义,对可以在客户订阅中创建的资源类型施加限制:

责任:客户

6.11:限制用户与 Azure 资源管理器进行交互的能力

指南:使用 Azure 条件访问可通过为“Microsoft Azure 管理”应用配置“阻止访问”,限制用户与 Azure 资源管理器进行交互的能力。

责任:客户

安全配置

有关详细信息,请参阅 Azure 安全基线: 安全配置

7.1:为所有 Azure 资源建立安全配置

指导:使用 Azure Policy 别名创建自定义策略,以审核或强制实施 Azure 网络资源的配置以及内置 Azure Policy 定义。

通过使用 Azure 资源管理器,可以导出 JavaScript 对象表示法 (JSON) 中的模板。 应该对此项目进行评审,以确保配置达到或超出组织的安全性要求。

实现 Microsoft Defender for Cloud 中的建议,作为 Azure 资源的安全配置基线。

责任:客户

7.3:维护安全的 Azure 资源配置

指导:使用 Azure 资源管理器模板和 Azure Policy,安全地配置与专用链接关联的 Azure 资源和相关资源。

Azure 资源管理器模板是基于 JavaScript 对象表示法 (JSON) 的文件,可用于部署 Azure 资源。任何自定义模板都需要在代码存储库中安全地存储和维护。

使用 Azure Policy [拒绝] 和 [不存在时部署] 在 Azure 资源中强制实施安全设置。

责任:客户

7.5:安全存储 Azure 资源的配置

指导:使用 Azure DevOps 安全地存储和管理代码,如自定义 Azure 策略、Azure 资源管理器模板和 Desired State Configuration 脚本。

向特定用户、内置安全组或者 Azure Active Directory (Azure AD)(如果与 Azure DevOps 集成以允许访问)或 Active Directory(如果与 Team Foundation Server 集成)中定义的组授予权限,或拒绝向其授予权限。

责任:客户

7.7:部署 Azure 资源的配置管理工具

指导:使用 Azure Policy 为 Azure 资源定义和实施标准安全配置。

使用 Azure Policy 别名创建自定义策略,审核或强制实施 Azure 资源的网络配置。

还可以利用与订阅下托管的任何特定资源相关的内置策略定义。

责任:客户

7.9:为 Azure 资源实施自动配置监视

指导:使用 Azure Policy 审核 Azure 资源配置。 例如,可以使用 Azure Policy 来检测未配置专用终结点的资源。

责任:客户

数据恢复

有关详细信息,请参阅 Azure 安全基线: 数据恢复

9.1:确保定期执行自动备份

指导:使用 Azure 资源管理器来部署专用链接服务、终结点及相关资源。 Azure 资源管理器提供导出模板的功能,这些模板可用作还原专用链接终结点及相关资源的备份。

使用 Azure 自动化定期调用 Azure 资源管理器模板导出 API。

责任:客户

9.2:执行完整系统备份,并备份客户管理的所有密钥

指导:使用 Azure 资源管理器来部署专用链接服务、终结点及相关资源。 Azure 资源管理器提供导出模板的功能,这些模板可用作还原专用链接终结点及相关资源的备份。

使用 Azure 自动化定期调用 Azure 资源管理器模板导出 API。

在 Azure Key Vault 中备份客户管理的密钥。

责任:客户

9.3:验证所有备份,包括客户管理的密钥

指导:验证按照业务要求定期将 Azure 资源管理器模板的部署执行到隔离订阅的功能。

另外,验证已备份客户托管密钥的还原情况。

责任:客户

9.4:确保保护备份和客户管理的密钥

指导:使用 Azure DevOps 安全地存储和管理 Azure 资源管理器模板之类的代码。

向特定用户、内置安全组或者 Azure Active Directory (Azure AD)(如果与 Azure DevOps 集成以允许访问这些资源)或 Active Directory(如果与 Team Foundation Server 集成)中定义的组授予权限,或拒绝向其授予权限。

责任:客户

事件响应

有关详细信息,请参阅 Azure 安全基线: 事件响应

10.1:创建事件响应指导

指南:为组织制定事件响应指南。

确保在书面的事件响应计划中定义人员的所有职责,以及事件处理或管理的各个阶段(从检测到事件后审查)。

责任:客户

10.2:创建事件评分和优先级设定过程

指南:Microsoft Defender for Cloud 向每个警报分配严重性,以帮助你优先处理应先调查的警报。 严重性取决于 Microsoft Defender for Cloud 在发出警报时所依据的检测结果或分析结果的置信度,以及导致发出警报的活动的恶意企图的置信度。

使用标记清楚地标记订阅(例如生产或非生产)并创建命名系统来对 Azure 资源进行明确标识和分类,特别是处理敏感数据的资源。

客户负责根据 Azure 资源的重要性以及事件发生的环境来设置警报修正的优先级。

责任:客户

10.3:测试安全响应过程

指南:定期执行演练来测试系统的事件响应功能,以帮助保护 Azure 资源。 识别弱点和差距,并根据需要修改计划。

责任:客户

10.4:提供安全事件联系人详细信息,并针对安全事件配置警报通知

指导:如果 Microsoft 安全响应中心 (MSRC) 发现数据被某方非法访问或未经授权访问,Microsoft 会使用安全事件联系信息联系用户。

检查事件并发布出现次数,以确保问题已得到解决。

责任:客户

10.5:将安全警报整合到事件响应系统中

指南:使用连续导出功能导出 Microsoft Defender for Cloud 警报和建议,以帮助确定 Azure 资源的风险。 使用连续导出可以手动导出或者持续导出警报和建议。

此外,根据业务运营的需要,使用 Microsoft Defender for Cloud 数据连接器将警报流式传输到 Microsoft Sentinel。

责任:客户

10.6:自动响应安全警报

指南:使用 Microsoft Defender for Cloud 内的工作流自动化功能,通过逻辑应用自动触发针对安全警报和建议的响应以保护 Azure 资源。

责任:客户

渗透测试和红队练习

有关详细信息,请参阅 Azure 安全基线: 渗透测试和红队演练

11.1:定期对 Azure 资源执行渗透测试,确保修正所有发现的关键安全问题

指导:遵守 Microsoft 参与规则,以确保渗透测试不违反 Microsoft 政策。

使用 Microsoft 红队演练策略和执行,以及针对 Microsoft 托管云基础结构、服务和应用程序执行的现场渗透测试。

责任:共享

后续步骤