Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
---
sidebar_class_name: hidden
description: "Checks if any high-privilege first-party Microsoft service principals (e.g."
id: Test-MtHighPrivilegeServicePrincipalsForAllUsers
title: Test-MtHighPrivilegeServicePrincipalsForAllUsers
hide_title: false
hide_table_of_contents: false
custom_edit_url: https://github.com/maester365/maester/blob/main/powershell/public/Test-MtHighPrivilegeServicePrincipalsForAllUsers.ps1
---

## SYNOPSIS

Checks if any high-privilege first-party Microsoft service principals (e.g.
Azure PowerShell, Azure CLI and
Azure Developer CLI, Microsoft Graph Command Line Tools, Graph Explorer, Azure AD PowerShell, Exchange Online
PowerShell, SharePoint Online Management Shell, Teams PowerShell, Power Platform CLI) are open to all users
instead of requiring explicit assignment.

## SYNTAX

```powershell
Test-MtHighPrivilegeServicePrincipalsForAllUsers [-ProgressAction <ActionPreference>] [<CommonParameters>]
```

## DESCRIPTION

A small set of Microsoft first-party applications carry broad, pre-consented delegated permissions to Azure
Resource Manager and Microsoft Graph and are commonly used to enumerate or exfiltrate tenant data once an
attacker has a foothold on any single user account.
Unlike third-party apps, these Microsoft-owned apps can
remain available without a visible service principal in the tenant and are easy to overlook when locking down
'Assignment required?'.

## EXAMPLES

### EXAMPLE 1

```powershell
Test-MtHighPrivilegeServicePrincipalsForAllUsers
```

Returns true if none of the monitored high-privilege service principals can be used by any user.

## PARAMETERS

### -ProgressAction

Determines how PowerShell responds to progress updates generated by a script, cmdlet, or provider, such as the progress bars generated by Write-Progress.

```yaml
Type: ActionPreference
Parameter Sets: (All)
Aliases: proga

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).

## INPUTS

## OUTPUTS

### System.Boolean

## NOTES

## RELATED LINKS

[https://maester.dev/docs/commands/Test-MtHighPrivilegeServicePrincipalsForAllUsers](https://maester.dev/docs/commands/Test-MtHighPrivilegeServicePrincipalsForAllUsers)
1 change: 1 addition & 0 deletions website/docs/commands/docusaurus.sidebar.js
Original file line number Diff line number Diff line change
Expand Up @@ -635,6 +635,7 @@ module.exports = [
'commands/Test-MtExoSetScl',
'commands/Test-MtFeatureUpdatePolicy',
'commands/Test-MtGroupCreationRestricted',
'commands/Test-MtHighPrivilegeServicePrincipalsForAllUsers',
'commands/Test-MtHighRiskAppPermissions',
'commands/Test-MtIntuneAppControl',
'commands/Test-MtIntuneASRRules',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
---
sidebar_class_name: hidden
description: "Checks if any high-privilege first-party Microsoft service principals (e.g."
id: Test-MtHighPrivilegeServicePrincipalsForAllUsers
title: Test-MtHighPrivilegeServicePrincipalsForAllUsers
hide_title: false
hide_table_of_contents: false
custom_edit_url: https://github.com/maester365/maester/blob/main/powershell/public/Test-MtHighPrivilegeServicePrincipalsForAllUsers.ps1
---

## SYNOPSIS

Checks if any high-privilege first-party Microsoft service principals (e.g.
Azure PowerShell, Azure CLI and
Azure Developer CLI, Microsoft Graph Command Line Tools, Graph Explorer, Azure AD PowerShell, Exchange Online
PowerShell, SharePoint Online Management Shell, Teams PowerShell, Power Platform CLI) are open to all users
instead of requiring explicit assignment.

## SYNTAX

```powershell
Test-MtHighPrivilegeServicePrincipalsForAllUsers [-ProgressAction <ActionPreference>] [<CommonParameters>]
```

## DESCRIPTION

A small set of Microsoft first-party applications carry broad, pre-consented delegated permissions to Azure
Resource Manager and Microsoft Graph and are commonly used to enumerate or exfiltrate tenant data once an
attacker has a foothold on any single user account.
Unlike third-party apps, these Microsoft-owned apps can
remain available without a visible service principal in the tenant and are easy to overlook when locking down
'Assignment required?'.

## EXAMPLES

### EXAMPLE 1

```powershell
Test-MtHighPrivilegeServicePrincipalsForAllUsers
```

Returns true if none of the monitored high-privilege service principals can be used by any user.

## PARAMETERS

### -ProgressAction

Determines how PowerShell responds to progress updates generated by a script, cmdlet, or provider, such as the progress bars generated by Write-Progress.

```yaml
Type: ActionPreference
Parameter Sets: (All)
Aliases: proga

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).

## INPUTS

## OUTPUTS

### System.Boolean

## NOTES

## RELATED LINKS

[https://maester.dev/docs/commands/Test-MtHighPrivilegeServicePrincipalsForAllUsers](https://maester.dev/docs/commands/Test-MtHighPrivilegeServicePrincipalsForAllUsers)