Comptes et groupes de services : MSA,VSA et gMSA

Auteur & Source : Michel de CREVOISIER .

 

Introduction

Face à un besoin croissant concernant la sécurisation des applications réseau stratégiques (telles que SQL Server, Exchange, IIS, …) et avec la sortie de Windows Server 2008 R2 et Windows 7, deux
nouveaux types de comptes ont été introduits : les VSA (Virtual Service Account) et les MSA (Managed Service Account). Ceux-ci permettent d’une part de s’affranchir de la gestion complexe des mots de passe (blocage, expiration, renouvellement, …) et d’autre part de réduire les opérations de maintenance, souvent considérées comme fastidieuses et complexes.

Grâce à ces derniers :

  • Vous disposerez d’une nouvelle classe de comptes dédiés aux services.
  • Vous n’aurez plus à vous soucier du renouvellement ou de l’expiration des mots de passe étant donné qu’ils sont automatiquement renouvelés.
  • Vous pourrez déléguer l’administration de ces comptes à des non-administrateurs.

Note concernant SQL Server 2008 R2 ou supérieur : si vous faites appel à des MSA ou à des VSA, sachez qu’ils ne peuvent pas être utilisés pour des instances en cluster étant donné que chacun d’entre eux dispose d’un SID différent.

Managed Service Account (MSA)

Présentation

Un MSA est un compte de domaine spécialement assigné à un seul et unique ordinateur et conçu pour exécuter un service. Il ne peut cependant pas être utilisé pour se connecter à un ordinateur. En résumé, il s’agit d’un compte administré par le contrôleur de domaine et incapable d’ouvrir une
session localement. Sa composition est {DOMAIN}\{Service account}$ et les mots de passe générés possèdent une structure de 240 caractères cryptographiques aléatoires.

Applications supportées

Les technologies suivantes sont supportées pour utiliser des comptes MSA :

  • Service Windows : oui
  • Exchange : oui (pour l’envoi de mail) mais configuration supplémentaire requise
  • IIS : oui, pour les pools d’application
  • SQL Server : oui, mais uniquement à partir de SQL Server 2012

Prérequis

Pour mettre en place des MSA, vous devez valider les prérequis suivants :

  • Schéma en version supérieure ou égale à Server 2008 R2
    (Un schéma en version 2008 peut être utilisé, mais la gestion des SPN n’est pas supportée)
  • Installer le compte sur une version supérieure ou égale à Server 2008 R2 ou Windows
  • Installation des commandes PowerShell pour Active Directory côté serveur et client (point 5.1)
  • Installer le Framework 3.5

Limitations

Les MSA possèdent toutefois certaines limitations. De ce fait, ils ne peuvent pas être utilisés sur :

  • De multiples ordinateurs
  • Des nœuds en cluster
  • Un système de load-balancing (NLB) pour des serveurs web utilisant Kerberos
  • Une tâche planifiée

 

Mise en place

Création d’un MSA

Après quoi, vous pouvez constater la création du MSA dans l’OU Managed Service Account :

De la même façon, vous pouvez consulter ses propriétés via la commande suivante :

Association du compte

Il faut ensuite associer le MSA créé avec l’ordinateur sur lequel il sera utilisé :

Installation du compte

Pour terminer, installez ce compte de service sur l’ordinateur cible. Pour cela, placez-vous sur la machine allant utiliser ce compte et exécutez la commande suivante :

Configuration du compte avec un service

Nous allons maintenant configurer ce compte pour être utilisés par une instance SQL :

  • Ouvrez la console SQL Server Configuration Manager et accédez à la propriété Log On du
    service en question :

SQL Server Configuration Manager

  • Dans la console de recherche, modifiez sélectionnez votre domaine puis l’Object types afin
    de faire apparaître les comptes de service :

Object types

  • Laissez le mot de passe en blanc et redémarrez votre service :

SQL Propriété - Account name

 

Virtual Service Account (VSA)

Présentation

Le VSA est un compte géré localement qui fournit des fonctionnalités permettant de faciliter l’administration des services. Son format est NT SERVICE\{SERVICE NAME}. Ce type de compte peut accéder aux ressources du réseau, mais il devra pour cela s’authentifier avec les credentials du compte ordinateur de type {DOMAIN}\{COMPUTER}$. Si un VSA est utilisé pour un service, le mot de passe devra être laissé en blanc.

Utilisation

Les VSA sont utilisés depuis IIS 7.0 (compte « IIS AppPool\DefaultAppPool » par exemple) et dans SQL Server 2012 si les paramètres par défaut sont utilisés.

 

Groupes de services administrés (gMSA)

Présentation

Les gMSAGroup Managed Service Accounts ») sont apparus avec Windows Server 2012 afin de pallier un des problèmes majeurs des comptes MSA, à savoir l’utilisation d’un compte sur un seul et unique ordinateur. De ce fait, il était par exemple impossible d’utiliser un même compte MSA sur un cluster SQL. Il fallait donc soit utiliser un compte de service pour chaque serveur, soit créer un ou plusieurs comptes de domaine pour la ferme de serveurs. Grâce au gMSA, cette restriction « 1:1 » a été supprimée et il est dorénavant possible d’utiliser un même compte sur plusieurs serveurs. On conviendra que cette nouveauté prend tout sens avec la technologie AAG introduite avec SQL Server 2012. Dans son fonctionnement, un gMSA est un compte de service associé à un groupe de sécurité dans lequel seront ajoutés les ordinateurs autorisés à utiliser ce compte.

Applications supportées

Suite à ces nouveautés, les gMSA peuvent désormais être utilisés :

  • Sur des hôtes multiples
  • Pour des tâches planifiées
  • Pour IIS, SQL Server 2012, …
  • Pour des services Windows

Prérequis

Pour mettre en place des gMSA, vous devez valider les prérequis suivants :

  • Disposer d’un DC avec un schéma en version supérieure ou égale à Server 2012
  • Créer une clef racine KDS (détaillé à la suite)
  • Installer le compte sur une version supérieure ou égale à Server 2012 ou Windows 8
  • Installation des commandes PowerShell pour Active Directory (point 5.1)

Clef KDS :

Les contrôleurs de domaine sous Windows Server 2012 requièrent une clef racine KDS pour la génération des mots de passes associées aux comptes gMSA. Après sa création, il est nécessaire d’attendre 10h afin que la réplication entre les DC converge. Il s’agit là d’une mesure de sécurité afin de s’assurer que tous les DC soient en mesure de répondre aux requêtes gMSA (source).

Mise en place

Configuration du KDS

Création d’un gMSA

Vous pouvez consulter ses propriétés via la commande suivante :
Get-AdServiceAccount –identity $MSAaccount

Ajout du compte ordinateur dans un groupe

Ajoutez l’ordinateur cible du point précédent ($TargetComputer) dans le groupe de gestion créé à cet égard ($gMSAGroup). Il faut ensuite redémarrer votre serveur cible pour prendre en compte cette nouvelle appartenance (ou « membership ») :

Installation du compte

Une fois l’ordinateur cible redémarré, installez le compte gMSA sur ce dernier :

Configuration du compte avec un service

Référez-vous au point 2.2.4 pour cette partie.

 

Outils

Outils PowerShell

L’ensemble des commandes utilisées pour la création des comptes de service requièrent l’installation du module Active Directory pour PowerShell sur votre serveur/station de travail :

Module Active Directory

En PowerShell :

Console GUI

Il existe également un outil gratuit baptisé Managed Service Accounts GUI permettant d’effectuer l’ensemble des actions décrites au préalable directement via une interface graphique (téléchargement).

Managed Service Accounts GUI

Conclusion

Les MSA apparus avec Server 2008 R2 et les gMSA apparus avec Server 2012 viennent donc combler un besoin important en termes de sécurité concernant l’exécution des services. Il ne vous désormais sera plus nécessaire de vous préoccuper de l’administration de ces comptes étant donné que les mots de passe seront automatiquement renouvelés. Et grâce au gMSA, les déploiements de fermes SQL (par exemple) seront simplifiés tout en vous garantissant une sécurité accrue. Le tableau ci-dessous résume les caractéristiques des trois types de comptes présentés dans ce tuto :

Tableau récapitulatif VSA, MSA et gMSA

N’hésitez pas à m’envoyer vos commentaires ou retours à l’adresse suivante :
m.decrevoisier A-R-0-B-A-5 outlook . com

Soyez-en d’ores et déjà remercié

SOURCES

Sécurité des comptes :

Groupes gMSA :

Share

2 réflexions sur “Comptes et groupes de services : MSA,VSA et gMSA

    • Ravi que cela vous ait plu. C’est le but premier du site. D’autres vont venir sur le même sujet, mais il me manque tu temps en ce moment. 🙁

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.