azure-devops - 如何从 DevOps 发布管道运行 Connect-AzureAD?
问题描述
我需要New-AzureADServiceAppRoleAssignment
从发布管道中的 Powershell 脚本运行。
前提条件是Connect-AzureAD
,默认情况下会提示进行身份验证。我已经查看了 StackOverflow 以了解我能找到的这个问题的每一个排列,并且提到的解决方案都没有工作。
Azure Powershell 任务存在已登录,这只是发生。我必须做什么才能使用登录的上下文来连接 AzureAD 模块?
解决方案
如何从 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
。
我们可以将凭证存储在秘密变量中。
希望这可以帮助。
推荐阅读
- firebase - 有什么方法可以根据 firebase 分析事件调用远程 api 端点?
- rust - 如何在基板模块中将块号转换为整数类型?
- css - 如何使用文本视差 CSS 删除此图像中多余的空白
- laravel - 如何减小 node_modules 文件夹的大小?
- firebase - 荒谬的 Firestore 集合和安全规则继承
- node.js - 生成中的编码/转义(Node.js,子进程)
- sql - sql:选择没有重复数据的查询
- javascript - 在 React Hooks 中组合多个 src
- c++ - C++ 无输出网格路径
- airflow - 气流调度程序无法通过 WSL 执行 Windows EXE