使用Azure管理组管理云中资源
云中管理?管理什么?企业将业务系统部署到云端,Azure平台怎样满足企业监管合规性?
管理指的是维护企业业务系统以及为其提供支持的资源所需的任务和流程。 在Azure中,有许多服务和工具可以协同工作以提供完整的管理。这些服务不仅适用于Azure中的资源,还适用于其他云和本地服务。了解不同的工具以及它们如何协同工作是设计完整管理云中环境的第一步。
不管您将业务系统迁移部署到哪个云平台,都不可能由云中一个服务满足用户企业管理需求,需要搭配多个服务来实现。例如利用Azure Application Insight为企业Web服务提供APM监控分析,利用Log Analytics为云中其他服务存储管理数据,使用该功能分析由不同服务收集不同类型的数据,例如日志分析。
目前在Microsoft Azure平台,针对企业管理服务,可用下图表示在Azure中以不同维度进行资源管理。
今天我们要讲的是其中之一的”管理组”。
假如企业”365vCloud”有很多订阅,那么则可能需要一种方法来高效地管理这些订阅的访问权限、策略和符合性。Azure管理组提供订阅上的作用域级别。可将订阅组织到名为”管理组”的容器中,并将管理条件应用到管理组。管理组中的所有订阅都将自动继承应用于管理组的条件。不管使用什么类型的订阅,管理组都能提供大规模的企业级管理。
例如,可将策略应用到限制创建虚拟机 (VM) 的区域的管理组。此策略将应用到该管理组下面的所有管理组、订阅和资源,只允许在该区域中创建 VM。
可以生成管理组和订阅的灵活层次结构,以便将资源组织成用于统一策略和访问管理的层次结构。下图显示了使用管理组创建用于调控的层次结构的示例。
通过创建层次结构,以便可以应用策略,例如,将VM位置限制到组”基础结构团队管理组”中的”美国西部区域”。 此策略将继承到该管理组下的两个 EA 订阅,并应用到这些订阅下的所有 VM。 此安全策略不能由资源或订阅所有者更改,因此增强了治理效果。
使用管理组的另一个场景是向用户提供对多个订阅的访问权限。通过移动该管理组下的许多订阅,可对该管理组创建一个基于角色的访问控制 (RBAC) 分配,该分配将这种访问权限继承到所有订阅。管理组的一个分配就能让用户访问所需的一切内容,而无需基于多个订阅编写RBAC分配的脚本。
需要说明的是,Azure平台已经为每个Azure Active Directory指定了一个称为”跟(root)”管理组的顶级管理组。此根管理组内置在层次结构中,包含其所有下级管理组和订阅。此根管理组允许在目录级别应用全局策略和RBAC分配。 目录管理员最初需要提升自身的权限才能成为此根组的所有者。当管理员成为组的所有者后,可将任何RBAC角色分配给其他目录用户或组来管理层次结构。
Azure管理组支持使用Azure基于角色的访问控制 (RBAC) 来访问所有资源访问和定义角色。层次结构中的子资源继承这些权限。可将任何内置RBAC角色分配到管理组,该角色将继承资源的层次结构。例如,可以向管理组分配RBAC 角色VM参与者。此角色不对管理组执行任何操作,但将继承该管理组下的所有VM。
RBAC角色名称 |
创建 |
重命名 |
移动 |
删除 |
分配访问权限 |
分配策略 |
读取 |
所有者 |
X |
X |
X |
X |
X |
X |
X |
参与者 |
X |
X |
X |
X |
X |
||
管理组参与者* |
X |
X |
X |
X |
X |
||
读者 |
X |
||||||
管理组读者* |
X |
||||||
资源策略参与者 |
X |
||||||
用户访问管理员 |
X |
备注:*表示管理组参与者和管理组读者在管理组范围执行这些操作。
使用您的有效账户登陆Azure门户:https://portal.azure.com/ ,本实验基于Azure global实现,当前Azure China也已经提供该服务。
选择”所有服务”->”管理组”
在主页上,选择”新建管理组”。
填写管理组ID字段。
- “管理组 ID”是用来在此管理组上提交命令的目录唯一标识符。此标识符在创建后不可编辑,因为它用来在整个 Azure 系统中标识此组。
- 显示名称字段是在Azure门户中显示的名称。创建管理组时,单独的显示名称是一个可选字段,并且可以随时更改。
等待创建完成
等待些许时间后,同一Azure Active Directory目录下的订阅将被加载并关联。
如果有多个管理组,您可以根据需要将订阅移动到多个管理组中
在PowerShell中创建管理组
New-AzureRmManagementGroup -GroupName ‘365vCloud’
如果希望管理组在Azure门户中显示一个不同的名称,则通过字符串添加 DisplayName 参数。例如,如果希望创建一个GroupName 为 365vCloud 且显示名称为”365vCloud Group”的管理组,需要使用以下 cmdlet:
New-AzureRmManagementGroup -GroupName ‘365vCloud’ -DisplayName ‘365vCloud Group’ -ParentId ‘365vCloudTenant’
若要在PowerShell中移动订阅,请使用以下命令
New-AzureRmManagementGroupSubscription -GroupName ‘365vCloud’ -SubscriptionId ‘12345678-1234-1234-1234-123456789012’
如需删除,将New改为remove即可
在Azure CLI中创建管理组
az account management-group create –name ‘365vCloud’
在Azure CLI中移动订阅
az account management-group subscription add –name ‘365vCloud’ –subscription
‘12345678-1234-1234-1234-123456789012’
如需删除,将add改为remove即可
如果希望是哦那个活动日志审核管理组,则需要使用租户活动日志API
- Azure AD 租户的租户管理员可以提升访问权限,然后将一个”读者”角色分配给 /providers/microsoft.insights/eventtypes/management 范围内的审核用户。
- 以审核用户身份调用租户活动日志 API 来查看管理组活动。 需要按资源提供程序 Microsoft.Management 对所有管理组活动进行筛选。例如:
GET
“/providers/Microsoft.Insights/eventtypes/management/values?api-version=2015-04-01&$filter=eventTimestamp ge ‘{greaterThanTimeStamp}’ and eventTimestamp le ‘{lessThanTimestamp}’ and eventChannels eq ‘Operation’ and resourceProvider eq ‘Microsoft.Management'”