【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使得访问更加私有。

相关推荐
营赢盈英1 天前
Give azure openai an encyclopedia of information
ai·openai·azure
全云在线allcloudonline1 天前
微软 Azure AI 服务免费试用及申请:语音识别、文本转语音、基于视觉、语言处理、文档分析等10大场景
人工智能·microsoft·azure
营赢盈英2 天前
Azure OpenAI and token limit
ai·chatgpt·asp.net·azure·openai api
营赢盈英2 天前
TypeError: expected string or buffer - Langchain, OpenAI Embeddings
langchain·azure·embeddings·openai api·rag
营赢盈英2 天前
Allow anonymous access to my Azure OpenAI chat bot
ai·openai·azure·webapps
AI人工智能集结号6 天前
使用您自己的图像微调 FLUX.1 LORA 并使用 Azure 机器学习进行部署
机器学习·flask·azure
AI人工智能集结号7 天前
使用 Azure 机器学习微调小型语言模型 (SLM) Phi-3
机器学习·语言模型·azure
NineData8 天前
K1计划100%收购 MariaDB; TDSQL成为腾讯云核心战略产品; Oracle@AWS/Google/Azure发布
数据库·oracle·腾讯云·mariadb·azure·amazon·tdsql
SteveMiller9 天前
使用Azure+C#+visual studio开发图像目标检测系统
c#·azure·visual studio
晨曦_子画9 天前
跨平台集成:在 AI、微服务和 Azure 云之间实现无缝工作流
人工智能·微服务·azure