【问题标题】:Run Get-AzADApplication from an Azure Runbook using a Managed Identity使用托管标识从 Azure Runbook 运行 Get-AzADApplication
【发布时间】:2023-01-19 16:17:54
【问题描述】:

您好,我想使用自动化帐户 Runbook 获取租户中多个应用程序(但订阅不同)的应用程序注册信息。我目前在自动化帐户上有一个系统分配的托管标识。在我的 powreshell 工作流程运行手册中,我有以下 sn-p 代码:

try{
            "Logging in to Azure..."
            #Connect-AzAccount
            Connect-AzAccount -Identity
            $token = (Get-AzAccessToken -ResourceTypeName MSGraph).token
            $secreToken = ConvertTo-SecureString -String $token -AsPlainText -Force
            Connect-MgGraph -AccessToken $secreToken
            }
            catch{
                Write-Error -Message $_.Exception
                throw $_.Exception
                }


$apps = Get-AzADApplication

当我运行 Runbook 时,我收到 Insufficient privileges to complete the operation. 错误消息。无论如何以这种方式使用托管标识运行 Get-AzADApplication 吗?如果没有,是否有更好的身份验证方法可以使用?

【问题讨论】:

  • 您的 MSI 具有哪种 AAD 角色?
  • 如果我转到 AAD->企业应用程序->搜索我的 MSI->角色和管理员,我会看到应用程序凭据管理员、云应用程序管理员、报告阅读器和 XOM - 应用程序角色管理员

标签: azure powershell runbook


【解决方案1】:

首先,我已经尝试了你的代码并得到了与你得到的类似的错误,如下所示:

现在,首先转到 azure 活动目录,然后单击角色和管理员:

然后搜索目录Readers如下,然后点击它:

然后点击添加任务如下:

然后选择一个成员如下:

然后点击下一步:

现在,我返回 Runbook,当我运行时,错误已解决:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-10
    • 1970-01-01
    • 2022-11-11
    • 2020-12-30
    • 2019-09-08
    • 1970-01-01
    • 2019-05-05
    • 2020-10-04
    相关资源
    最近更新 更多