文章博客

文章博客 > 文章内容

数据推送方案-Azure Storage

分类:

大数据 解决方案

发布日期: 25年12月19日

方案架构

数据推送方案-Azure Storage插图

身份认证管理

认证&授权选项适用场景前置要求/规范
Microsoft Entra ID – ServicePrincipal认证凭据可使用密钥或证书,适用于授权应用程序后端使用密钥或证书完成Microsoft Entra ID身份验证流来访问Blob进行文件管理;1.周期性轮换:密钥或证书具有强制有效期并进行周期性轮换;
2.密钥或证书托管在应用程序后端,需对密钥进行安全保护,避免泄露;
3.应用程序需要Follow  OAuth 2.0身份验证流API或代码依赖库获取安全令牌,然后再携带安全令牌调用Azure接口来完成身份验证;
Microsoft Entra ID – Managed identity1.Azure托管身份标识-Azure Resource:可授权到单个资源层级,应用程序可以使用托管标识来获取 Microsoft Entra 令牌,无需管理任何凭据,实现无密钥认证即可访问Blob进行文件管理;
2.授信范围为资源中运行的所有应用程序;
1.需为应用程序所托管的资源启用托管标识;
2.应用程序调用 IMDS 来获取访问令牌,并携带安全令牌调用Azure接口来完成身份验证;
3.本Azure租户范围内;
Microsoft Entra ID – Managed identity1.Azure托管身份标识-External Resources:配合联合身份认证或Azure Arc,支持非Azure资源中的应用程序可以使用托管标识来获取 Microsoft Entra 令牌来进行Blob的身份认证;
2.授信范围为资源中运行的所有应用程序;
1.联合身份认证:外部资源使用的IDP与Microsoft Entra ID授信,应用程序使用自己托管的IDP凭据交换安全令牌,并携带安全令牌调用Azure接口来完成身份验证;
2.Azure Arc:外部资源需启用Azure arc并加入本租户内;
共享访问签名 (SAS) – 用户委派 SAS1.客户端通过执行身份验证的前端代理服务上传和下载数据。 此前端代理服务允许验证业务规则;
2.按需对客户端进行身份验证,并生成 SAS。 客户端应用程序接收到 SAS 后,可以直接访问存储帐户资源。 访问权限由 SAS 定义,并定义 SAS 允许的时间间隔。 减少了通过前端代理服务路由所有数据的需要;
3.适用于为用户端进行临时SAS授权;
4.应用必须支持Microsoft Entra ID身份验证流;
1.签发路径:必须使用HTTPS等受信任的途径 创建或分发 SAS;
2.签发方式:使用基于Microsoft Entra ID验证的用户委托 SAS;
3.周期性轮换:SAS具有过期策略(最长有效期不超过7天)并进行周期性轮换;
4.SAS的撤销:基于颁发依赖,如颁发者的标识,且撤销是所有基于此颁发者权限的SAS均失效;
共享访问签名 (SAS) – Service SAS1.SAS的签名基于存储帐户密钥,客户端无需进行Microsoft Entra ID身份验证流;
2.使用存储访问策略进行权限、有效期的管理;
3.适用于为受信任的服务端进行相对长期且稳定的SAS授权;
4.服务端使用一个SAS仅需访问存储的一种服务资源;
1.签发路径:必须使用HTTPS等受信任的途径 创建或分发 SAS;
2.签发方式:基于存储账户密钥签发,可关联存储访问策略进行管理;
3.周期性轮换:SAS具有过期策略(有效期可超过7天)并进行周期性轮换;
4.SAS的撤销:基于存储账户密钥依赖,如密钥轮换,所有相关的SAS均失效。关联存储访问策略的方式下,撤销策略即可撤销关联的SAS;
共享访问签名 (SAS) – Account SAS1.SAS的签名基于存储帐户密钥,客户端无需进行Microsoft Entra ID身份验证流;
2.不支持使用存储访问策略进行权限、有效期的管理;
3.适用于为用户端进行临时SAS授权;
4.用户端使用一个SAS可访问存储的多种服务资源;
1.签发路径:必须使用HTTPS等受信任的途径 创建或分发 SAS;
2.签发方式:基于存储账户密钥签发;
3.周期性轮换:SAS具有过期策略并进行周期性轮换;
4.SAS的撤销:基于存储账户密钥依赖,如密钥轮换,所有相关的SAS均失效;

最佳实践说明

#场景说明
业务用户手动推送-无专用业务前端代理服务:优先使用Microsoft Entra ID个人用户管理方式进行身份校验及授权;
业务用户手动推送-有专用业务前端代理服务:根据其业务端应用程序功能支持,使用Microsoft Entra ID或用户委派SAS;
B2B业务系统推送-支持Microsoft Entra ID认证:优先使用Microsoft Entra ID – Managed identity,次选Microsoft Entra ID – ServicePrincipal;
B2B业务系统推送-不支持Microsoft Entra ID认证:优先使用共享访问签名 (SAS) – Service SAS;
临时数据推送:优先使用共享访问签名 (SAS) – 用户委派 SAS,并配置短暂的有效期;
#规范要求
签发路径:必须使用HTTPS等受信任的签发途径;
周期性轮换:所有密钥必须妥善保管,并根据不同的方式定义密钥生命周期管理规范;
撤销:所有授权必须定义紧急撤销预案,如发生泄露需及时撤销;

网络管理

网络管理选项适用场景前置要求/规范
Private Endpoint1.客户端与存储交互均为内网链路
2.客户端能够支持PE关联的Private DNS Zone
1.客户端所在网络环境支持与PE所在虚拟网络进行内网通讯;
2.网络链路中具有防火墙等网络流量管理系统;
3.具有专用的DNS解析管理规范;
4.存储端配置了Private Endpoint
Service Endpoint1.客户端与存储位于同一个Azure云环境;
2.客户端与存储位于同一个或不同Azure Location(同一Location不支持Public Endpoint,不同Location可选用Public Endpoint);
1.客户端所在虚拟网络启用了Service Endpoint;
2.客户端所在网络环境允许并信任存储端添加Service Endpoint授权
Public Endpoint客户端网络不支持Private Endpoint和Service Endpoint
1.客户端具有稳定的公网出口IP;
2.如客户端与存储位于Azure配对区域,客户端不得启用ServiceEndpoint;
3.如客户端与存储位于同一个Azure云环境并分布在不同Location

最佳实践说明

#场景说明
内网交互:优先使用Private Endpoint;
公网交互:优先使用Service Endpoint,次选Public Endpoint;
#规范要求
网络权限管理:必须进行网络权限管控和周期性审核(及时清理无效网络策略)

数据安全

分类要求/规范备注
权限管理1.最小权限原则
2.权限分离原则,不同的推送系统及用户需进行目录拆分,Servie SAS必须关联独立的存储访问策略进行管理
3.禁用Blob匿名访问
4.周期性Review权限分配并及时清理无效策略
加密1.传输加密:强制HTTPS、TLS 1.2及以上;
2.存储加密:可选择使用Microsoft 托管密钥或客户管理密钥
密钥管理
1.所有密钥需使用受信任的密钥管理
2.密钥需周期性轮转
例如 Azure Key vault
数据保护
1.Storage container和Blob层级应启用软删除
2.Storage应关联资源锁
例如 资源删除锁定

运维监视

分类推荐监视项说明
Monitor1.Transactions(包含Transaction type、Authentication、API Name分类):监视数据传输的规范性
2.Availability(包含Transaction type、API Name分类):监视服务可用性
1.根据规范定义监视非合规的访问,例如AnonymousPreflight
2.监视所使用服务的可靠性,例如Blob服务接口的稳定性
LogStorageRead、StorageWrite、StorageDelete:日志记录所有读、写、删操作的访问记录,其中包含相关的操作记录、身份验证记录、服务信息用于Audit使用事件并为周期性Review提供重要的数据支撑

业务标签

精选文章

联蔚盘云MCP Marketplace获得软件著作权证书,引领AIOps与AI Foundation一体化革新

以OpsLab工具链与MCP管理平台为核...


联蔚盘云成为阿里云“公有云+AI”双框招合作伙伴,开启生态合作新篇章

近日,联蔚盘云正式与阿里云签署了公有云与...


铸造FinOps标杆,联蔚盘云入选信通院“铸基计划”优秀案例

在信通院公布的2025年“铸基计划”高质...


喜讯:联蔚盘云入选Gartner®《亚太区公有云IT转型服务魔力象限》报告

2025年10月16日,Gartner发...


联蔚盘云携手亿滋打造卓越DevOps平台,成功入选信通院“铸基计划”优秀案例

在中国信息通信研究院(CAICT)公布的...


联系我们

选择您关注的产品或解决方案,我们将尽快联系您!

售前咨询

400 102 7427 (周一至周五 9:30 - 18:00)