Запрос PowerShell Where-Object для пустого или NULL содержимого между круглыми скобками - PullRequest
0 голосов
/ 09 июля 2020

Приношу свои извинения, если мой вопрос не совсем описывает то, что я здесь задаю! Я не уверен, как фильтровать содержимое поля или его отсутствие между фигурными скобками / круглыми скобками. Мои лучшие результаты поиска возвращают ЭТО статью, что, по моему мнению, не решает мою проблему.

Я пытаюсь вывести всех пользователей из MSOnline / AzureAD, у которых отключена опция многофакторной аутентификации /не задано. Этот факт немного тривиален, но он устанавливает контекст ....

У меня есть запрос ниже, который возвращает тестового пользователя, у которого, как я знаю, не настроено значение StrongAuthenticationRequirements.

> get-MsolUser -UserPrincipalName test@contoso.com | select UserPrincipalName,DisplayName,StrongAuthenticationRequirements

UserPrincipalName DisplayName  StrongAuthenticationRequirements
----------------- -----------  --------------------------------
test@contoso.com  Test Account {}

Я также могу выполнить запрос, используя Where-Object, чтобы найти те, у которых ДЕЙСТВИТЕЛЬНО установлено значение.

> get-MsolUser | where-object { $_.StrongAuthenticationRequirements -like "*Microsoft.Online.Administration.StrongAuthenticationRequirement*" } | select UserPrincipalName,DisplayName,StrongAuthenticationRequirements

UserPrincipalName DisplayName  StrongAuthenticationRequirements
----------------- -----------  --------------------------------
test@contoso.com  Test Account {Microsoft.Online.Administration.StrongAuthenticationRequirement}

Мой вопрос; как выполнить запрос c, не относящийся к пользователю, чтобы найти все экземпляры, в которых поле StrongAuthenticationRequirement равно "{}"?

Заранее спасибо!

1 Ответ

3 голосов
/ 09 июля 2020

Поскольку StrongAuthenticationRequirements является коллекцией, пустая коллекция будет иметь Count значение 0.

Get-MsolUser -All | Where-Object { $_.StrongAuthenticationRequirements.Count -eq 0 } |
    Select UserPrincipalName,DisplayName,StrongAuthenticationRequirements
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...