pnp / cli-microsoft365

Manage Microsoft 365 and SharePoint Framework projects on any platform
https://aka.ms/cli-m365
MIT License
882 stars 312 forks source link

New command: `m365 entra multitenant remove` #6009

Open MartinM85 opened 2 months ago

MartinM85 commented 2 months ago

Usage

m365 entra multitenant remove [options]

Description

Removes a multitenant organization

Options

Option Description
-f, --force Don't prompt for confirmation.

Examples

Remove the multitenant organization

m365 entra multitenant remove

Remove the multitenant organization without prompting for confirmation

m365 entra multitenant remove --force

Default properties

No response

Additional Info

Multitenant organization is a brand new feature in Microsoft Entra ID

https://learn.microsoft.com/en-us/entra/identity/multi-tenant-organizations/overview

The signed-in user must be assigned at least the Security Administrator role. It requires new permission MultiTenantOrganization.ReadWrite.All

Only an active owner tenant can remove the entire multitenant organization. It will also remove all member tenants.

I will work on it.

Adam-it commented 2 months ago

the naming is set so let's start reviewing the spec 👍

Jwaegebaert commented 2 months ago

@MartinM85, which endpoint would you call to achieve this? Just had a quick look through the docs and didn't find anything regarding the reset of a multitenant organization structure, so I'm curious about your approach.

MartinM85 commented 2 months ago

@Jwaegebaert I will use this.

entra multitenant remove will remove all joined tenants and the owner tenant will be removed as the last one which will trigger deletion of the entire multitenant organization (already tested on my side). I will add a remark to the doc that all joined tenants will be removed.

An active owner tenant can remove itself as long as there is no other active tenant remaining, thereby deleting the entire multitenant organization.

Jwaegebaert commented 2 months ago

All right, good to know. Before we continue, we'll also need to add the --force option to this command as it's a remove command. But besides that, it should be good to go.

MartinM85 commented 2 months ago

@Jwaegebaert Spec updated.