Planifier les tâches d’administration du système avec Copilot
Tip
Pour plus d’informations, consultez l’onglet Texte et images !
Une équipe gère un environnement Windows Server avec services de domaine Active Directory (ADDS). L’intégration des nouveaux employés nécessite la création de comptes d’utilisateur, l’attribution d’appartenances à un groupe, la configuration des répertoires de base et la configuration de l’e-mail. Effectuer toutes ces tâches manuellement est fastidieuse et sujette aux erreurs.
Note
Les requêtes présentées dans cette unité illustrent comment un ingénieur d’exploitation peut interagir avec l’agent Plan pour chaque scénario. Il s’agit d’exemples de modèles d’invite efficaces qui illustrent le type de contexte dont l’agent a besoin. Il ne s’agit pas d’instructions pas à pas à suivre.
Un ingénieur lançant cette automatisation décrirait l’intégralité de la tâche à l’agent Plan en un seul prompt. Exemple de structure de cette invite :
/plan Create a PowerShell script for automating new employee onboarding in Active Directory. The script should read a CSV file of new hires with columns for FirstName, LastName, Department, JobTitle, and Manager. For each user, it should create an AD account, set the correct OU based on department, add the user to department-specific security groups, create a home directory on \\fileserver\homes$, and set NTFS permissions.
L’agent de plan recherche votre espace de travail et génère un plan structuré :
- Créez un
New-EmployeeOnboarding.ps1script avec un paramètre pour le chemin du fichier CSV. - Définissez une table de hachage de mapping de service à OU.
- Implémentez une fonction pour créer le compte d’utilisateur AD avec
New-ADUser, en définissant des propriétés telles que le nom d’affichage, le titre, le service et le responsable. - Implémentez une fonction pour ajouter l’utilisateur à des groupes spécifiques au département à l’aide de
Add-ADGroupMember. - Implémentez une fonction pour créer le répertoire d’accueil et définir des autorisations NTFS à l’aide
New-ItemetSet-Acl. - Ajoutez la journalisation pour suivre les opérations réussies et ayant échoué pour chaque utilisateur.
- Ajoutez des étapes de vérification pour valider le script avec un fichier CSV de test dans une unité d’organisation hors production.
Affiner le plan
Après avoir examiné le plan, l’ingénieur remarque qu’il ne gère pas les utilisateurs existants ni les comptes en double. Un prompt de suivi pour combler cette lacune pourrait ressembler à ceci :
Add a check for existing accounts before creation. If a username already exists, generate an alternative username by appending a number. Also add an email notification to the manager when the account is ready.
L’agent Plan révise le plan pour inclure la résolution des conflits de noms d’utilisateur et une étape de notification par e-mail à l’aide de Send-MailMessage.
Scénario : Renforcer une ligne de base de Windows Server
Le renforcement de la sécurité implique plusieurs modifications de configuration dans différentes zones système. La planification de toutes les modifications avant l’implémentation permet d’éviter les interruptions de verrouillage ou de service. Exemple de la façon dont un ingénieur peut décrire un objectif de renforcement pour l’agent de plan :
/plan Create a PowerShell DSC (Desired State Configuration) document that hardens a Windows Server 2022 baseline. Include: disabling SMBv1, enforcing TLS 1.2 as minimum, configuring Windows Firewall to block all inbound traffic except RDP (port 3389) from the management subnet 10.0.1.0/24, disabling unused services (Print Spooler, Xbox services), and configuring audit policies for logon events and object access.
L’agent de plan génère un plan complet :
- Créez un fichier
ServerHardening.ps1de configuration DSC avec un bloc de configuration. - Ajoutez une ressource pour désactiver SMBv1 à l’aide de la
WindowsFeatureressource. - Ajoutez des ressources de Registre pour appliquer TLS 1.2 et désactiver TLS 1.0/1.1.
- Ajoutez des ressources
Firewalldu moduleNetworkingDscpour configurer des règles entrantes. - Ajoutez
Serviceressources pour désactiver le spouleur d’imprimante et les services liés à Xbox. - Ajoutez des
AuditPolicySubcategoryressources depuis leAuditPolicyDscmodule pour configurer la journalisation d’audit. - Créez un
Deploy-ServerHardening.ps1script qui compile et applique la configuration DSC. - Ajoutez des étapes de vérification pour tester la configuration avec
Test-DscConfigurationet valider la conformité.
Scénario : Créer un script d’analyse et d’alerte de serveur
La surveillance de l’intégrité du serveur est une tâche d’opérations de routine. Une approche structurée est utile lorsque les exigences s’étendent sur plusieurs canaux de métriques et de notification. Voici un exemple de requête pour ce type de scénario de surveillance :
/plan Create a PowerShell script that monitors Windows Server health and sends alerts. The script should check: CPU usage (alert if above 90% for 5 minutes), memory usage (alert if above 85%), disk space (alert if any drive is below 10% free), and critical Windows services (DNS, DHCP, Active Directory Domain Services). Send alerts via email and write events to a custom Windows Event Log.
Le plan peut inclure :
- Créez un
Monitor-ServerHealth.ps1script avec des paramètres de seuil configurables. - Implémentez la surveillance du processeur en utilisant
Get-Counteravec une période d’échantillonnage. - Implémentez la surveillance de la mémoire à l’aide de
Get-CimInstance Win32_OperatingSystem. - Mettre en œuvre la surveillance des disques à l’aide de
Get-CimInstance Win32_LogicalDisk. - Mettez en place la surveillance des services à l’aide de
Get-Servicepour chaque service critique. - Créez une source de journal des événements personnalisée à l’aide de
New-EventLog. - Implémentez une fonction d’alerte qui envoie un e-mail via
Send-MailMessageet écrit dans le journal des événements. - Créez un script d’inscription de tâche planifié pour exécuter le moniteur à intervalles spécifiés.
Conseils pour une gestion efficace de l'administration système
Lorsque vous utilisez l’agent de plan pour les tâches d’administration du système, envisagez d’inclure :
- Détails de l’environnement cible : spécifiez la version du système d’exploitation, le nom de domaine ou le rôle serveur.
- Infrastructure existante : mentionnez les scripts, modules ou configurations existants auxquels le nouveau code doit s’intégrer.
- Attentes en matière de gestion des erreurs : indiquez si le script doit s’arrêter lors de la première erreur, continuer et consigner ou exiger une intervention manuelle.
- Approche de test : Décrivez comment vous envisagez de tester (unité d’organisation non-production, serveurs de test, mode exécution sèche).
- Exigences de sortie : spécifiez le format de journalisation, la sortie du rapport ou les préférences de notification.
Note
L’agent de plan fonctionne avec les fichiers qui se trouvent dans votre espace de travail. Si vous avez des modules PowerShell existants, des configurations DSC ou des bibliothèques de scripts dans votre référentiel, l’agent les référence lors de la génération de plans. Cela signifie que vos plans sont adaptés au code et aux modèles existants de votre équipe, et non aux modèles génériques.