Welcome to the Microsoft Graph Console GUI Search Tool! This interactive PowerShell function allows you to search and view detailed information for various Microsoft 365 and Azure AD objects through a friendly console-based GUI.
Quickly search and explore Microsoft 365 and Azure AD objects using an intuitive console-based GUI interface. The tool simplifies the process of finding and viewing detailed information about various Microsoft Graph resources.
This tool provides an interactive console-based GUI using Out-ConsoleGridView that enables you to search for and display full details of Microsoft Graph objects such as:
- 👤 Users
- 👥 Groups
- 💻 Devices
- 📱 Mobile Apps
- 🔐 Service Principals
- ⚙️ Settings Catalog Policies
- 📄 Configuration Profiles
- 𝍒 Compliance Policies
- 📲 App Protection Policies
- 💡 Discovered Apps
It leverages the Microsoft Graph Beta API endpoints and requires appropriate permissions for each object type.
Before using this tool, please ensure you have the following installed:
- Microsoft.Graph.Beta PowerShell module
(Install using:Install-Module Microsoft.Graph.Beta) - Microsoft.PowerShell.ConsoleGuiTools module
(Install using:Install-Module Microsoft.PowerShell.ConsoleGuiTools) - PowerShell version 6.0 or later
Also, ensure you have connected to Microsoft Graph with the required scopes/permissions, for example:
- User:
User.Read.All - Group:
Group.Read.All - Device:
Device.Read.All - Mobile App:
DeviceManagementApps.Read.All - Service Principal:
Application.Read.All - Settings Catalog / Config Profile:
DeviceManagementConfiguration.Read.All - App Protection
DeviceManagementApps.Read.All - Compliance Policy
DeviceManagementConfiguration.Read.All - Discovered Apps
DeviceManagementManagedDevices.Read.All
-
Import the Function
. .\Invoke-MgConsoleGuiGraphSearch.ps1 # Or with full path . "C:\Path\To\Invoke-MgConsoleGuiGraphSearch.ps1"
-
Connect to Microsoft Graph: Before running the search tool, connect to Microsoft Graph using:
Connect-MgGraph -Scopes "User.Read.All", "Group.Read.All", "Device.Read.All", "DeviceManagementApps.Read.All", "Application.Read.All", "DeviceManagementConfiguration.Read.All"
-
Select an Object Type: Use the
-ObjectTypeparameter to specify the type of object you want to search for. Valid values include:UserGroupDeviceMobileAppServicePrincipalSettingsCatalogConfigProfileAppProtectionCompliancePolicyDiscoveredApps
-
Interactive Selection: A grid view appears, showing a subset of common properties for quick selection. Once you select one or more items, the tool retrieves and displays the full details of the selected objects.
Optional Search:
Provide a search string using the -Search parameter to filter results. If no search string is provided, the function retrieves all items for the selected object type.
Optional Output Type:
Use the -OutputType parameter to specify the type of output you want returned.
Valid values include:
JSONGridListTableSystem.Object
System.Object is default if none is provided.
Invoke-MgConsoleGuiGraphSearch -ObjectType UserInvoke-MgConsoleGuiGraphSearch -ObjectType Group -Search "IT"Invoke-MgConsoleGuiGraphSearch -ObjectType Device -Search "Windows"Invoke-MgConsoleGuiGraphSearch -ObjectType MobileAppInvoke-MgConsoleGuiGraphSearch -ObjectType ServicePrincipal -Search "Microsoft"Invoke-MgConsoleGuiGraphSearch -ObjectType SettingsCatalogInvoke-MgConsoleGuiGraphSearch -ObjectType ConfigProfile -Search "MacOS"Invoke-MgConsoleGuiGraphSearch -ObjectType AppProtection -Search "iOS" -OutputType JSONInvoke-MgConsoleGuiGraphSearch -ObjectType CompliancePolicyInvoke-MgConsoleGuiGraphSearch -ObjectType DiscoveredApps -Search "Zune"This tool simplifies searching through Microsoft Graph objects with an interactive and user-friendly console GUI. Enjoy exploring your Microsoft 365 and Azure AD data! 😄
