【问题标题】:Using PowerShell, How to get list of all Azure subscriptions having Azure Data factory Resource in it?使用 PowerShell,如何获取其中包含 Azure 数据工厂资源的所有 Azure 订阅的列表?
【发布时间】:2021-06-04 09:47:22
【问题描述】:

我想检索其中包含 Azure 数据工厂资源的订阅列表。我想用PowerShell来获取订阅列表和ADF列表。

我试过Get-AzSubscription,但它不包含资源类型的过滤器,即Microsoft.DataFactory/factories。此过滤器只能添加到Get-AzResource

  1. Get-AzSubscription Module
  2. Get-AzResource Module

【问题讨论】:

  • 您好!你已经有东西要开始了吗?您已经尝试过的任何东西,有人可以帮助添加吗?
  • @Ked - 更新了问题详细信息部分。

标签: azure azure-powershell


【解决方案1】:

好的,你来了:

$resType     = "Microsoft.DataFactory/factories"
$resTypeName = "DataFactory"
Get-AzSubscription | ForEach-Object {
    $subscriptionName = $_.Name
    $tenantId = $_.TenantId
    Set-AzContext -SubscriptionId $_.SubscriptionId -TenantId $_.TenantId
    (Get-AzResource -ResourceType $ResType) | ForEach-Object {     
        [PSCustomObject] @{
            true_sub = $subscriptionName
        } 
    } | get-unique 
} | Select-String 'true_sub' | ForEach-Object{ "Found_" + "$resTypeName" + "_In_Subscription= $($subscriptionName)"}

编辑:添加了变量,使其可轻松用于任何资源类型。

我使用herehere 可用的代码根据要求创建了一个自定义代码。在我的环境中测试 - 它似乎按预期工作。

我应该透露我不是高级 PowerShell 用户,所以我提供的代码可能真的不是最佳的。

【讨论】:

  • 这对我有用。但只是想检查是否有任何其他优化方式。
  • 如果您使用的是 Azure Resource Graph Explorer,那么这很容易,因为它为您提供了一种轻松查询所有订阅的方法。对于 powershell,天蓝色的上下文很重要——这就是问题所在。如果您想查询不同的订阅,您确实需要将您的上下文更改为不同的订阅
  • 好的。我将在 Azure Resource Graph 上进行更多探索。感谢您的解决方案。
猜你喜欢
  • 2013-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-14
  • 1970-01-01
相关资源
最近更新 更多