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 disposer de connaissances de base sur PowerShell avant d’exécuter les instructions de cet article.
Définir plusieurs serveurs d’autorité de certification à utiliser 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 sélectionnées doivent publier le modèle de certificat Citrix_SmartcardLogon (ou le 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 l’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é dans cette étape peut être utilisé dans n’importe laquelle de vos autorités de certification.
Changements de comportement attendus
Une fois que vous avez configuré le serveur FAS avec de multiples serveurs d’autorité de certification, la génération de certificat utilisateur est distribuée 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 à Microsoft CA via DCOM. DCOM utilise le port 135 pour découvrir le port sur lequel le service effectue les écoutes. Par défaut, le port d’écoute est alloué dynamiquement.
Cela peut compliquer la mise en œuvre de la sécurité du pare-feu. Par conséquent, Microsoft a prévu de configurer un port statique.
Pour configurer un port statique sur Microsoft CA, sélectionnez Démarrer > Exécuter > dcomcnfg.exe
pour ouvrir le panneau de configuration DCOM. Ouvrez Ordinateurs > Mon ordinateur > Configuration DCOM pour afficher le nœud de demande CertSrv. Modifiez ensuite les propriétés de l’application DCOM de 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 a 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
La durée d’ouverture de session pour les utilisateurs peut nettement s’améliorer lorsque les certificats utilisateur sont pré-générés dans le serveur FAS. Les sections suivantes décrivent comment y procéder, pour un ou plusieurs serveurs FAS.
Obtenir une liste d’utilisateurs Active Directory
Vous pouvez améliorer la génération de certificat en interrogeant AD et en stockant la liste des utilisateurs dans un fichier (par exemple, un fichier .csv), comme illustré dans 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 applet de commande qui envoie une requête de liste d’utilisateurs. L’exemple ci-dessus contient un argument de filtre pour inclure uniquement les utilisateurs disposant d’un UserPrincipalName et avec un état de compte « activé ».
L’argument SearchBase spécifie la partie d’Active Directory dans laquelle rechercher des utilisateurs. Vous pouvez ignorer cette option si vous voulez inclure tous les utilisateurs présents dans Active Directory. Remarque : cette requête peut renvoyer un grand nombre d’utilisateurs.
Le fichier CSV ressemble à l’exemple ci-dessous :
Serveur FAS
Le script PowerShell utilise la liste d’utilisateurs 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 disposez de plusieurs serveurs FAS, le certificat d’un utilisateur particulier est généré deux fois : une fois sur le serveur principal et une autre sur le serveur de basculement.
Le script ci-dessus inclut une règle « default ». Si votre règle porte un autre nom (par exemple, « hello »), il vous suffit de modifier la variable $rule dans le script.
Renouveler les certificats d’autorité d’inscription
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 procédure suivante dans l’ordre indiqué :
-
Créer un nouveau certificat d’autorisation :
New-FasAuthorizationCertificate
-
Noter le GUID du nouveau certificat d’autorisation, renvoyé par :
Get-FasAuthorizationCertificate
-
Placer le serveur FAS en mode de maintenance :
Set-FasServer –Address <FAS server> -MaintenanceMode $true
-
Changer le nouveau certificat d’autorisation :
Set-FasCertificateDefinition –AuthorizationCertificate <GUID>
-
Retirer le serveur FAS du mode de maintenance :
Set-FasServer –Address <FAS server> -MaintenanceMode $false
-
Supprimer l’ancien certificat d’autorisation :
Remove-FasAuthorizationCertificate
Informations connexes
- L’article Installer et configurer est le document de référence principal pour obtenir des informations sur l’installation et la configuration de FAS.
- Les déploiements FAS (Service d’authentification fédérée) courants sont décrits dans l’article Vue d’ensemble des architectures.
- D’autres informations pratiques sont disponibles dans l’article Configuration avancée.