Posso alterar as descrições de atualização no WSUS?


11

Em cada dia de correção da Microsoft, tenho uma quantidade bastante grande de novas atualizações que quero aprovar para meus clientes. Mas, em vez de 'Aprovar todas as atualizações e continuar', coleto informações sobre cada atualização no artigo da Base de Dados de Conhecimento para decidir se essa atualização é importante para nós ou não.

Essa é uma tarefa bastante tediosa, pois preciso digitar o número da KB correspondente no navegador do meu cliente e aguardar o carregamento da página da web. Fiquei me perguntando por que a Microsoft não está usando a caixa de descrição da atualização no painel de controle do WSUS para mostrar informações realmente úteis e detalhadas. Em vez disso, todas as minhas atualizações são lidas:

Instale esta atualização para resolver problemas no Windows. Para obter uma lista completa dos problemas incluídos nesta atualização, consulte o artigo associado ao Microsoft Knowledge Base para obter mais informações. Depois de instalar este item, talvez seja necessário reiniciar o computador.

Comecei a pensar em um pequeno script do Powershell, que adiciona as informações necessárias para mim. Mas eu falhei na primeira etapa, que está alterando uma descrição da atualização manualmente:

PS C: \ Usuários \ Administrador> $ wsus = Get-WsusServer

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

PS C: \ Users \ Administrator> $ update [0]. Descrição
Instale esta atualização para resolver problemas no Windows. Para obter uma lista completa dos problemas incluídos nesta atualização, consulte o artigo associado ao Microsoft Knowledge Base para obter mais informações. Depois de instalar este item, talvez seja necessário reiniciar o computador.

PS C: \ Users \ Administrator> $ update [0] .Description = '"0x00000133" Erro de parada quando há hardware defeituoso no Windows 8.1 ou no Windows Server 2012 R2'

PS C: \ Users \ Administrator> $ update [0]. Descrição
"0x00000133" Erro de parada quando há hardware defeituoso no Windows 8.1 ou no Windows Server 2012 R2

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

PS C: \ Users \ Administrator> $ update [0]. Descrição
Instale esta atualização para resolver problemas no Windows. Para obter uma lista completa dos problemas incluídos nesta atualização, consulte o artigo associado ao Microsoft Knowledge Base para obter mais informações. Depois de instalar este item, talvez seja necessário reiniciar o computador.

Parece que minhas alterações não estão sendo confirmadas no banco de dados. Estou faltando algum tipo de $wsus.SubmitChanges()ou o $wsus.SearchUpdates()comando retorna um 'update.Clone ()' para que minhas alterações sejam salvas em lugar nenhum.

Como alcançar meu objetivo de alterar as descrições de atualização do WSUS?


$update[0].Description | Get-MemberVocê pode usar a .Replace()função de membro, mas não está claro como lidar com a alteração. Você precisaria, de alguma forma, chamar um, Set()mas não vejo como isso funciona.
mortenya

Uma pergunta relacionada ao SuperUser pergunta sobre o que você provavelmente já resolveu: Como obter uma descrição significativa de cada atualização. Parece que você já resolveu essa parte, eu apreciaria muito se você pudesse dar uma olhada. superuser.com/q/878753/99136
krlmlr

@krlmlr Devo ter perdido o seu comentário sobre esta questão. Agora que criei um programa real para o meu problema descrito aqui, publiquei uma resposta para a pergunta acima em sua página Superusuário.
Physikbuddha

Respostas:


7

Atualizar

Usando a resposta abaixo, criei uma pequena ferramenta que adiciona automaticamente as descrições ao meu servidor WSUS. Decidi publicar minha ferramenta no Github, fique à vontade para testá-la.

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

Captura de tela de amostra

Resposta original

Tentei resolver o problema com o Get-Member, conforme sugerido por mortenya na seção de comentários, mas sem sorte.
Finalmente, acabei editando diretamente o banco de dados do WSUS para alterar a descrição.

Seja cuidadoso! Use minha solução apenas se tiver certeza absoluta do que está fazendo. Editar o banco de dados em que seu servidor depende, é como realizar uma cirurgia cardíaca aberta no seu melhor amigo.

Minha instalação do WSUS está usando o Banco de Dados Interno do Windows para armazenar as informações de atualização. Como esta versão não permite consultas remotas, tive que usar uma instalação local do SQL Server Management Studio.
Conecte-se ao banco de dados usando o nome do servidor fornecido pelo artigo vinculado acima.

Consegui alterar a descrição da atualização executando esta consulta:

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

Esta é apenas uma maneira de definir a descrição manualmente, por isso vou fazer mais experimentos sobre como obter as descrições diretamente do site da KB e aplicá-las em todas as novas atualizações automaticamente. Vou adicionar as informações a este post.


Você quase certamente deve marcar sua própria resposta como aceita . A auto-resposta é encorajada mesmo .
jscott
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.