适用于 Azure 数据库迁移服务的 Azure 安全基线

此安全基线将 Azure 安全基准 2.0 版中的指南应用到 Azure 数据库迁移服务。 Azure 安全基准提供有关如何在 Azure 上保护云解决方案的建议。 内容按“安全控制”分组,这些控制根据适用于 Azure 数据库迁移服务的 Azure 安全基准和相关指南定义。

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

注意

已排除不适用于 Azure 数据库迁移服务的控件以及建议逐字使用全局指导的控件。 若要了解 Azure 数据库迁移服务如何完全映射到 Azure 安全基准,请参阅完整的 Azure 数据库迁移服务安全基线映射文件

网络安全

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

NS-1:实现内部流量的安全性

指导:部署 Azure 数据库迁移服务资源时,必须创建或使用现有虚拟网络。 确保所有 Azure 虚拟网络都遵循与业务风险相匹配的企业分段原则。 任何可能会给组织带来更高风险的系统都应隔离在其自己的虚拟网络中,并通过网络安全组 (NSG) 和/或 Azure 防火墙进行充分保护。

默认情况下,Azure 数据库迁移服务使用 TLS 1.2。 可以在 Azure 数据库迁移服务的服务配置边栏选项卡中启用对 TLS 1.0 或 TLS 1.1 的支持(如果这是要迁移的数据源实现后向兼容性所需的)。

使用 Microsoft Sentinel 发现旧的不安全协议的使用情况,如 SSL/TLSv1、SMBv1、LM/NTLMv1、wDigest、未签名的 LDAP 绑定和 Kerberos 中的弱密码。

如何使用安全规则创建网络安全组:/azure/virtual-network/tutorial-filter-network-traffic​​

如何部署和配置 Azure 防火墙:/azure/firewall/tutorial-firewall-deploy-portal

责任:客户

NS-2:将专用网络连接在一起

指导:如果你的迁移用例涉及跨网络流量,则可选择在归置环境中使用 Azure ExpressRoute 或 Azure 虚拟专用网 (VPN) 在 Azure 数据中心与本地基础结构之间创建专用连接。 ExpressRoute 连接并不通过公共 Internet,与典型的 Internet 连接相比,它们的可靠性更高、速度更快且延迟时间更短。 对于点到站点 VPN 和站点到站点 VPN,可使用这些 VPN 选项的任意组合以及 Azure ExpressRoute 将本地设备或网络连接到虚拟网络。 若要将 Azure 中的两个或更多虚拟网络连接在一起,请使用虚拟网络对等互连。 对等互连虚拟网络之间的网络流量是专用的,且保留在 Azure 主干网络上。

责任:客户

NS-3:建立对 Azure 服务的专用网络访问

指导:在适用的情况下,使用 Azure 专用链接在迁移过程中启用对源和目标服务(例如 Azure SQL Server 或其他必需服务)的专用访问。 在 Azure 专用链接尚不可用的情况下,请使用 Azure 虚拟网络服务终结点。 借助 Azure 专用链接和服务终结点,可通过 Azure 主干网络上的优化路由对服务进行安全访问,不需要通过 Internet。

此外,在虚拟网络上预配 Azure 数据库迁移服务之前,请确保满足先决条件,包括需要启用的通信端口。

责任:客户

标识管理

有关详细信息,请参阅 Azure 安全基准:标识管理

IM-1:将 Azure Active Directory 标准化为中央标识和身份验证系统

指导:Azure 数据库迁移服务使用 Azure Active Directory (Azure AD) 作为默认标识和访问管理服务。 你应该使 Azure AD 标准化,以便控制组织在以下资源中的标识和访问管理:

Microsoft 云资源,如 Azure 门户、Azure 存储、Azure 虚拟机(Linux 和 Windows)、Azure Key Vault、PaaS 和 SaaS 应用程序。

你的组织的资源,例如 Azure 上的应用程序,或公司网络资源。

在组织的云安全做法中,应优先处理 Azure AD 保护事宜。 Azure AD 提供标识安全分数,帮助你评估与 Microsoft 的最佳做法建议相关的标识安全状况。 使用评分来估计你的配置与最佳做法建议的匹配程度,并改善你的安全状况。

注意:Azure AD 支持外部标识,允许没有 Microsoft 帐户的用户使用其外部标识登录到其应用程序和资源。

责任:客户

IM-2:安全且自动地管理应用程序标识

指导:Azure 数据库迁移服务要求用户在 Azure Active Directory (Azure AD) 中创建应用程序 ID(服务主体)和身份验证密钥,以便在“联机”模式下迁移到 Azure SQL 数据库托管实例。 此应用程序 ID 要求在订阅级别具有“参与者”角色(不建议这样做,因为这样会授予“参与者”角色过多的访问权限),或者要求创建自定义角色,这些角色具有的特定权限是 Azure 数据库迁移服务所要求的。

建议在迁移完成后删除此应用程序 ID。

责任:客户

IM-3:使用 Azure AD 单一登录 (SSO) 进行应用程序访问

指导:Azure 数据库迁移服务与 Azure Active Directory 集成,用于对 Azure资源、云应用程序和本地应用程序进行标识和访问管理。 此内容包括企业标识(例如员工)以及外部标识(如合作伙伴和供应商)。 这样,单一登录 (SSO) 便可以管理和保护对本地和云中的组织数据和资源的访问。 将所有用户、应用程序和设备连接到 Azure AD,实现无缝的安全访问和更好的可见性和控制。

责任:客户

IM-7:消除意外的凭据透露

指导:Azure 数据库迁移服务允许客户部署/运行代码、配置或持久化数据(可能包含标识/机密)。建议你通过凭据扫描程序来识别代码、配置或持久化数据中的凭据。 凭据扫描程序还会建议将发现的凭据转移到更安全的位置,例如 Azure Key Vault。

如果使用 GitHub,你可以通过原生的机密扫描功能来识别代码中的凭据或其他形式的机密。

责任:客户

特权访问

有关详细信息,请参阅 Azure 安全基准:特权访问

PA-3:定期审查和协调用户访问权限

指导:Azure 数据库迁移服务要求用户在 Azure Active Directory (Azure AD) 中创建应用程序 ID(服务主体)和身份验证密钥,以便在“联机”模式下迁移到 Azure SQL 数据库托管实例。 建议在迁移完成后删除此应用程序 ID。

责任:客户

PA-6:使用特权访问工作站

指导:安全的独立工作站对于确保敏感角色(如管理员、开发人员和关键服务操作员)的安全至关重要。 使用高度安全的用户工作站和/或 Azure Bastion 执行管理任务。 使用 Azure Active Directory、Microsoft Defender 高级威胁防护 (ATP) 和/或 Microsoft Intune 部署安全的托管用户工作站,用于执行管理任务。 可通过集中管理安全的工作站来强制实施安全配置,包括强身份验证、软件和硬件基线、受限的逻辑和网络访问。

责任:客户

PA-7:遵循 Just Enough Administration(最小特权原则)

指导:Azure 数据库迁移服务已与 Azure 基于角色的访问控制 (RBAC) 集成来管理其资源。 使用 Azure RBAC,可通过角色分配来管理 Azure 资源访问。 可以将这些角色分配给用户、组服务主体和托管标识。 某些资源具有预定义的内置角色,可以通过工具(例如 Azure CLI、Azure PowerShell 或 Azure 门户)来清点或查询这些角色。 通过 Azure RBAC 分配给资源的特权应始终限制为角色所需的特权。 这是对 Azure AD Privileged Identity Management (PIM) 的实时 (JIT) 方法的补充,应定期进行审查。

请使用内置角色来分配权限,仅在必要时创建自定义角色。

责任:客户

数据保护

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

DP-4:加密传输中的敏感信息

指导:默认情况下,Azure 数据库迁移服务使用 TLS 1.2 或更高版本对从客户配置的源传输到数据库迁移服务实例的传输中数据进行加密。 如果源服务器不支持 TLS 1.2 连接,你可以选择禁用此功能,但强烈建议不要这样做。 从数据库迁移服务实例到目标实例的数据传输始终加密。

在 Azure 数据库迁移服务外部,你可以使用访问控制,并且应该对传输中的数据使用加密技术防止“带外”攻击(例如流量捕获),以确保攻击者无法轻松读取或修改数据。 对于 HTTP 流量,请确保连接到 Azure 资源的任何客户端都能协商 TLS v1.2 或更高版本。 对于远程管理,请使用 SSH(适用于 Linux)或 RDP/TLS(适用于 Windows),而不是使用未加密的协议。 应当禁用已过时的 SSL/TLS/SSH 版本、协议以及弱密码。

在底层基础结构中,Azure 默认情况下为 Azure 数据中心之间的数据流量提供传输中数据加密。

责任:共享

资产管理

有关详细信息,请参阅 Azure 安全基准:资产管理

AM-1:确保安全团队可以了解与资产相关的风险

指导:确保在 Azure 租户和订阅中向安全团队授予安全读取者权限,方便他们使用 Microsoft Defender for Cloud 监视安全风险。

根据安全团队责任划分方式的不同,监视安全风险可能是中心安全团队或本地团队的责任。 也就是说,安全见解和风险必须始终在组织内集中聚合。

安全读取者权限可以广泛应用于整个租户(根管理组),也可以限制到管理组或特定订阅。

注意:若要了解工作负载和服务,可能需要更多权限。

责任:客户

AM-2:确保安全团队有权访问资产清单和元数据

指导:将标记应用到 Azure 资源、资源组和订阅,以便有条理地将它们组织成分类。 每个标记均由名称和值对组成。 例如,可以对生产中的所有资源应用名称“Environment”和值“Production”。

Azure 数据库迁移服务不允许在其资源上运行应用程序或安装软件。

责任:客户

AM-3:仅使用已批准的 Azure 服务

指导:请使用 Azure Policy 来审核和限制用户可以在你的环境中预配哪些服务。 使用 Azure Resource Graph 查询和发现订阅中的资源。 你也可以使用 Azure Monitor 来创建规则,以便在检测到未经批准的服务时触发警报。

责任:客户

日志记录和威胁检测

有关详细信息,请参阅 Azure 安全基准:日志记录和威胁检测

LT-2:启用 Azure 标识和访问管理的威胁检测

指导:Azure AD 提供以下用户日志,这些日志可在 Azure AD 报告中查看,也可与 Azure Monitor、Microsoft Sentinel 或其他 SIEM/监视工具集成,以用于更复杂的监视和分析用例:

  • 登录 - 登录报告提供有关托管应用程序的使用情况和用户登录活动的信息。

  • 审核日志 - 通过日志为 Azure AD 中的各种功能所做的所有更改提供可跟踪性。 审核日志的示例包括对 Azure AD 中的任何资源(例如添加或删除用户、应用、组、角色和策略)所做的更改。

  • 风险登录 - 风险登录是指可能由非用户帐户合法拥有者进行的登录尝试。

  • 已标记为存在风险的用户 - 风险用户是指可能已泄露的用户帐户。

Microsoft Defender for Cloud 还可针对某些可疑活动发出警报,例如,失败的身份验证尝试次数过多和使用了订阅中的已弃用帐户。 除了基本的安全卫生监视以外,Microsoft Defender for Cloud 的威胁防护模块还可从各个 Azure 计算资源(虚拟机、容器、应用服务)、数据资源(SQL 数据库和存储)和 Azure 服务层收集更深入的安全警报。 可通过此功能查看各个资源内的帐户异常情况。

责任:客户

LT-3:为 Azure 网络活动启用日志记录

指导:启用并收集网络安全组 (NSG) 资源日志、NSG 流日志、Azure 防火墙日志和 Web 应用程序防火墙 (WAF) 日志进行安全分析,从而支持事件调查、威胁搜寻和安全警报生成。 可将流日志发送到 Azure Monitor Log Analytics 工作区,然后使用流量分析提供见解。

注意:Azure 数据库迁移服务不会生成或处理那些需要启用的 DNS 查询日志。

责任:客户

LT-5:集中管理和分析安全日志

指导:集中记录存储和分析来实现关联。 对于每个日志源,请确保已分配数据所有者、访问指南、存储位置、用于处理和访问数据的工具以及数据保留要求。

确保正在将 Azure 活动日志集成到中央日志记录。 通过 Azure Monitor 引入日志,以聚合终结点设备、网络资源和其他安全系统生成的安全数据。 在 Azure Monitor 中,使用 Log Analytics 工作区来查询和执行分析,并使用 Azure 存储帐户进行长期存档存储。

另外,请启用 Microsoft Sentinel 或第三方 SIEM,并在其中加入数据。

许多组织选择将 Microsoft Sentinel 用于“热”数据(频繁使用的数据),将 Azure 存储用于“冷”数据(不太频繁使用的数据)。

责任:客户

安全状况和漏洞管理

有关详细信息,请参阅 Azure 安全基准:安全状况和漏洞管理

PV-8:执行定期攻击模拟

指导:根据需要,对 Azure 资源进行渗透测试或红队活动,并确保修正所有关键安全发现。 请遵循 Microsoft 云渗透测试互动规则,确保你的渗透测试不违反 Microsoft 政策。 使用 Microsoft 红队演练策略和执行,以及针对 Microsoft 托管云基础结构、服务和应用程序执行现场渗透测试。

责任:客户

后续步骤