Parmi les nouveautés de Windows Server 2008 R2 et au niveau du composant Active Directory on trouve les comptes de services gérés (Managed Service Accounts).
Plusieurs applications SQL Server et IIS reposent sur des services qui doivent parfois être démarrés avec des comptes de domaines pour des besoins spécifiques. L’administration de ces comptes, de leurs mots de passe ainsi que des SPN peut s’avérer complexe et peut affecter la disponibilité de l’application.
L’utilisation des comptes de services gérés réduit la charge administrative quant à la gestion des mots de passe et des SPN (nom principal de service) tout en assurant la disponibilité de ces applications et réduisant les risques lié à la modification des mots de passe.
Pré-requis
Pour pouvoir utiliser les comptes de services gérés :
- Les ordinateurs hébergeant les applications à configurer doivent être équipés de Windows Server 2008 R2 ou Windows 7,
- Les domaines dont le niveau fonctionnel est Windows Server 2008 R2 supportent nativement la gestion automatique des mots de passe et des SPN,
- Si le domaine n’est pas au niveau fonctionnel Windows Server 2008 R2 mais que le schéma Active Directory a été mis à jour au niveau Windows Server 2008 R2 les comptes de services gérés peuvent être utilisés, la gestion automatique des mots de passes de ces comptes sera possible mais pas la gestion automatique des SPN
- Pour utiliser les comptes de services gérés dans des domaines Windows Server 2008, Windows Server 2003 ou des domaines mixtes il faut tout d’abord procéder aux actions suivantes :
1- Exécuter adprep /forestprep au niveau de la forêt AD
2- Exécuter adprep /domainprep dans chaque domaine où on souhaite utiliser le comptes de services gérés
3- Avoir un contrôleur de domaine Windows Server 2008 R2 ou Windows Server 2008 avec Active Directory Management Gateway Service ou Windows Server 2003 avec Active Directory Gateway Service, Active Directory Management Gateway Service permet l’utilisation des commandes PowerShell nécessaires à la gestion des comptes de services gérés
- Pour utiliser les commandes PowerShell nécessaires à l’administration des comptes de services gérés au niveau des ordinateurs clients sur lesquels les applications doivent être configurées on doit avoir installé le Framework .NETainsi que le module Active Directory pour Windows PowerShell
Installation des pré-requis sur Windows Server 2008 R2
- Démarrer la console Server Manager
- Sélectionner Features puis cliquer sur Add Features
- Sélectionner .NET Framework 3.5.1 Features
- Sélectionner Active Directory module for Windows PowerShell sous Remote Server Administration Tools | Role Administraion Tools | AD DS and AD LDS Tools
- Cliquer sur Next
- Cliquer sur Install
- Redémarrer le serveur si nécessaire
Installation des pré-requis sur Windows 7
- Télécharger Remote Server Administration Tools for WIndows 7
- Installer la mise à jour
- Ajouter les fonctionnalités .NET Framework 3.5.1 et le module Active Directory module for Windows PowerShell
- Redémarrer l’ordinateur
Création et configuration d’un compte de service géré
- Ouvrir une invite PowerShell Active Directory
- Créer le compte de services en exécutant la commande suivante :
New-AdServiceAccount <Nom Du Compte> -AccountPassword (ConvertTo-SecureString –AsPlainText “<mot de passe>” –Force) –Enabled $true –Path “CN=Managed Service Accounts,DC=<Domain Name>,DC=COM”
- Associer le compte de service à l’ordinateur client en exécutant la commande suivante :
Add-ADComputerServiceAccount –Identity <Nom Ordinateur> –ServiceAccount <Nom du compte>
- Installer le compte de service sur l’ordinateur client (cette commande soit être exécutée sur le poste qui utilisera le compte de service géré)
Install-ADServiceAccount –Identity <Nom du compte>
- Vérifier que le compte de service à été bien affecté au compte de la machine au niveau Active Directory en explorant les propriétés de l’objet ordinateur en question avec ADSI Edit et en cherchant l’attribut msDS-HostServiceAccount
Utilisation du compte de service
Nous allons maintenant utiliser un compte de service géré pour démarrer le services SQL Server Reporting Services au niveau d’un serveur Windows Server 2008 R2.
- Double cliquer sur le service SQL Server Reporting Services au niveau de la console Services
- Au niveau de l’onglet Log On cocher This account et cliquer sur Browse afin de localiser le compte de service, ou taper le nom du compte au format <Nom du Domaine>\<Nom du compte>$ , laisser le mot de passe vide et cliquer sur Apply puis sur Ok
Attention : si vous tapez le nom du compte à la main il faut ajouter un $ à la fin.
- Démarrer ou redémarrer le service
- Vérifier que le service a bien démarré malgré la fait que le mot de passe n’a pas été saisi !
Pour plus de détails, vous pouvez consulter les articles suivants :