托管标识策略

ManagedIdentity 是一种策略,用于控制哪些托管标识可用于哪些用途。 例如,可以配置一个策略,用于允许将特定托管标识用于访问存储帐户,以实现引入目的。

可以在群集和数据库级别启用此策略。 此策略是累加性的,这意味着对于涉及托管标识的每个操作,如果在群集或数据库级别允许使用,则允许此操作。

权限

创建或更改托管标识策略需要 AllDatabasesAdmin 权限。

ManagedIdentity 策略对象

与一个群集或数据库关联的 ManagedIdentity 策略对象可以有零个或多个。 每个 ManagedIdentity 策略对象都具有以下用户可定义的属性:DisplayName 和 AllowedUsages。 其他属性将自动根据与指定 ObjectId 关联的托管标识填充,并会显示出来以提供方便。

下表说明了 ManagedIdentity 策略对象的属性:

属性 类型 必需 说明
ObjectId string 托管标识的实际对象 ID 或保留关键字 system(用于引用运行命令的群集的系统托管标识)。
ClientId string 不适用 托管标识的客户端 ID。
TenantId string 不适用 托管标识的租户 ID。
DisplayName string 不适用 托管标识的显示名称。
IsSystem bool 不适用 布尔值,如果标识是系统管理的标识,则此值为 true,否则此值为 false。
AllowedUsages string 以逗号分隔的托管标识的允许用法值列表。 请参阅托管标识用法

下面是 ManagedIdentity 策略对象的一个示例:

{
  "ObjectId": "<objectID>",
  "ClientId": "<clientID>",
  "TenantId": "<tenantID",
  "DisplayName": "myManagedIdentity",
  "IsSystem": false,
  "AllowedUsages": "NativeIngestion, ExternalTable"
}

托管标识用法

以下值使用配置的托管标识指定向 usage 进行的身份验证:

Value 说明
All 允许所有当前的和未来的用法。
AutomatedFlows 代表托管标识运行连续导出更新策略自动流。
DataConnection 向事件中心或事件网格的数据连接进行身份验证。
ExternalTable 向使用配置了托管标识的连接字符串的外部表进行身份验证。
NativeIngestion 向 SDK 进行身份验证,以便从外部源进行原生引入。
SandboxArtifacts 使用托管标识对沙盒插件中引用的外部项目(例如 Python)进行身份验证。 需要在群集级别托管标识策略上定义此用法。