Planifier les tâches d’administration du système avec Copilot

Terminée

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é :

  1. Créez un New-EmployeeOnboarding.ps1 script avec un paramètre pour le chemin du fichier CSV.
  2. Définissez une table de hachage de mapping de service à OU.
  3. 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.
  4. Implémentez une fonction pour ajouter l’utilisateur à des groupes spécifiques au département à l’aide de Add-ADGroupMember.
  5. Implémentez une fonction pour créer le répertoire d’accueil et définir des autorisations NTFS à l’aide New-Item et Set-Acl.
  6. Ajoutez la journalisation pour suivre les opérations réussies et ayant échoué pour chaque utilisateur.
  7. 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 :

  1. Créez un fichier ServerHardening.ps1 de configuration DSC avec un bloc de configuration.
  2. Ajoutez une ressource pour désactiver SMBv1 à l’aide de la WindowsFeature ressource.
  3. Ajoutez des ressources de Registre pour appliquer TLS 1.2 et désactiver TLS 1.0/1.1.
  4. Ajoutez des ressources Firewall du module NetworkingDsc pour configurer des règles entrantes.
  5. Ajoutez Service ressources pour désactiver le spouleur d’imprimante et les services liés à Xbox.
  6. Ajoutez des AuditPolicySubcategory ressources depuis le AuditPolicyDsc module pour configurer la journalisation d’audit.
  7. Créez un Deploy-ServerHardening.ps1 script qui compile et applique la configuration DSC.
  8. Ajoutez des étapes de vérification pour tester la configuration avec Test-DscConfiguration et 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 :

  1. Créez un Monitor-ServerHealth.ps1 script avec des paramètres de seuil configurables.
  2. Implémentez la surveillance du processeur en utilisant Get-Counter avec une période d’échantillonnage.
  3. Implémentez la surveillance de la mémoire à l’aide de Get-CimInstance Win32_OperatingSystem.
  4. Mettre en œuvre la surveillance des disques à l’aide de Get-CimInstance Win32_LogicalDisk.
  5. Mettez en place la surveillance des services à l’aide de Get-Service pour chaque service critique.
  6. Créez une source de journal des événements personnalisée à l’aide de New-EventLog.
  7. Implémentez une fonction d’alerte qui envoie un e-mail via Send-MailMessage et écrit dans le journal des événements.
  8. 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.