Category: Office365

New Microsoft French Datacenters:

  • 3 new datacenters in Paris working synchronously + 1 datacenter in Marseille working asynchronously with Paris.

Interesting in the context of GDPR rules and sovereign data. But also important will be the Multi-Geos offer coming to provide worldwide presence:

Control where each user’s data is stored

  • Meet your data residency needs in the cloud by storing your Office 365 data at-rest, on a per-user basis, in chosen Office 365 datacenter geographies

Empower global collaboration

  • Migrate from on-premises to a single Office 365 tenant and enable a unified communication & collaboration experience across your company

Supported DATA: Exchange, Sharepoint, Onedrive

Some links:

Microsoft Trust Center

Data Resiliency in Microsoft Office 365

Cloud for Good

LinkedIn: Yes, you can put your toxic data in Office 365


By default Microsoft does not provide tools to migrate OneDrive; sharpoint; exchange mailboxes data from a tenant to another tenant: Here is the lList of software vendors for Azure/Office 365 tenant data migrations:





cloud fastpath by tervela




cloud migrator 365






Deciding which protocol to use for which service

The key distinguishing factor for our service will be found in the URL of the resource… If our URL looks like X, then it is a Y service, and you use Z tool to get to it

URL Service Type Cmdlet
Ends in .asmx or ?WSDL SOAP New-WebServiceProxy
Contains API, especially api/v2 REST Invoke-RESTMethod
Ends in .php PHP/Form Invoke-WebRequest

REST v. Soap, whats the difference?

Both REST and SOAP are simply methods of accessing information presented via web services. It will suffice to say that REST is now in vogue, and is generally believed to be easier to use and manage than SOAP, which tends to be a bit heavier on XML.

“A nice analogy for REST vs. SOAP is mailing a letter: with SOAP, you’re using an envelope; with REST, it’s a postcard. ”


Working with Web Services, SOAP, PHP and all the REST with PowerShell

Office 365 – Microsoft Teams

Related Links and resources:

TEAMS and permissions:

SharePoint Site behind TEAMS:


How to move Mailbox to Exchange online:

About Office 365 message encryption:

New Office 365 Message Encryption capabilities built on top of Azure Information Protection, your organization can use protected email communication with people inside and outside your organization. The new OME capabilities work with other Office 365 organizations,, Gmail, and other email services

OME How to:


Those laptops must run the latest Windows 10 OS with all the new security features and security best practices like:

  • Apply a Hardening Security Baseline from Microsoft Security Compliance Manager (SCM)
  • Enable Secure Boot with UEFI
  • Impose Software Restrictions using AppLocker
  • Enable Full Disk Encryption.
  • Impose Restrictions on USB ports.
  • Implement Network Isolation via host firewall
  • Install and configure the Device Guard, Windows defender ATP or equivalent + Crowdstrike or equivalent
  • Don’t allow Internet access from a browser.
  • Install Minimal Software.
  • Allow Minimal Administrative Accounts (gad-xxxx accounts in our case)
  • Implement a Hardened OU for the PAWs into the GAD of MUCMSPDOM

Office 365 pro plus troubleshooting


To get the information about Office 365 Pro Plus products on a computer, we can use ospp.vbs script:

1)Determine whether the 32-bit or 64-bit version of Office 365 ProPlus is installed. To do this, open an Office 365 ProPlus application, such as Word, and choose File > Account > About {name of app}. 64-bit or 32-bit is displayed next to the application version.

2)Determine whether the computer has the 32-bit or 64-bit version of Windows installed. To do this, press the Windows logo key+E, then choose System properties or Computer > System properties. Under System, the System type property will indicate either a 32-bit or 64-bit operating system.

3)Open a command prompt and type one of the following commands, depending on your versions of Windows and Office:

  • If the 32-bit version of Office 365 ProPlus is installed on the 32-bit version of Windows:cscript.exe "%ProgramFiles%\Microsoft Office\Office15\"ospp.vbs /dstatus
  • If the 32-bit version of Office 365 ProPlus is installed on the 64-bit version of Windows:cscript.exe "%ProgramFiles(x86)%\Microsoft Office\Office15\"ospp.vbs /dstatus
  • If the 64-bit version of Office 365 ProPlus is installed on the 64-bit version of Windows:cscript.exe "%ProgramFiles%\Microsoft Office\Office15\"ospp.vbs /dstatus

4)Review the LICENSE STATUS. The following table describes what each status means.

License status Description
OOB_GRACE Office 365 ProPlus was recently installed and is fully functional, but hasn’t been activated yet. The user is prompted to enter user ID credentials to activate Office 365 ProPlus.
LICENSED Office 365 ProPlus is fully functional and activated.
EXTENDED_GRACE Office 365 ProPlus is fully functional but at risk of going into reduced functionality mode. This status lasts for 30 days and indicates that the product key wasn’t successfully re-activated. In most cases, this means the computer hasn’t connected to the Internet for some time and Office 365 hasn’t had an opportunity to validate the license.
NOTIFICATIONS Office 365 ProPlus is in reduced functionality mode, and displays messages that the user needs to reactivate.


Office 365 Groups

Office 365 groups:

Manage Office 365 groups with PowerShell:

Allow/Block guest access to Office 365 groups:

Office 365 groups naming policies: (I know how to use PowerShell to apply naming convention for new and current groups and blacklisting words in group names!)

How to restrict who can create Office 365 groups:


Office 365 groups governance guidance:

I am in favour of the self-service of the end users. This kind of freedom helps to improve the collaboration and the adoption. But It’s true that a bad use of this self-sevice, can be a nightmare in terms of governance. Here some ideas or highlights to balance the user needs and IT management :

Questions to be addressed before the real production phase:

  • Do we want to continue to allow ALL users to create groups ! or do we want to only allow some users?
    • By default all users can create such office 365 groups ! (contrarily to a normal active directory)
    • In one side it is good for end-user (more flexibility and autonomy) => self-service
    • But in other side, it can be a mess for IT !
  • Do we need a naming convention? (but limited to only one naming convention: ie. OG_, O365_ , <prefix>_<attribute>_<free text> …)
  • Do we need to blacklist words? (which ones? Who decide? …)

Other subject:

  • Need to change the expiration policy ? ( Retention period is 30 days after deletion)
  • To restore Office 365 groups is only via PowerShell or with Exchange admin center
  • Need an end-user procedure to request new group
  • Need an end-user procedure to request group restore



PowerShell connection to exchange online:

Office 365 group => management using PowerShell => not part of AzureAD or MSOnline module => only available online ! But need Basic authentication on the client:

PS C:\WINDOWS\system32> Set-ExecutionPolicy -scope currentUser RemoteSigned

PS C:\WINDOWS\system32> $UserCredential = Get-Credential     <== do not use an account with Azure MFA enabled

Note: if you are using Azure MFA to connect to Exchange online, follow this article:

PS C:\WINDOWS\system32> $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri -Credential $UserCredential -Authentication Basic -AllowRedirection

In case of problem due to Message: “The WinRM client cannot process the request. Basic authentication is currently disabled in the client configuration”

PS E:\–DEV WORK–> winrm get winrm/config/client
NetworkDelayms = 5000
URLPrefix = wsman
AllowUnencrypted = false [Source=”GPO”]
Basic = false [Source=”GPO”]
Digest = false [Source=”GPO”]
Kerberos = true [Source=”GPO”]
Negotiate = true [Source=”GPO”]
Certificate = true
CredSSP = true [Source=”GPO”]
HTTP = 5985
HTTPS = 5986


Import-PSSession $Session

ModuleType Version    Name                                ExportedCommands
———- ——-    —-                                —————-
Script     1.0        tmp_0gtrs5dm.juw                    {Add-AvailabilityAddressSpace, Add-DistributionGroupMember, Add-MailboxFolderPermission, Add-MailboxLocation…}

PS C:\WINDOWS\system32> Get-Mailbox | Get-MailboxStatistics


For Office 365 groups:


PS C:\WINDOWS\system32> get-unifiedgroup “All Guest users”

After your work, dont forget to stop the remote session:

Remove-PSSession $Session