多个租户中的主体可以在一个 Azure 数据资源管理器群集中运行查询和命令。
本文介绍如何向来自另一租户的主体授予群集访问权限。
Overview
若要让来自其他租户的主体,则群集主租户使用它,
- 主体必须具有允许访问群集的角色分配
- 必须将群集配置为允许访问外部租户
注意
- 对受信任的外部租户的验证 先行,并且与 角色分配的验证不相等。
- 允许的租户和允许的主体是经过认真管理的。
- 群集不允许的租户中的主体可能存在角色分配。
- 删除受信任的外部租户不会从此租户隐式删除主体的角色分配。
配置外部受信任的租户
若要在群集上设置 trustedExternalTenants,请使用 ARM 模板、AZ CLI、PowerShell、Azure 资源管理器或发送 API 请求。
以下示例演示如何使用门户和 API 请求定义受信任的租户。
在 Azure 门户中,转到 Azure 数据资源管理器群集页。
在左侧菜单中的“设置”下,选择“安全性”。
定义所需的租户权限。
语法
允许特定租户
trustedExternalTenants: [ {"value": "tenantId1" }, { "value": "tenantId2" }, ... ]
允许所有租户
trustedExternalTenants 数组也支持所有租户星号(“*”)表示法,从而能够允许来自所有租户的查询和命令。
trustedExternalTenants: [ { "value": "*" }]
注意
trustedExternalTenants 的默认值为所有租户:[ { "value": "*" }]。 如果在群集创建时未定义外部租户数组,可以通过群集更新操作来重写该数组。 空数组意味着仅允许使用群集租户的标识对该群集进行身份验证。
详细了解语法约定。
示例
以下示例允许特定租户在群集上运行查询:
{
"properties": {
"trustedExternalTenants": [
{ "value": "tenantId1" },
{ "value": "tenantId2" },
...
]
}
}
以下示例允许所有租户在群集上运行查询:
{
"properties": {
"trustedExternalTenants": [ { "value": "*" } ]
}
}
更新群集
使用以下操作更新群集:
PATCH https://management.azure.com/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorgtest/providers/Microsoft.Kusto/clusters/kustoclustertest?api-version=2020-09-18
添加主体
更新 trustedExternalTenants 属性后,向已批准的租户授予对主体的访问权限。 使用 ARM 授予所有数据库级别权限。 或者,若要授予数据库、表、函数或具体化视图级别的访问权限,请使用管理命令。