Compte de service
Compte de service “Simple”
On peut aussi Crée des comptes Utilisateurs “simple” dans une OU dédier.
Voire ici pour voire la GPO dédier : [/Microsoft/ActiveDirectory/GPO/SArestriction(../../Microsoft/ActiveDirectory/GPO/SArestriction.md)
Compte de service GMSA
Prérequis
le service Key Distribution Service doit être en cours d'exécution et une clé racine doit être générée. Pour créer une clé à partir du contrôleur de domaine, nous allons utiliser PowerShell et le cmdlet Add-KdsRootKey.
(il faut potentiellement attendre 10 heures avant que la clée soit générer)
Les clés Kds sont visibles dans la console "Sites et services Active Directory", en activant l'option "Afficher le nœud des services" dans le menu "Affichage".

Ensuite, parcourez de cette façon : Services > Group Key Distribution Service > Master Root Keys (Attention cocher l'option “Afficher le nœud des services”)


Création du compte gMSA
Une fois la création de la clé nous pouvons ajouter le compte gMSA
New-ADServiceAccount -Name "gMSA-01" -Description "gMSA test" -DNSHostName "gmsa-01.domain.local" -ManagedPasswordIntervalInDays 30 -PrincipalsAllowedToRetrieveManagedPassword SRV-MGMT-01$,SRV-MGMT-02$ -Enabled $True
On peut par la suite modifier le compte de service :
Ou voir les propriété du compte de service :
- ManagedPasswordIntervalInDays : sert à indiquer que le mot de passe doit être réinitialisé tous les X jours. Cette action est automatique et ne nécessite aucune action de maintenance. Cet attribut est à définir lors de la création du gMSA, ensuite il est en lecture seule (read only).
- PrincipalsAllowedToRetrieveManagedPassword : sert à indiquer l'objet qui pourra utiliser ce gMSA et va écrire l'attribut msDS-GroupMSAMembership au niveau de l'objet gMSA. Bien entendu, il est possible d'autoriser d'autres objets par la suite puisqu'un gMSA est utilisable par plusieurs hôtes.
- DNSHostName : nom DNS de cet objet gMSA
Lorsque le gMSA est créé, nous pouvons le retrouver dans l'annuaire Active Directory au sein du container "Managed Service Account".

L'objet gMSA étant créé, il faut que l'on ajoute ce compte de service à notre objet ordinateur SRV-MGMT-01 pour l'associer. Pour cette action, le cmdlet à utiliser est Add-ADComputerServiceAccount, avec deux paramètres : -Identity pour le nom du serveur et -ServiceAccount pour le nom ou des services à lier.
Ce qui donne :
Si l'on regarde notre objet ordinateur dans l'AD, à savoir l'objet "SRV-MGMT-01", on peut voir qu'il y a eu une modification de l'attribut msDS-HostServiceAccount. Cet attribut contient désormais une valeur correspondante à notre gMSA "gMSA-01".

on peut ensuite ajouter le compte dans le groupe administrateur du domaine :

Ajouter le gMSA sur le serveur
Pour être utilisé sur un serveur, le gMSA doit être installé sur ce serveur à l'aide d'un cmdlet qui est intégré au module PowerShell "ActiveDirectory". Si vous intervenez sur un serveur qui n'est pas contrôleur de domaine, vous devez installer ce module. Cela s'effectue tout simplement avec la commande suivante :
L'installation prendra seulement quelques secondes et ne nécessite pas de redémarrer le serveur.

Une fois installé, vous pouvez tester que c'est OK grâce à la commande suivante :
On peut tester si le compte de service fonctionne bien avec un test de tache planifier :
Dans le planificateur de tache quand on crée une nouvelle taches cliquez sur "Emplacements" et sélectionnez "Tout l'annuaire" (et non votre domaine) puis "Types d'objets" afin de sélectionner "Des comptes de service"
Une fois que c'est fait, saisissez le nom de votre gMSA (ou le début de son nom) et cliquez sur "Vérifiez les noms". Le gMSA doit être trouvé : il ne reste plus qu'à cliquer sur "OK".

Source : IT-Connect
Utilisation d'un compte de service gMSA
Exécuter une tache planifier
Pour exécuter une tache planifier avec le compte de service :
Dans le planificateur des taches aller dans les propriétés de la tache désirer.
Changer l'utilisateur. Dans l'onglet "utilisateur et groupe" cliqué sur "locations" et sélectionner "Entire Directory"

Ensuite dans la section "type d'objet" sélectionné "Service Accounts"

Warning
Pour utiliser le compte de service, il faut uniquement cocher "service account" dans les types d'objet, sinon ils ne s'afficheront pas.
On écrit le nom du compte de service que l'on désire et qui à été installé sur le serveur
Configuration du compte avec un service
Ont peut utiliser le compte gMSA pour exécuté des services Windows
Dans la console de gestion des services aller dans le service que l'on souhaite modifier clique droit propriété.
dans l'onglet connexion cliqué sur parcourir :

Changer l'utilisateur. Dans l'onglet "utilisateur et groupe" cliqué sur "locations" et sélectionner "Entire Directory"

Ensuite dans la section "type d'objet" sélectionné "Service Accounts"

Exécuter un script de test
Les comptes de service gérés (MSA) sont destinés à s’exécuter en tant que service et ne doivent pas être utilisés par un utilisateur final pour ouvrir une session interactive ; Cependant, il existe certains cas où cela est nécessaire pour le dépannage.
Dans le menu Démarrer, si vous faites un clic droit sur l’icône PowerShell, sélectionnez Plus, puis cliquez sur « Exécuter en tant qu’utilisateur différent », une boîte d’informations d’identification apparaîtra.

Entrez le nom du compte gMSA et cliquez sur OK.

Vous obtiendrez immédiatement une erreur. En effet, Active Directly gère le compte pour vous, nous n’avons donc aucun moyen de savoir quel est le mot de passe du compte.

Il existe un utilitaire qui nous permettra de contourner ce problème. Il s’appelle PsExec et il est un téléchargement gratuit à partir de Windows SysInternals.
https://docs.microsoft.com/en-us/sysinternals/downloads/psexec
Une fois que vous avez téléchargé l’utilitaire, décompressez le fichier ZIP dans un dossier sur le serveur. Ensuite, nous devons ouvrir une fenêtre PowerShell en tant qu’administrateur, passer au dossier qui contient PsExec.exe et exécuter la commande suivante. L’option « -u GOVLAB\DEATHSTAREN5$ » spécifie le nom de notre gMSA et « cmd.exe » est le nom du programme que nous allons exécuter en utilisant ces informations d’identification. L’option « -i » permet à la session d’être interactive avec le bureau.
À ce stade, vous serez invité à entrer un mot de passe. Laissez ce champ vide et appuyez simplement sur Entrée pour continuer. Une nouvelle fenêtre d’invite de commandes s’ouvre et s’exécute sous les informations d’identification gMSA.

Dans la capture d’écran suivante, j’ai ouvert la fenêtre PowerShell et exécuté « whoami » pour afficher mes informations d’identification actuelles. Ensuite, j’ai utilisé PsExec pour ouvrir une invite de commande en tant que compte gMSA. Ensuite, j’ai de nouveau lancé « whoami » pour montrer que je courais maintenant sous des informations d’identification différentes. Pour faire bonne mesure, j’ai également exécuté une commande TSQL à l’aide de SQLCMD pour vérifier mes informations d’identification.

Cet exemple a montré comment ouvrir une invite de commandes en tant que gMSA, mais vous pouvez spécifier tout autre programme dont vous pourriez avoir besoin pour le test ; par exemple, Management Studio.