Paramètre de sécurité pour les macros
Vérifié avec Microsoft 365/Office 5568.1000 — mis à jour le 4 septembre 2026
Pris en charge sur : Au minimum Windows Server 2008 R2 ou Windows 7
Chemin dans la console GPO
Configuration utilisateur\Modèles d'administration\Microsoft Outlook 2016\Sécurité\Centre de gestion de la confidentialité Description
Ce paramètre de stratégie contrôle le niveau de sécurité des macros dans Outlook. Si vous activez ce paramètre de stratégie, vous disposez de quatre options de gestion des macros dans Outlook : - Toujours signaler. Cette option correspond à l’option « Notifications pour toutes les macros » dans la section « Paramètres des macros » du Centre de gestion de la confidentialité d’Outlook. Outlook désactive toutes les macros qui ne sont pas ouvertes à partir d’un emplacement approuvé, même si elles sont signées par un éditeur approuvé. Pour chaque macro désactivée, Outlook affiche une alerte de sécurité avec des informations sur la macro et sa signature numérique (le cas échéant), et permet aux utilisateurs d’activer la macro ou de la laisser désactivée. - Ne jamais avertir, désactiver toutes les macros. Cette option correspond à l’option « Désactiver toutes les macros sans notification » du Centre de gestion de la confidentialité. Outlook désactive toutes les macros qui ne sont pas ouvertes à partir d’un emplacement approuvé, sans avertir les utilisateurs. - Afficher un avertissement pour les macros signées, désactiver les macros non signées. Cette option correspond à l’option « Notifications pour les macros signées numériquement, toutes les autres macros sont désactivées ». Toutes les macros non signées sont désactivées du Centre de gestion de la confidentialité. Outlook gère les macros comme suit : -- Si une macro est signée numériquement par un éditeur approuvé, elle peut être exécutée si l’utilisateur a déjà approuvé l’éditeur. -- Si une macro a une signature valide attribuée par un éditeur non approuvé par l’utilisateur, l’alerte de sécurité pour les macros permet à l’utilisateur de choisir s’il veut activer ou désactiver la macro pour la session en cours, ou ajouter l’éditeur à la liste des éditeurs approuvés afin que celle-ci soit exécutée ultérieurement sans avertir l’utilisateur. -- Si une macro n’a pas de signature valide, Outlook la désactive sans avertir l’utilisateur, sauf en cas d’ouverture à partir d’un emplacement approuvé. Cette option correspond à la configuration par défaut dans Outlook. - Aucune vérification de sécurité. Cette option correspond à l’option « Activer toutes les macros (non recommandé ; un code potentiellement dangereux peut s’exécuter) » du Centre de gestion de la confidentialité. Outlook exécute toutes les macros sans avertir les utilisateurs. Cette configuration n’est pas recommandée car elle rend les ordinateurs des utilisateurs vulnérables aux codes potentiellement malveillants. Si vous désactivez ou ne configurez pas ce paramètre de stratégie, cela revient à définir la stratégie sur Activé -- Afficher un avertissement pour les macros signées, désactiver les macros non signées.
Registre
software\policies\microsoft\office\16.0\outlook\security Générateur d'exports
BETAConfigurez l'état, la portée et les options, puis générez les sorties .reg, PowerShell, Intune et SCCM — ou ajoutez le paramètre à une collection multi-paramètres.
Ces exports écrivent le registre — ce n'est pas une GPO managée. ⓘ
Fichier .reg
Windows Registry Editor Version 5.00
; Exported from gporais.com
; Policy: Paramètre de sécurité pour les macros
; State: Enabled
; Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
[HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\outlook\security]
"level"=dword:00000002 Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Paramètre de sécurité pour les macros
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\software\policies\microsoft\office\16.0\outlook\security'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'level' -Value 2 -Type DWord Intune XML
Aucune correspondance directe Policy CSP / OMA-URI pour cette stratégie. Utilisez l'onglet Intune Remediation, ou importez l'ADMX dans Intune. Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: Paramètre de sécurité pour les macros
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKCU:\software\policies\microsoft\office\16.0\outlook\security' -Name 'level' -Expected 2 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Paramètre de sécurité pour les macros
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\software\policies\microsoft\office\16.0\outlook\security'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'level' -Value 2 -Type DWord Scripts SCCM
# Exported from gporais.com
# Policy: Paramètre de sécurité pour les macros
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# SCCM Configuration Item guidance:
# Create a Configuration Item of type "Setting: Script".
# Discovery script: use the Detection script below.
# Remediation script: use the Remediation script below.
# Compliance rule: the Discovery script output equals 'Compliant'.
# === Detection script ===
# Exported from gporais.com
# Policy: Paramètre de sécurité pour les macros
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKCU:\software\policies\microsoft\office\16.0\outlook\security' -Name 'level' -Expected 2 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Paramètre de sécurité pour les macros
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\software\policies\microsoft\office\16.0\outlook\security'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'level' -Value 2 -Type DWord Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).