【Azure 架构师学习笔记】-Azure Storage Account(7)- 权限控制

本文属于【Azure 架构师学习笔记】系列

本文属于【Azure Storage Account】系列。

接上文 【Azure 架构师学习笔记】-Azure Storage Account(6)- File Layer

前言

存储帐户作为其中一个数据终端存储,对安全性的要求非常高,不管在云还是本地环境中,基于角色的权限定义(RBAC: Role-based Access Control)变得越来越普及。

RBAC通过预设或者自定义一些通用角色,然后分配常规权限,用户只需要于这些角色进行关联就可以获得对应的权限。 这种方式不是新东西,但是在云环境这种大规模,多租户的情况下,很好地降低了权限管理的难度和工作量。

每个资源几乎有自己的一套RBAC, 关于存储帐户也有,但是在讨论权限时,还要区分两个概念:Data Plane和Control Plane。

RBAC - Control Plane

简单来说,Control Plane就是控制RBAC 在Azure 资源层面的权限,没有数据操作。如果只给了Reader角色,那么没法访问上面的数据,因为还有额外的ACL和Data Plane的RBAC 需要授权。所以在允许用户、程序访问数据时, 更好的方式是授予Control Plane上的RBAC, 然后搭配文件和文件夹层面的ACL。

RBAC - Data Plane

Data Plane一旦使用,那么其他ACL 就会被覆盖,和Control Plane作用在资源层面不同, Data Plane可以作用在更低级别, 对于Blob Storage 来说,常用的有下面三种:

  • Storage Blob Data Owner: 用于Azure Data Lake Storage Gen2类型,可以配置所有权和管理POSIX访问。
  • Storage Blob Data Contributor: 可以在Blob Storage 上的资源进行read/write/delete 。
  • Storage Blob Data Reader: 对Blob Storage 只有 read-only 。

除了上面的RBAC, 还可以对文件夹及文件级别进行细粒度的配置,俗称ACL 。ACL 也有两种类型:

  • Access ACLs:控制对文件和文件夹的访问。
  • Default ACLs:在子文件夹及文件中继承于Access ACLs

数据加密

除了访问控制,对数据本身的加密也是权限控制或者说安全控制方面极其重要的一环,毕竟你没法保证最大权限的账号,Key永不丢失。

默认情况下,ADLS 已经对存储在上面的数据进行了加密,可以是微软托管的加密,也可以是使用用户自定义的密钥进行加密。

如果使用微软托管的加密,会存储哎Azure Key Vault中。如果是用户自定义密钥,则需要额外存储。

对于传输中的数据,则通过TLS 1.2进行加解密。

网络配置

云服务中,PaaS默认都是公网访问,这显然不合适绝大多数的商业环境,这个时候对PaaS的改造就很有必要,首先先限制网络接入,通过对下图的【Enabled from selected virtual networks and IP addresses】来仅允许特定网络的资源可以对其进行访问从而收紧外部入口。

Private Endpoint

PaaS 服务是没有公网IP 的,那么当需要把网络访问收紧,进行site-to-point访问时则会遇到困难,其中一个办法就是让PaaS暴露出一个私网IP, 这个就是endpoint的作用。

Private Endpoint通过在资源所在的VNet上选定一个私有IP (如果在subnet上则需要使用service endpoint),然后通过private link使得特定VNet或者已用VPN, ExpressRoute等配对的外部网络可以访问这个通常被拒绝访问的私有资源。

一旦开启了Private Endpoint, 则其优先级会比上面提到的Selected Network和Firewall上的准入IP 优先级高。

对于企业级应用来说,Selected Network可以把网络从允许公网访问变成只允许特定网络访问,然后搭配Private Endpoint使得访问更加私有。

相关推荐
Leinwin6 天前
Azure语音服务(国际版)系列升级,解锁语音交互新体验
microsoft·azure
安得权7 天前
Azure Dataverse 权限设计学习
学习·flask·azure
EllenShen1238 天前
如何利用ADF(Azure Data Factory)完成CDP任务流
azure
EllenShen1239 天前
服务器检测databricks job的运行状态封装
运维·azure
安得权14 天前
Azure DevOps 学习概况总结
学习·azure·devops
Azure DevOps19 天前
Azure DevOps Server 正式版本发布
运维·microsoft·azure·devops
Channing Lewis21 天前
vault分生产和dev吗?也就是说是否支持在一个azure app中创建vault,但是分为生产和dev,而不是为生产和dev分别创建一个app
microsoft·azure
切糕师学AI24 天前
Azure RTOS ThreadX 简介
microsoft·嵌入式·azure·rtos
开开心心_Every1 个月前
Word转PDF工具,免费生成图片型文档
网络·笔记·pdf·word·powerpoint·excel·azure
Leinwin1 个月前
Azure NCv6 现已开放公共预览
microsoft·azure