1

我已经使用 New-AzureRmADApplication 和 New-AzureRmADServicePrincipal cmdlet 成功创建了具有应用程序和服务原则的自签名证书。

检索证书后,我可以使用此命令执行登录:

Login-AzureRmAccount -ServicePrincipal -CertificateThumbprint $cert.Thumbprint -TenantId $tenantID -ApplicationId $applicationID 

但是,此身份验证的 SubscriptionId/SubscriptionName 属性显示为空白:

Environment           : AzureCloud

Account               : ********************

TenantId              : ********************

SubscriptionId        : 

SubscriptionName      : 

CurrentStorageAccount : 

随后,此命令有效!

$secret = Get-AzureKeyVaultSecret -VaultName $vaultName -Name $keyName 

令我困惑的是,我能够在我的 DEV 订阅中检索 AzureKeyVaultSecret,但我不明白这个 cmdlet 如何知道要使用我的哪个订阅???我打算在我的 PROD 订阅中创建相同的保管库,但首先需要了解此 ServicePrincipal/Certificate 身份验证如何知道要从哪个订阅中提取和/或如何操作它?

我可以说,当我创建 App/ServicePrincipal 时,我登录时指定了“DEV”订阅,如下所示:

$subscriptionName = "DEV"

$user = "user@company.com"

$password = "*****" 

$securePassword = ConvertTo-SecureString $password -AsPlainText -Force 

$credential = New-Object System.Management.Automation.PSCredential ($user, $securePassword)

Login-AzureRmAccount -Credential $credential  -SubscriptionName $subscriptionName  
4

0 回答 0