powershell - 从 AzureAD 用户创建 PSCredential

标签 powershell credentials azure-powershell runas

我不知道为什么我想不通,这不像我做的那么难。我正在尝试创建一个 powershell 脚本,该脚本将使用 AzureAD 的显式凭据提升自身。我创建了一个 PSCredential 对象:

$ss = ConvertTo-SecureString "p@ssw0rd" -AsPlainText -Force
$cred = New-Object PSCredential -ArgumentList 'username@domain.com', $ss
Start-Process PowerShell -Credential $cred "-NoProfile -ExecutionPolicy Bypass -Command `"cd '$pwd'; & '$PSCommandPath';`""
exit;

当我执行它时,我得到 Start-Process : This command cannot be run due to the error: The user name or password is incorrect.

我知道用户名和密码正确的,但我猜这与这是 AzureAD 用户这一事实有关?我是否必须以不同方式设置 AzureAD 用户名的格式?我已经尝试以我能想到的所有方式重新格式化它。我已经尝试使用 Connect-AzureAD 并使用 Get-AzureADUser 来尝试查看我是否可以使用它的某些属性进行登录,但结果是空的。

这可能吗?

最佳答案

对于 Start-Process,您必须以“DOMAIN\user”格式指定用户名。我不确定此限制来自何处。

enter image description here

关于powershell - 从 AzureAD 用户创建 PSCredential,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64920891/

相关文章:

arrays - Powershell中的数组类型-System.Object []与具有特定类型的数组

powershell - 如何递归删除PowerShell中的所有空文件夹?

mysql - 以集中且安全的方式使用 MySQL 联合表时存储远程服务器凭据

json - 通过 ARM 模板将子网添加到现有 Vnet

Azure powershell 更改为检查 Azure Data Lake Storage Gen 1 中的文件并触发 BAT 脚本

arrays - 如何按每个新行拆分字符串并将每一行放入 PowerShell 中的单独数组条目中

ssl-certificate - 在哪里存储 DevOps 的凭据?

c# - CredRead() 无法跨登录 session 工作

azure - 使用托管标识启动 Azure VM Runbook

azure - 使用 New-AzureADMSApplication 创建应用程序注册时如何自定义所有者?