azure - Azure 拒绝分配以阻止对 Azure Blob 存储的读取访问
问题描述
有没有办法使用 azure 蓝图在管理组级别创建拒绝分配,以防止所有者和参与者角色读取 blob 存储内容。在我的具体情况下,我想存储 terraform 状态并且只想授予服务原则读/写访问权限。所有者和贡献者应该只能管理存储。这是否可以通过蓝图或其他方式实现?如果是的话,由于我缺乏信息,您是否有一些资源,谢谢。
解决方案
借助 Azure AD,我们可以借助基于角色的访问控制来配置访问权限,我们可以在其中设置访问blob 数据的权限。
Azure 角色分配给安全主体,然后将使用它访问资源。Azure AD 安全主体可以是用户、组、应用程序服务主体或 Azure 资源的托管标识。
下面是我们如何使用 CLI 进行操作:
az role assignment create \
--role "Storage Blob Data Contributor" \
--assignee <email> \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>/blobServices/default/containers/<container>"
现在来拒绝访问,我们可以限制对用户或安全主体的资源访问。
除了这些,我们还有一些锁定模式和状态,我们可以在其中设置对资源组的只读访问权限,它们不能出错或删除。
以下是我们如何使用资源锁定从拒绝分配中排除操作:
"locks": {
"mode": "AllResourcesDoNotDelete",
"excludedPrincipals": [
"7be2f100-3af5-4c15-bcb7-27ee43784a1f",
"38833b56-194d-420b-90ce-cff578296714"
],
"excludedActions": [
"Microsoft.ContainerRegistry/registries/push/write",
"Microsoft.Authorization/*/read"
]
},
推荐阅读
- python - 为什么 Raspberry Pi 中带有 arduPi 库的 Arduino 代码不起作用?
- quectel - BG95 无法激活 - AT+QIACT=1 返回错误
- regex - Powershell中的多行正则表达式查找失败
- c++ - 如何在 C++ 中访问子类
- c++ - C ++在两个分离的线程之间共享非阻塞队列和互斥锁
- android - 在 ListView 中对片段进行排序
- javascript - 如何修改只读 ng-app 的结果?
- javascript - 使用 json 数据设置轴 anychart.js
- json - Json parsing and mapping keys
- python - Apply a condition to a group and populate only some rows of a new column