365TUNE

2.3.6

365TUNE PowerShell toolkit for Microsoft 365 license optimization, security compliance, cost reporting, and Azure permissions management.

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name 365TUNE -RequiredVersion 2.3.6

Copy and Paste the following command to install this package using Microsoft.PowerShell.PSResourceGet More Info

Install-PSResource -Name 365TUNE -Version 2.3.6

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More

Owners

Copyright

(c) 2025 Metawise Consulting LLC. All rights reserved.

Package Details

Author(s)

  • Metawise Consulting LLC

Tags

Azure Microsoft365 M365 MSP Licensing Security Compliance CIS Entra GDAP ExchangeOnline 365TUNE

Functions

Invoke-365TUNEConnectAll Invoke-365TUNERevokeAll Invoke-365TuneConnectAzure Invoke-365TuneRevokeAzure Invoke-365TuneConnectExchange Invoke-365TuneRevokeExchange Invoke-365TuneConnectTeams Invoke-365TuneRevokeTeams Invoke-365TuneTestAzure Invoke-365TuneTestExchange Invoke-365TuneTestTeams Invoke-365TUNETestAll

Dependencies

This module has no dependencies.

Release Notes

v2.3.6 (bug fix release)
- Fixed UnsupportedFilter error in TestAzure, ConnectAzure, and RevokeAzure: root-scope
 role assignment queries now include principalId filter required by the Azure ARM API.
 Unfiltered queries at '/' scope are rejected by the API with UnsupportedFilter.

v2.3.5 (bug fix release)
- Fixed Cloud Shell authentication: all functions now authenticate as the signed-in user
 instead of the VM Managed Identity (MSI). MSI has no Graph API or Exchange Admin
 permissions, causing all Cloud Shell runs to fail silently or throw.
- Fixed 5 misplaced backtick line-continuations in ConnectExchange, ConnectTeams,
 RevokeTeams that broke command parsing and caused ParameterBindingExceptions.
- Fixed -TimeoutSec and -ErrorAction Stop being bound to Where-Object instead of
 Invoke-RestMethod in ConnectAzure and RevokeAzure (6 occurrences).
- Fixed -ErrorAction Stop applied to Out-Null instead of Invoke-RestMethod in
 ConnectExchange and ConnectTeams, causing silent swallowing of HTTP errors.
- Fixed RevokeAzure: REST queries between elevation and try/finally block were
 unprotected - if they threw, User Access Administrator elevation was never removed.
 All post-elevation code is now inside a single try/finally block.
- Updated ConnectExchange and RevokeExchange .DESCRIPTION: now supported in Cloud Shell.

FileList

Version History

Version Downloads Last updated
2.3.7 0 2/25/2026
2.3.6 (current version) 0 2/25/2026
2.3.5 0 2/25/2026
2.3.4 0 2/25/2026
2.3.2 0 2/25/2026
2.3.1 0 2/25/2026
2.3.0 0 2/25/2026
2.2.9 0 2/25/2026
2.2.8 0 2/25/2026
2.2.7 0 2/25/2026
2.2.6 0 2/25/2026
2.2.5 0 2/25/2026
2.2.4 0 2/25/2026
2.2.3 0 2/25/2026
2.2.0 0 2/25/2026
2.1.9 0 2/24/2026
2.1.8 0 2/24/2026
2.1.7 7 2/21/2026
2.1.6 5 2/21/2026
2.1.5 9 2/20/2026
1.9.1 5 2/19/2026
Show more