16 Jul 2025, 00:00

Configs Intune pour Office

Configurations

Il y’a plusieurs moyens de configurer les applications Office :

  • par des paramètres de configuration lors de l’installation (dans le fichier XML ou dans le configurateur)

    • permet de définir des clés de registre HKCU, dans chaque session, qui paramètrent le profil Outlook (lors de sa création uniquement)
    • si le profil Outlook existe déjà, ces clés n’ont aucun effet
    • laisse la possibilité à l’utilisateur final de changer les paramètres
  • par la configuration des appareils par Intune

    • peut s’appliquer à des utilisateurs ou des appareils (mais certains paramètres de configuration ne fonctionnent qu’avec un seul type d’affectation)
  • par le menu Intune -> Applications -> Gérez les applications -> Stratégies pour les applications Microsoft 365

    • s’applique uniquement à des utilisateurs
    • ne permet PAS la modification par l’utilisateur final
    • me semble particulièrement lent à être déployé
  • par des entrées de registre écrites manuellement (script ou autre)

Selon les cas, on préfèrera l’une ou l’autre de ces possibilités.

Installation

Dans Intune -> Applications , si on choisit “Créer”, dans “Type d’application” on trouve “Applications Microsoft 365 pour Windows 10 et versions ultérieures”.
On peut choisir entre un configurateur, ou bien l’édition d’un fichier XML.

Dans mon expérience, si on passe par le configurateur, à chaque ouverture de session, il y’a une bonne utilisation CPU/disque liée à Office Click2Run, comme si la suite se réinstallait à chaque démarrage.
Ce problème ne semble pas se produite avec la version XML, qui de + permet + de souplesse dans l’installation et la configuration.

Fichier XML

https://learn.microsoft.com/fr-fr/microsoft-365-apps/deploy/office-deployment-tool-configuration-options

Un assistant est dispo ici pour en créer un :
https://config.office.com/deploymentsettings

Pour un ordi partagé :

<Property Name="SharedComputerLicensing" Value="1"/>

Voir les implications d’un ordi partagé ici :
https://learn.microsoft.com/en-us/microsoft-365-apps/licensing-activation/overview-licensing-activation-microsoft-365-apps
https://learn.microsoft.com/fr-fr/microsoft-365-apps/licensing-activation/overview-shared-computer-activation
Il faut notamment que chaque utilisateur ait une licence d’utilisation partagée, qui n’est inclus que dans Business Premium.

Quelques options pratiques :

<AppSettings>

<Setup Name="Company" Value="Ma Super Entreprise"/>

<User Key="software\microsoft\office\16.0\outlook\cached mode" Name="downloadsharedfolders" Value="0" Type="REG_DWORD" App="outlk16" Id="L_Downloadsharednonmailfolders"/>

<User Key="software\microsoft\office\16.0\excel\options" Name="defaultformat" Value="51" Type="REG_DWORD" App="excel16" Id="L_SaveExcelfilesas"/>
<User Key="software\microsoft\office\16.0\powerpoint\options" Name="defaultformat" Value="27" Type="REG_DWORD" App="ppt16" Id="L_SavePowerPointfilesas"/>
<User Key="software\microsoft\office\16.0\word\options" Name="defaultformat" Value="" Type="REG_SZ" App="word16" Id="L_SaveWordfilesas"/>

<User Key="software\microsoft\office\16.0\outlook\autodiscover" Name="zeroconfigexchange" Value="1" Type="REG_DWORD" App="outlk16" Id="L_AutomaticallyConfigureProfileBasedOnActive"/>

   <User Key="software\microsoft\office\16.0\outlook\cached mode" Name="syncwindowsetting" Value="0" Type="REG_DWORD" App="outlk16" Id="L_CachedExchangeModeSyncSlider" />
    <User Key="software\microsoft\office\16.0\outlook\cached mode" Name="syncwindowsettingdays" Value="14" Type="REG_DWORD" App="outlk16" Id="L_CachedExchangeModeSyncSlider" />

</AppSettings>

Chaque bloc permet respectivement :

  • de définir le nom de l’entreprise
  • de préconfigurer le non-télechargement des dossiers mails partagés
  • de définir le format de fichier Office par défaut
  • d’inscrire automatiquement l’adresse mail de login dans Outlook
  • de définir l’intervalle de mise en cache par défaut (syncwindowsetting définit le nombre de mois, syncwindowsettingdays définit le nombre de jours)

Exemple complet de fichier XML (configuration ordi partagé, 1 mois de cache par défaut) :

<Configuration ID="c7f365bb-45f6-44a4-825f-751611bba3f5">
  <Info Description="Pas de New Outlook&#xA;Ordi partag�&#xA;D�sinstalle les applis MSI" />
  <Add OfficeClientEdition="64" Channel="SemiAnnual">
    <Product ID="O365BusinessRetail">
      <Language ID="fr-fr" />
      <ExcludeApp ID="Groove" />
      <ExcludeApp ID="Lync" />
      <ExcludeApp ID="OutlookForWindows" />
    </Product>
  </Add>
  <Property Name="SharedComputerLicensing" Value="1" />
  <Updates Enabled="TRUE" />
  <RemoveMSI />
  <AppSettings>
    <Setup Name="Company" Value="Ma Super Entreprise" />

    <User Key="software\microsoft\office\16.0\excel\options" Name="defaultformat" Value="51" Type="REG_DWORD" App="excel16" Id="L_SaveExcelfilesas" />
    <User Key="software\microsoft\office\16.0\powerpoint\options" Name="defaultformat" Value="27" Type="REG_DWORD" App="ppt16" Id="L_SavePowerPointfilesas" />
    <User Key="software\microsoft\office\16.0\word\options" Name="defaultformat" Value="" Type="REG_SZ" App="word16" Id="L_SaveWordfilesas" />

    <User Key="software\microsoft\office\16.0\outlook\cached mode" Name="downloadsharedfolders" Value="0" Type="REG_DWORD" App="outlk16" Id="L_Downloadshardnonmailfolders" />

   <User Key="software\microsoft\office\16.0\outlook\cached mode" Name="syncwindowsetting" Value="1" Type="REG_DWORD" App="outlk16" Id="L_CachedExchangeModeSyncSlider" />
    <User Key="software\microsoft\office\16.0\outlook\cached mode" Name="syncwindowsettingdays" Value="0" Type="REG_DWORD" App="outlk16" Id="L_CachedExchangeModeSyncSlider" />

    <User Key="software\microsoft\office\16.0\outlook\autodiscover" Name="zeroconfigexchange" Value="1" Type="REG_DWORD" App="outlk16" Id="L_AutomaticallyConfigureProfileBasedOnActive"/>

  </AppSettings>
  <Display Level="None" AcceptEULA="TRUE" />
</Configuration>

Activation automatique

En Europe, l’activation automatique d’Office est désactivée en raison du Digital Market Act. Il est obligatoire de s’identifier manuellement pour que la licence soit reconnue.
Si on lance directement une appli Office, il faut entrer mail/pass à la main.
Si on lance edge, on peut établir la connexion juste en validant une fenêtre, et la connexion sera répercutée sur Office.

Pour forcer la connexion automatique, on peut soit modifier un fichier système comme indiqué dans ce lien :
https://call4cloud.nl/continue-to-sign-in-prompt-sso-dma/

soit désactiver la fonctionnalité de vérification de la zone géographique comme indiqué sur ce lien :
https://call4cloud.nl/fix-continue-to-sign-in-prompt-dma-sso-compliance/
Il suffit d’ajouter le script Remediatesso-2.ps1 dans les scripts de plateforme (PAS dans le contexte utilisateur).
J’ai mirroré ici le script et l’outil ViveTool utilisé dans ce tuto.

Script en question, copié-collé du site call4cloud.nl :

$downloadUrl = "https://github.com/thebookisclosed/ViVe/releases/download/v0.3.3/ViVeTool-v0.3.3.zip"  # URL to download ViVe tool
$tempPath = "C:\Windows\Temp"
$viveToolZip = "$tempPath\ViVeTool.zip"
$viveToolDir = "$tempPath\ViVeTool"
New-Item -Path $viveToolDir -ItemType Directory -Force | Out-Null

$viveToolExe = "$viveToolDir\ViVeTool.exe"
$featureIds = @(47557358, 45317806)


# Ensure ViVeTool exists
if (-not (Test-Path $viveToolExe)) {
    Invoke-WebRequest -Uri $downloadUrl -OutFile "$tempPath\ViVeTool.zip"
    Expand-Archive -Path "$tempPath\ViVeTool.zip" -DestinationPath $viveToolDir -Force
    Write-host "Downloaded and extracted ViVeTool."
} else {
    Write-host "ViVeTool already exists."
}
# disable features
foreach ($featureId in $featureIds) {
    Write-host "Disabling feature with ID $featureId."
& "$viveToolDir\ViveTool.exe" /disable /id:$featureId
}
 
# Query status of features
foreach ($featureId in $featureIds) {  
$queryresult = & "$viveToolDir\ViveTool.exe" /query /id:$featureId  
Write-host $queryresult  
}

Outlook

Téléchargement des dossiers partagés

Le but est de contrôler le paramètre
Fichiers de données -> choisir -> Paramètres -> Avancé -> Télécharger les dossiers partagés

Via install

On peut contrôler ce paramètre lors de l’install, via le fichier XML de déploiement d’Office :

<AppSettings>
<User Key="software\microsoft\office\16.0\outlook\cached mode" Name="downloadsharedfolders" Value="0" Type="REG_DWORD" App="outlk16" Id="L_Downloadshardnonmailfolders" />
</AppSettings>

Ceci permet de créer la clé de registre sous HKCU. Si celle-ci est présente lors de la création du profil Outlook, l’option “Télécharger les dossiers partagés” ne sera pas activée.
Toutefois, cette clé n’a aucun effet si le profil existe déjà.

Le paramétrage reste modifiable par l’utilisateur final.

Stratégies MS365

Télécharger les dossiers partagés extérieurs à la messagerie
-> Désactivé

Ceci forcera la fonctionnalité à être désactivée dans Outlook, et ne sera PAS réactivable par l’utilisateur final.
Si on supprime l’utilisateur de la liste d’inclusion, il devrait finir par retrouver le contrôle de ce paramètre, mais cela peut prendre plusieurs heures.

Attention, le paramètre Désactiver la mise en cache des dossiers de courrier partagés semble gérer autre chose, il n’a pas d’effet pour ce besoin précis.

Configuration de l’appareil

Microsoft Outlook 2016 -> Paramètres du compte -> Exchange -> Mode Exchange mis en cache -> Download shared non-mail folders

Période de mise en cache

Stratégies MS 365 -> Paramètres de synchronisation du mode Exchange mis en cache

Empêche l’utilisateur final de changer la durée.

Connexion automatique à Outlook

Par défaut, au lancement d’Outlook, il faut valider manuellement l’adresse pour ajouter le compte.
On peut paramétrer Outlook pour qu’il ajoute automatiquement l’adresse du compte utilisateur.

2 options existent :

  • config auto de chaque profil créé avec l’adresse mail
  • config auto uniquement du 1e profil créé ; les suivants proposeront d’entrer une adresse mail

La 2e option me semble + souple, je présente donc celle-là.

Par la config de l’appareil

Automatically configure only the first profile based on Active Directory primary SMTP address

20 Nov 2024, 00:00

Azure files - Authentification via AD DS local

Préalables

https://learn.microsoft.com/fr-fr/azure/storage/files/storage-files-identity-ad-ds-enable

Ces paramètres s’activeront sur tous les partages du compte.

Conditions :

  • nécessite un DC (on-prem ou éventuellement en VM ; ici on-prem)
  • nécessite une connectivité permanente des clients au DC
  • supporte uniquement les hybrid-users (donc synchro depuis le DC vers Entra ID)
  • 1 seule forêt
  • accorde des droits uniquement aux Users, pas aux Computers
  • avoir accès à une machine jointe au domaine et sur le même réseau que le DC

Il semble possible de monter le partage depuis une machine non-jointe au domaine.

Il faut vérifier que le compte de stockage n’a pas déjà une source d’AD configurée ; si oui, il faut d’abord la désactiver.

Activation

Il faut inscrire le compte de stockage en tant que Computer (ou service logon account) sur l’AD local.

Installation des modules

On utilise le module AzFilesHybrid qui automatise une partie du processus. Des instructions pour le faire manuellement sont disponibles sur la page chez MS.

Téléchargement du module sur cette page Github

On dézippe les fichiers, et on les installe avec .\CopyToPSPath.ps1 (devrait les mettre dans %username%\Documents\WindowsPowerShell\Modules\ )

Lors de l’import Import-Module AzFilesHybrid , j’ai du installer PowershellGet, et donc lancer la commande en tant qu’admin.
Au lancement suivant, il m’a proposé d’installer 2 autres modules nécessaires, Az et Az.storage.
On peut aussi les installer manuellement avec install-module Az -AllowClobber (AllowClobber permet de forcer l’installation, même si ce module existe déjà dans le système mais en version différente).

Il faut aussi le module “ActiveDirectory” , qui s’installe avec les RSAT (Remote Server Administration Tools).
Pour les installer, on peut les télécharger, ou passer par l’ajout de fonctionnalités Windows dans “Programme et fonctionnalités, ou passer par Powershell.
Pour ceci, en admin, on peut déjà vérifier ce qui est installé :
Get-WindowsCapability -Name RSAT* -Online | Select-Object -Property DisplayName, State
et on regarde la colonne “State”.

On installe :
Add-WindowsCapability –Online –Name "Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0"
puis
Import-Module ActiveDirectory

Activation

Il faut Powershell 5.1 ! Ne semble pas fonctionner avec les versions plus récentes, comme la 7.

Il faut faire les manipulations depuis un poste joint au domaine, et depuis un utilisateur avec au minimum les rôles Azure “Lecteur” sur le groupe de resources (contenant le compte de stockage) et “Contributeur” sur le compte de stockage.
Si on est Owner ou Contributeur sur l’abonnement Azure, ça devrait être OK.
Il faut aussi avoir le droit de créer des objets sur l’AD local.

Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser
Import-Module -Name AzFilesHybrid
Connect-AzAccount
$SubscriptionId = "<your-subscription-id-here>"
$ResourceGroupName = "<resource-group-name-here>"
$StorageAccountName = "<storage-account-name-here>"
$SamAccountName = "<sam-account-name-here>"
(SamAccountName est le nom du “Computer” qui VA être créé sur l’AD ; max 15 caractères)

Select-AzSubscription -SubscriptionId $SubscriptionId

Join-AzStorageAccount -ResourceGroupName $ResourceGroupName -StorageAccountName $StorageAccountName -SamAccountName $SamAccountName
(pour cette étape, il est nécessaire d’être connecté au DC)

Le compte Computer sur l’AD est désormais créé.

Si besoin de débuguer l’accès, on peut lancer cette commande :
Debug-AzStorageAccountAuth -StorageAccountName $StorageAccountName -ResourceGroupName $ResourceGroupName -Verbose
qui permettra notamment d’avoir l’info du type d’auth actuellement activé sur ce compte de stockage.

Droits sur le partage

Portail Azure -> Partage en question -> IAM -> Ajouter -> une attribution de rôle
Rechercher “SMB” et choisir “Collaborateur de pargae SMB” (pour ceux qui doivent simplement travailler sur les fichiers du partage)
Choisir “Utilisateur, Groupe ou UPN” puis choisir l’utilisateur ou le groupe en question (issu de l’AD)