Puis-je modifier les descriptions de mise à jour dans WSUS?


11

Chaque jour de correctif Microsoft, j'ai une assez grande quantité de nouvelles mises à jour que je veux approuver pour mes clients. Mais au lieu de `` Approuver toutes les mises à jour et continuer '', je collecte des informations sur chaque mise à jour dans son article de la base de connaissances pour décider s'il s'agit d'une mise à jour importante pour nous ou non.

C'est une tâche assez fastidieuse, car je dois taper le numéro de Ko correspondant dans le navigateur de mon client et attendre que la page Web se charge. Je me demandais pourquoi Microsoft n'utilisait pas la zone de description de la mise à jour du panneau de configuration WSUS pour afficher de vraies informations utiles et détaillées. Au lieu de cela, toutes mes mises à jour se lisent:

Installez cette mise à jour pour résoudre les problèmes dans Windows. Pour obtenir une liste complète des problèmes inclus dans cette mise à jour, consultez l'article associé de la Base de connaissances Microsoft pour plus d'informations. Après avoir installé cet élément, vous devrez peut-être redémarrer votre ordinateur.

J'ai commencé à penser à un petit script Powershell, qui ajoute les informations nécessaires pour moi. Mais j'ai échoué à la première étape, qui consiste à modifier manuellement une description de mise à jour:

PS C: \ Users \ Administrator> $ wsus = Get-WsusServer

PS C: \ Users \ Administrator> $ update = $ wsus.SearchUpdates ('KB3013791')

PS C: \ Users \ Administrator> $ update [0] .Description
Installez cette mise à jour pour résoudre les problèmes sous Windows. Pour obtenir une liste complète des problèmes inclus dans cette mise à jour, consultez l'article associé de la Base de connaissances Microsoft pour plus d'informations. Après avoir installé cet élément, vous devrez peut-être redémarrer votre ordinateur.

PS C: \ Users \ Administrator> $ update [0] .Description = '"0x00000133" Erreur d'arrêt en cas de matériel défectueux dans Windows 8.1 ou Windows Server 2012 R2'

PS C: \ Users \ Administrator> $ update [0] .Description
"0x00000133" Erreur d'arrêt en cas de matériel défectueux dans Windows 8.1 ou Windows Server 2012 R2

PS C: \ Users \ Administrator> $ update = $ wsus.SearchUpdates ('KB3013791')

PS C: \ Users \ Administrator> $ update [0] .Description
Installez cette mise à jour pour résoudre les problèmes sous Windows. Pour obtenir une liste complète des problèmes inclus dans cette mise à jour, consultez l'article associé de la Base de connaissances Microsoft pour plus d'informations. Après avoir installé cet élément, vous devrez peut-être redémarrer votre ordinateur.

Il semble que mes modifications ne soient pas enregistrées dans la base de données. Soit je manque une sorte de, $wsus.SubmitChanges()soit la $wsus.SearchUpdates()commande retourne un 'update.Clone ()' afin que mes modifications ne soient enregistrées nulle part.

Comment puis-je atteindre mon objectif de modifier les descriptions de mise à jour WSUS?


$update[0].Description | Get-MemberVous pourrez peut-être utiliser la .Replace()fonction membre, mais il n'est pas clair comment gérer sa modification. Vous auriez besoin d'appeler en quelque sorte un, Set()mais je ne vois pas tout de suite comment cela fonctionne.
mortenya

Une question connexe sur SuperUser demande ce que vous avez probablement déjà résolu: comment obtenir une description significative de chaque mise à jour. Il semble que vous ayez déjà résolu cette partie, j'apprécierais beaucoup si vous pouviez y jeter un œil. superuser.com/q/878753/99136
krlmlr

@krlmlr J'ai dû manquer votre commentaire sur cette question. Maintenant que j'ai créé un programme réel pour mon problème décrit ici, j'ai posté une réponse à la question ci-dessus sur sa page Superutilisateur.
Physikbuddha

Réponses:


7

Mise à jour

En utilisant la réponse ci-dessous, j'ai créé un petit outil qui ajoute automatiquement les descriptions à mon serveur WSUS. J'ai décidé de publier mon outil sur Github, alors n'hésitez pas à l'essayer.

https://github.com/Physikbuddha/wsus-online-descriptions/releases/latest

Exemple de capture d'écran

Réponse originale

J'ai essayé de résoudre le problème avec Get-Member, comme suggéré par mortenya dans la section des commentaires, mais sans succès.
Enfin, j'ai fini par modifier directement la base de données WSUS pour changer la description.

Faites attention! N'utilisez ma solution que si vous êtes absolument sûr de ce que vous faites. Modifier la base de données dont dépend votre serveur, c'est comme effectuer une opération à cœur ouvert sur votre meilleur ami.

Mon installation WSUS utilise la base de données interne Windows pour stocker les informations de mise à jour. Étant donné que cette version ne permet pas les requêtes distantes, j'ai dû utiliser une installation locale de SQL Server Management Studio.
Connectez-vous à la base de données en utilisant le nom de serveur fourni par l'article lié ci-dessus.

J'ai pu modifier la description de la mise à jour en exécutant cette requête:

UPDATE tbPreComputedLocalizedProperty
SET Description = '"0x00000133" Stop error when there''s faulty hardware in Windows 8.1 or Windows Server 2012 R2'
FROM tbPreComputedLocalizedProperty p
JOIN tbUpdate u ON p.UpdateID = u.UpdateID
JOIN tbRevision r ON u.LocalUpdateID = r.LocalUpdateID
JOIN tbKBArticleForRevision kb ON r.RevisionID = kb.RevisionID
WHERE kb.KBArticleID LIKE '3013791' AND p.ShortLanguage = 'en'
GO

Ceci est juste un moyen de définir la description à la main, donc je vais faire d'autres expériences sur la façon d'obtenir les descriptions directement à partir du site Web de la base de connaissances et de les appliquer automatiquement à toutes les nouvelles mises à jour. Je vais ajouter les informations à ce post.


Vous devriez presque certainement marquer votre propre réponse comme acceptée . La réponse personnelle est même encouragée .
jscott
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.