将 Datafactory 应用程序分配给应用程序角色
Posted
技术标签:
【中文标题】将 Datafactory 应用程序分配给应用程序角色【英文标题】:Assigning a Datafactory application to an app role 【发布时间】:2022-01-17 00:10:32 【问题描述】:我正在尝试运行以下命令(我之前运行过没有问题)...
# Assign the managed identity access to the app role.
New-AzureADServiceAppRoleAssignment -ObjectId $managedIdentityObjectId
-Id $appRoleId -PrincipalId $managedIdentityObjectId
-ResourceId $serverServicePrincipalObjectId
但是,一旦我插入这些值,我就会收到以下错误...
New-AzureADServiceAppRoleAssignment:执行 NewServicePrincipalAppRoleAssignment 时出错 代码:Request_BadRequest 消息:不是有效的参考更新。 请求 ID:8ad2de7d-8b74-4cd9-b544-3200bb66a763 日期时间戳:2021 年 12 月 13 日星期一 14:04:52 GMT HttpStatusCode:错误请求 HttpStatusDescription:错误请求 HttpResponseStatus:已完成
有人知道“不是有效的参考更新”是什么意思吗?
【问题讨论】:
我应该补充一点,我尝试分配给应用服务角色的资源是 Azure Datafactory 资源。我过去已经为角色分配了服务原则,所以不确定 Datafactory 是否存在限制 【参考方案1】:首先,连接到 Azure AD。
Connect-AzureAD
现在使用以下命令格式:
New-AzureADServiceAppRoleAssignment -ObjectId $ServicePrincipalsID -Id $RoleID -PrincipalId $ServicePrincipalsID -ResourceId $APIservicePrincipalID
注意:ObjectId
和 PrincipalId
都是 MSI 生成的服务主体的 ID。 Id
是角色的 ID。 ResourceId
是 API 服务主体的 ID。
【讨论】:
【参考方案2】:我已经意识到我哪里出错了。我的“-ID”(应用角色 ID)和“-PrincipallID”值不正确(错误的方式!)。现在一切正常。
【讨论】:
以上是关于将 Datafactory 应用程序分配给应用程序角色的主要内容,如果未能解决你的问题,请参考以下文章
datafactory5.6向mysql5.7添加大量测试数据