需要帮助使用PowerShell解析JSON

时间:2018-11-29 21:35:55

标签: json powershell

我下面尝试使用PowerShell解析JSON块。 JSON的用途是表示应在Azure应用注册上授予AD组的权限。一个应用程序将分配有多个组,每个组将具有一组唯一的角色(权限)。完整的JSON文件包含其中几个application块。

基本上,我要使用PowerShell进行的操作是使用application,查询Azure AD以获取应用程序资源,然后修改资源以使用{ {1}}。

常规思路是,我需要一个嵌套在一个循环内的循环,其中第一个循环捕获New-AzureADGroupAppRoleAssignment块,然后第二个循环捕获application块,然后第三循环获取该组的groupname数组。

roles

2 个答案:

答案 0 :(得分:1)

这样的事情应该让你入门

$json = SomethingThatGetsJson | ConvertFrom-Json
$json.application | % {
   $data = $_
   Write-Host $data.groupname
   $data.roles | % {
      $role = $_
      Write-Host $role
   }
}
如果想要获得更多详细信息,

%ForEach-Object的简写。 $_是枚举当前迭代中的元素值。

答案 1 :(得分:0)

只要返回的JSON有效,您就应该使用ConvertFrom-Json cmdlet,它将JSON字符串转换为适当的对象,您可以点遍历并运行其他标准cmdlet,例如{{1} },selectwhere