Role Based Access Control (RBAC)
可以通过RBAC实现细粒度访问控制。
- 实现team成员之间的职责区分
- 注意权限最小化原则:只赋予成员必须的权限
在RBAC中的几个概念:
- Security principal
- Role definition: 可以定义owner,contributor,reader,Virtual Machine Operator等不同的系统内置角色,也可以添加自定义角色。
- Scope
- Assignment:就是把role和user,group,service principal等绑定的过程。经过绑定,用户/组等就具有了role对应的权限
Azure roles
- Owner: 拥有对资源的完全控制,同时也能delegates access
- Contributor: 可以创建和管理资源,但不能给其他角色赋权
- Reader: 拥有对资源的只读权限
- User access administrator: 可以授权别的用户对资源的访问
Azure AD roles
和Azure role不同,Azure AD roles用来定义Azure AD identity相关资源,比如:users, applications, devices
- Global Administrator: 可以管理Azure AD资源
Billing Administrator: 可以操作和billing相关的任务
User Administrator: 可以管理用户和组
Helpdesk Administrator: 和help desk相关的任务,比如:为用户重置密码
Azure roles vs Azure AD roles
Azure roles | Azure AD roles |
---|---|
管理Azure资源 | 管理Azure AD资源 |
Scope可以在多个level,比如:MG,Sub,RG,resources | scope只在tenant level |
支持自定义role | 支持自定义role |
创建自定义role:
none
az role definition create --role-definition helpDeskAdminRole.json
Resource Manager
在Azure Resource Manager中可以提供一个统一的方式来管理Azure中的各种资源。基于Resource Manager,可以通过Azure Portal,Azure Powershell,Azure CLI,Rest API等方式来管理Azure Resources。
关于Resources Group:
- 一旦创建,不能改名
- 每个Azure资源只能属于一个resource group
- 在一个resource group中,可以包含来自不同region的不同类型资源
- 部署到resource group中的资源可以是逐渐递增的
Azure资源的移动和删除
可以在不同的resoruce group之间,甚至不同的subscriptions之间移动Azure资源。在移动资源的时候,源/目标resource group在进行移动操作的时候都会被锁定。
当不再使用Azure资源的时候,可以考虑把对应的resource group删除,这样包含在其中的所有资源都会被删除。
Azure都有一个默认的限制(quote),如果需要提升quote,可以想Azure客服发出请求。