![](/img/trans.png)
[英]how to get object id and application id of kubernetes service principal azure
[英]Azure bicep get application id of service principal
Bicep 可用於創建角色分配,如下所示:
resource RoleAssignment 'Microsoft.Authorization/roleAssignments@2020-10-01-preview' = {
name: guid(managementGroup().id, RoleDefinitionId, principalId)
properties: {
roleDefinitionId: roleDefinition.id
principalId: principalId
principalType: principalType
}
}
在主體類型為“ServicePrincipal”的情況下,似乎需要 Azure 門戶的企業應用程序頁面中的應用程序 ID:
有誰知道如何以編程方式獲取它? 如果不可能使用二頭肌,那么也許是 PowerShell?
要通過PowerShell獲取服務主體的Application ID
,您可以使用以下命令:
(Get-AzADServicePrincipal -DisplayName AppName).AppId
我試圖在我的環境中重現相同的結果並得到以下結果:
我有一個名為ClientApp
的服務主體,並成功獲得了它的應用程序 ID ,如下所示:
(Get-AzADServicePrincipal -DisplayName ClientApp).AppId
回復:
您可以使用 output 資源,例如:
resource workflows_la 'Microsoft.Logic/workflows@2017-07-01' = {
name: 'la-${env_id}-test'
location: location
identity: {
type: 'SystemAssigned'
}
output logicapp_managed_identity string = workflows_la.identity.principalId
所以你可以在角色分配資源中使用:
resource roleAssignmentlogicApp 'Microsoft.Authorization/roleAssignments@2020-04-01-preview' = {
scope: Storage
name: guid(Storage.id, managed_identity_logic_app, roleDefinitionResourceId)
properties: {
roleDefinitionId: roleDefinitionResourceId
principalId: managed_identity_logic_app
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.