You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Azure Bicep或PowerShell获取服务主体的应用ID?

获取服务主体的企业应用ID(应用ID)的程序化方式

一、Azure Bicep 实现方式

可以直接通过Bicep的资源引用或内置逻辑获取,无需额外脚本:

  1. 引用已存在的服务主体
    如果已知服务主体的显示名称,可通过existing关键字直接关联对应的Azure AD应用资源,提取其appId:

    existing adApp 'Microsoft.AzureAD/b2cDirectories/applications@2021-04-01-preview' = {
      name: '目标服务主体显示名称'
    }
    
    // 提取应用ID作为角色分配的principalId
    var principalId = adApp.properties.appId
    
  2. 引用同模板创建的服务主体
    若你在当前Bicep模板内创建服务主体,可直接引用其输出的appId属性:

    resource newAdApp 'Microsoft.AzureAD/b2cDirectories/applications@2021-04-01-preview' = {
      name: 'new-service-principal'
      properties: {
        // 服务主体配置参数
      }
    }
    
    // 直接获取新创建服务主体的应用ID
    var principalId = newAdApp.properties.appId
    

二、PowerShell 实现方式

如果Bicep的场景限制无法满足需求,PowerShell可以灵活实现获取操作,以下是常用命令:

  1. 按服务主体显示名称查询

    # 获取目标服务主体对象并提取应用ID
    $servicePrincipal = Get-AzADServicePrincipal -DisplayName '目标服务主体名称'
    $appId = $servicePrincipal.AppId
    
  2. 按服务主体对象ID查询

    $servicePrincipal = Get-AzADServicePrincipal -ObjectId '服务主体对象ID'
    $appId = $servicePrincipal.AppId
    
  3. 批量导出服务主体信息
    若需要批量查看,可导出所有服务主体的显示名称、应用ID和对象ID:

    Get-AzADServicePrincipal | Select-Object DisplayName, AppId, ObjectId
    

内容的提问来源于stack exchange,提问作者Rob Bowman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 06:05:23