Utiliser le certificat pour l’authentification locale
Vérifié avec Windows 11 25H2 — mis à jour le 10 juillet 2026
Pris en charge sur : Au minimum Windows 10
Chemin dans la console GPO
Configuration ordinateur\Modèles d'administration\Composants Windows\Windows Hello Entreprise Configuration utilisateur\Modèles d'administration\Composants Windows\Windows Hello Entreprise Description
Utilisez ce paramètre de stratégie pour configurer Windows Hello entreprise de sorte qu’il inscrive un certificat de connexion utilisé pour l’authentification locale. Si vous activez ce paramètre de stratégie, Windows Hello entreprise inscrit un certificat de connexion qui est utilisé pour l’authentification locale. Si vous désactivez ce paramètre de stratégie ou si vous ne le configurez pas, Windows Hello entreprise utilisera une clé ou un ticket Kerberos (en fonction des autres paramètres de stratégie) pour l’authentification locale. Remarque : Si vous désactivez ce paramètre de stratégie ou ne le configurez pas et que vous activez le paramètre de stratégie « utiliser Windows Hello entreprise », l’environnement doit disposer d’un ou de plusieurs contrôleurs de domaine Windows Server 2016 pour empêcher l’échec de l’authentification Windows Hello entreprise.
Registre
SOFTWARE\Policies\Microsoft\PassportForWork SOFTWARE\Policies\Microsoft\PassportForWork Nom de valeur : UseCertificateForOnPremAuth
Activé : UseCertificateForOnPremAuth = 1
Désactivé : UseCertificateForOnPremAuth = 0
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. ⓘ
Appliquer les deux portées crée une configuration ambiguë (la portée ordinateur prévaut sur la portée utilisateur). Ne le faites que volontairement.
Fichier .reg
Windows Registry Editor Version 5.00
; Exported from gporais.com
; Policy: Utiliser le certificat pour l’authentification locale
; State: Enabled
; Scope: Computer (HKLM)
; Supported on: Au minimum Windows 10
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\PassportForWork]
"UseCertificateForOnPremAuth"=dword:00000001 Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Utiliser le certificat pour l’authentification locale
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Au minimum Windows 10
$path = 'HKLM:\SOFTWARE\Policies\Microsoft\PassportForWork'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'UseCertificateForOnPremAuth' -Value 1 -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: Utiliser le certificat pour l’authentification locale
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Au minimum Windows 10
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 'HKLM:\SOFTWARE\Policies\Microsoft\PassportForWork' -Name 'UseCertificateForOnPremAuth' -Expected 1 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Utiliser le certificat pour l’authentification locale
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Au minimum Windows 10
$path = 'HKLM:\SOFTWARE\Policies\Microsoft\PassportForWork'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'UseCertificateForOnPremAuth' -Value 1 -Type DWord Scripts SCCM
# Exported from gporais.com
# Policy: Utiliser le certificat pour l’authentification locale
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Au minimum Windows 10
# 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: Utiliser le certificat pour l’authentification locale
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Au minimum Windows 10
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 'HKLM:\SOFTWARE\Policies\Microsoft\PassportForWork' -Name 'UseCertificateForOnPremAuth' -Expected 1 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Utiliser le certificat pour l’authentification locale
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Au minimum Windows 10
$path = 'HKLM:\SOFTWARE\Policies\Microsoft\PassportForWork'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'UseCertificateForOnPremAuth' -Value 1 -Type DWord Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).