Configuration de l’autorité de certification
Cet article décrit la configuration avancée du service d’authentification fédérée (FAS) pour l’intégration avec les serveurs d’autorité de certification (CA). La plupart de ces configurations ne sont pas prises en charge par la console d’administration FAS. Les instructions utilisent les API PowerShell fournies par FAS. Vous devez avoir une connaissance de base de PowerShell avant d’exécuter les instructions de cet article.
Configurer plusieurs serveurs d’autorité de certification pour une utilisation dans FAS
Vous pouvez utiliser la console d’administration FAS pour configurer FAS avec plusieurs autorités de certification lors de la création ou de la modification d’une règle :

Toutes les autorités de certification que vous sélectionnez doivent publier le modèle de certificat Citrix_SmartcardLogon (ou tout autre modèle que vous avez choisi dans votre règle).
Si l’une des autorités de certification que vous souhaitez utiliser ne publie pas le modèle souhaité, effectuez l’étape Configurer une autorité de certification pour cette autorité de certification.
Remarque :
Vous n’avez pas besoin d’effectuer l’étape Autoriser ce service pour chaque autorité de certification, car le certificat d’autorisation configuré à cette étape peut être utilisé avec n’importe laquelle de vos autorités de certification.
Modifications de comportement attendues
Après avoir configuré le serveur FAS avec plusieurs serveurs d’autorité de certification, la génération des certificats utilisateur est répartie entre tous les serveurs d’autorité de certification configurés. De plus, si l’un des serveurs d’autorité de certification configurés échoue, le serveur FAS bascule vers un autre serveur d’autorité de certification disponible.
Configurer l’autorité de certification Microsoft pour l’accès TCP
FAS accède à l’autorité de certification Microsoft à l’aide de DCOM. DCOM utilise le port 135 pour découvrir le port sur lequel le service écoute. Par défaut, le port d’écoute est alloué dynamiquement.
Cela peut entraîner des complexités lors de la mise en œuvre de la sécurité du pare-feu. Par conséquent, Microsoft a prévu une disposition pour configurer un port statique.
Pour configurer un port statique sur l’autorité de certification Microsoft, sélectionnez Démarrer > Exécuter > dcomcnfg.exe pour ouvrir le panneau de configuration DCOM. Développez Ordinateurs > Mon ordinateur > Configuration DCOM pour afficher le nœud Demande CertSrv. Ensuite, modifiez les propriétés de l’application DCOM Demande CertSrv :

Modifiez les Points de terminaison pour sélectionner un point de terminaison statique et spécifiez un numéro de port TCP (900 dans le graphique précédent).
Dans cet exemple, le pare-feu doit autoriser les ports 135 et 900.
Redémarrez l’autorité de certification Microsoft pour appliquer la modification.
Il n’est pas nécessaire de configurer le serveur FAS (ou toute autre machine utilisant l’autorité de certification) car DCOM dispose d’une étape de négociation utilisant le port RPC 135. Lorsqu’un client doit utiliser DCOM, il se connecte au service DCOM RPC sur le serveur et demande l’accès à un serveur DCOM particulier. Cela déclenche l’ouverture du port 900 (dans cet exemple), et le serveur DCOM demande au client de se connecter à ce port.
Pré-générer les certificats utilisateur
Le temps de connexion des utilisateurs s’améliorera considérablement lorsque les certificats utilisateur seront pré-générés au sein du serveur FAS. Les sections suivantes décrivent comment cela peut être fait, que ce soit pour un seul serveur FAS ou plusieurs.
Obtenir une liste d’utilisateurs Active Directory
Vous pouvez améliorer la génération de certificats en interrogeant l’AD et en stockant la liste des utilisateurs dans un fichier (par exemple, un fichier .csv), comme le montre l’exemple suivant.
Import-Module ActiveDirectory
$searchbase = "cn=users,dc=bvt,dc=local" # AD User Base to Look for Users, leave it blank to search all
$filename = "user_list.csv" # Filename to save
if ($searchbase -ne ""){
Get-ADUser -Filter {(UserPrincipalName -ne "null") -and (Enabled -eq "true")} -SearchBase $searchbase -Properties UserPrincipalName | Select UserPrincipalName | Export-Csv -NoTypeInformation -Encoding utf8 -delimiter "," $filename
} else {
Get-ADUser -Filter {(UserPrincipalName -ne "null") -and (Enabled -eq "true")} -Properties UserPrincipalName | Select UserPrincipalName | Export-Csv -NoTypeInformation -Encoding utf8 -delimiter "," $filename
}
<!--NeedCopy-->
Get-ADUser est une cmdlet standard pour interroger une liste d’utilisateurs. L’exemple ci-dessus contient un argument de filtre pour lister uniquement les utilisateurs avec un UserPrincipalName et un statut de compte « activé ».
L’argument SearchBase restreint la partie de l’AD à rechercher pour les utilisateurs. Vous pouvez l’omettre si vous souhaitez inclure tous les utilisateurs de l’AD. Remarque : Cette requête peut renvoyer un grand nombre d’utilisateurs.
Le fichier CSV ressemble à ceci :

Serveur FAS
Le script PowerShell suivant prend la liste d’utilisateurs précédemment générée et crée une liste de certificats utilisateur.
Add-PSSnapin Citrix.A*
$csv = "user_list.csv"
$rule = "default" # rule/role in your admin console
- $users = Import-Csv -encoding utf8 $csv
- foreach ( $user in $users )
- {
$server = Get-FasServerForUser -UserPrincipalNames $user.UserPrincipalName
if( $server.Server -ne $NULL) {
New-FasUserCertificate -Address $server.Server -UserPrincipalName $user.UserPrincipalName -CertificateDefinition $rule"_Definition" -Rule $rule
}
if( $server.Failover -ne $NULL) {
New-FasUserCertificate -Address $server.Failover -UserPrincipalName $user.UserPrincipalName -CertificateDefinition $rule"_Definition" -Rule $rule
}
}
<!--NeedCopy-->
Si vous avez plus d’un serveur FAS, le certificat d’un utilisateur particulier sera généré deux fois : une fois sur le serveur principal et une fois sur le serveur de basculement.
Le script ci-dessus est conçu pour une règle nommée « default ». Si vous avez un nom de règle différent (par exemple, « hello »), modifiez simplement la variable $rule dans le script.

Renouveler les certificats d’autorité d’enregistrement
Si plusieurs serveurs FAS sont utilisés, vous pouvez renouveler un certificat d’autorisation FAS sans affecter les utilisateurs connectés.
Remarque :
Vous pouvez également utiliser l’interface graphique pour réautoriser FAS :
Effectuez la séquence suivante :
-
Créez un nouveau certificat d’autorisation :
New-FasAuthorizationCertificate -
Notez le GUID du nouveau certificat d’autorisation, tel que renvoyé par :
Get-FasAuthorizationCertificate -
Mettez le serveur FAS en mode maintenance :
Set-FasServer –Address <FAS server> -MaintenanceMode $true -
Échangez le nouveau certificat d’autorisation :
Set-FasCertificateDefinition –AuthorizationCertificate <GUID> -
Désactivez le mode maintenance du serveur FAS :
Set-FasServer –Address <FAS server> -MaintenanceMode $false -
Supprimez l’ancien certificat d’autorisation :
Remove-FasAuthorizationCertificate
Informations connexes
- L’article Installer et configurer est la référence principale pour l’installation et la configuration de FAS.
- Les déploiements courants du service d’authentification fédérée sont résumés dans l’article Architectures de déploiement.
- D’autres articles « comment faire » sont présentés dans l’article Configuration avancée.
