Azure:谁动了你的数据

需求,Storage Account中的数据,如果有人访问,要求记录下是谁访问的。

方案:

1. 为Storage Account 开启诊断设置:

截止2021-08-30,该功能为Preview的功能。

配置将Storage Read/Write/Delete 日志记录到其他的 Storage Account中:

测试:

在Azure Portal中 上传/下载/读取BLOB,观察 monitorlogseandatalake中记录的日志:

注意:默认采用的是Access Key的方式

 

进入到Monitor Storage Account中,可以看到如下图的日志:

 

将Log下载到本地,解析其中的值即可得到一些信息:

李如下图中,显示了下载的URL,下载的浏览器类型,操作系统类型,IP地址等。

 

 

详细的字段解析,可参考:https://docs.microsoft.com/zh-cn/azure/storage/blobs/monitor-blob-storage-reference?WT.mc_id=AZ-MVP-5003757#resource-logs-preview

 

如下图所示:

 

文档中同样描述了是 谁 访问了数据:

具体的字段解释如下:

但在我们实际的测试中,如果使用Access Key方式访问BLOB,日志中的 identity tpye为“SAS” 并不能很容易的看出是谁在访问我们的数据。

 

 

2. 使用Azure AD User Account方式认证

 

因此,我们尝试将Authentication method 改为 Azure AD User Account方式,再次上传文件,然后观察日志:

 

上传文件:

 

再次观察日志:

UPN中明确显示了是哪个Azure AD 用户进行了文件上传操作:

 

基本的功能有了,但仍然存在一些问题,比如,默认情况下,用户可以自行修改 使用哪种方式进行身份验证:

一旦用户自行将验证方式改为 Access Key,则日志里就不会出现 upn字段,也不能知道是哪个用户进行的操作。

3. 为每一个要使用Storage的用户创建账号,然后配置权限如下:

 

使用该用户访问Storage Account,可以看到默认就是使用Azure AD 进行了身份验证:

 

尝试修改自己为 访问密钥方式:

 

同时SAS共享访问签名页面也不能正常获取SAS:

 

访问密钥页面用户页无法修改:

 

可以在Azure Poratal 中上传,读取,删除文件,观察结果,也可以在Storage Explorer工具中使用订阅方式登录后,上传,读取,删除文件测试:

结果如下:

 

 

 

 

与本文相关的文档:

从Azure AD获取用于从客户端应用程序授权请求的令牌

https://docs.microsoft.com/zh-cn/azure/storage/common/storage-auth-aad-app?toc=/azure/storage/blobs/toc.json

分配Azure 角色以访问blob数据:

https://docs.microsoft.com/zh-cn/azure/storage/blobs/assign-azure-role-data-access

使用Azure AD运行Power Shell或Azure CLI以访问blob数据:

https://docs.microsoft.com/zh-cn/azure/storage/blobs/authorize-data-operations-powershell

 

 

关于在Azure门户中访问Azure Storage,优先使用的方式是:

使用帐户访问密钥

若要使用帐户访问密钥访问 blob 数据,你必须已分配到一个 Azure 角色,此角色包含 Azure RBAC 操作 Microsoft.Storage/storageAccounts/listkeys/action。此 Azure 角色可以是内置角色,也可以是自定义角色。支持“Microsoft.Storage/storageAccounts/listkeys/action”的内置角色(按权限从小到大排序)包括:

  • The Reader and Data Access role

  • The Storage Account Contributor role

  • The Azure Resource Manager Contributor role

  • The Azure Resource Manager Owner role

尝试在 Azure 门户中访问 Blob 数据时,门户首先会检查你是否拥有一个包含 Microsoft.Storage/storageAccounts/listkeys/action 的角色。如果你被分配了包含此操作的角色,则门户将使用帐户密钥来访问 blob 数据。如果你不拥有包含此操作的角色,则门户会尝试使用你的 Azure AD 帐户访问数据。

相关文档:https://docs.microsoft.com/zh-cn/azure/storage/blobs/authorize-data-operations-portal

我们是设计师、工程师、梦想者,是您扬帆出海的私人顾问专家


相关内容:
[亚马逊开店深圳办事处地址在哪里]
[亚马逊开店深圳办事处地址在哪里]
亚马逊开店深圳办事处地址揭秘:一站式开店服务,轻松拥抱财富!各位亲爱的创业者们,你们好!今天要给大家带来一个好消息——亚马逊开店深圳办事处地址终于揭开了神秘面纱!在这里,
亚马逊开店卖翡翠怎么样?
亚马逊开店卖翡翠怎么样?
亚马逊开店卖翡翠:珠宝行业的巨大商机等你来挖掘!在炎热的夏季,一杯清凉的饮料、一本好书和一个精美的翡翠饰品,想必是很多人的首选。翡翠作为中国传统文化中的瑰宝之一,以其晶莹

TG客服:@SSjiejie — 官方频道:@SSwangluo

三生网络 © 2009-2023 超15年出海经验,跨境项目专家