首页 > 解决方案 > 如何从 DevOps 发布管道运行 Connect-AzureAD?

问题描述

我需要New-AzureADServiceAppRoleAssignment从发布管道中的 Powershell 脚本运行。

前提条件是Connect-AzureAD,默认情况下会提示进行身份验证。我已经查看了 StackOverflow 以了解我能找到的这个问题的每一个排列,并且提到的解决方案都没有工作。

Azure Powershell 任务存在已登录,这只是发生。我必须做什么才能使用登录的上下文来连接 AzureAD 模块?

标签: azure-devopsazure-active-directory

解决方案


如何从 DevOps 发布管道运行 Connect-AzureAD?

那是因为Connect-AzureAD默认情况下会在弹出窗口中提示您输入登录名和密码。

默认情况下, Azure DevOps 内部Connect-AzureAD堆栈等待身份验证。

我们可以尝试使用以下-Credential选项Connect-AzureAD

$SecurePassword = ConvertTo-SecureString $AdminPassword -AsPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential ($AdminUserEmailAddress, $SecurePassword)
Connect-AzureAD -Credential $Credential

我们需要在您的 Azure AD 中创建服务主体,并有权访问 Microsoft Graph 并生成密钥。之后,您可以使用服务主体的应用程序 ID 和密钥作为登录名和密码$Credential

我们可以将凭证存储在秘密变量中。

您可以查看这个这个线程以获取更多详细信息。

希望这可以帮助。


推荐阅读