【发布时间】:2016-05-19 15:55:00
【问题描述】:
Azure PowerShell 中是否有可返回 AccountAdminLiveEmailId 的 RM cmdlet?
如果您使用经典的 cmdlet,您可以使用:
Get-AzureSubscription -ExtendedDetails
这将返回一个包含 AccountAdminLiveEmailId 的对象。不幸的是,这是一个经典的 cmdlet,因此它需要您使用
登录Add-AzureAccount
而 RM cmdlet 要求您使用
登录Login-AzureRmAccount
或
Add-AzureRmAccount
我们不希望人们登录两次,这样我们就可以访问 RM 和经典 cmdlet,因此我们需要一个可以获取 AccountAdminLiveEmailId 的 RM cmdlet。谢谢。
更新:
使用 Jack Zeng 的答案,我想出了这个。
Login-AzureRmAccount
$Subscriptions = Get-AzureRmSubscription
$Emails = New-Object System.Collections.ArrayList
foreach($Subscription in $Subscriptions)
{
Set-AzureRmContext -TenantId $Subscription.TenantId -SubscriptionId $Subscription.SubscriptionId
$Email = Get-AzureRmRoleAssignment -IncludeClassicAdministrators | where {$_.RoleDefinitionName -eq "ServiceAdministrator;AccountAdministrator"} | Select DisplayName
$Emails.Add($Email)
}
【问题讨论】:
标签: powershell azure azure-powershell