Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — VUNESP 2025

ProgramaçãoLinguagens de programação
Código
vu092381
Banca
VUNESP
Órgão
Câmara de Marília - SP
Ano
2025
Nível
Fundamental
Cargo
Auxiliar de Informática
Considere a parte visível do código a seguir, escrito em PowerShell, que é executado a cada 60 segundos para pesquisar se o usuário CRM está bloqueado no Active Directory:Imagem associada para resolução da questãoAssinale a alternativa com, respectivamente, o comando PowerShell que preenche a lacuna do código, usado para consultar o usuário CRM no Active Directory e, em seguida, qual ponto do código (A, B ou C) devem ser adicionados comandos para dar um tratamento caso o usuário esteja bloqueado.
  1. AGet-ADUser, A
  2. BShow-Users, A
  3. CGet-UserList, B
  4. DGet-ADUser, B
  5. EShow-Users, C
Revelar gabarito e comentário

GabaritoD — Get-ADUser, B

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

PowerShell: consulta ao Active Directory e tratamento de usuário bloqueado

Gabarito: letra D. O comando correto para consultar um usuário no Active Directory é o Get-ADUser, e o tratamento para o caso de o usuário estar bloqueado deve ser adicionado no ponto B do código, pois é nesse ponto que o resultado da consulta é avaliado. A alternativa D combina corretamente o cmdlet e o ponto de inserção.

O Get-ADUser é o cmdlet nativo do módulo ActiveDirectory do PowerShell, projetado especificamente para recuperar informações de usuários do AD. Ele aceita parâmetros como -Identity (para especificar o usuário) e -Properties (para trazer atributos adicionais, como o status de bloqueio). Os outros comandos citados nas alternativas — Show-Users e Get-UserList — não existem no módulo ActiveDirectory, o que os torna inválidos para essa tarefa.

O ponto do código onde o tratamento deve ser inserido é o B, que representa o momento em que o resultado da consulta é recebido e pode ser verificado. Nesse ponto, o script pode avaliar se o usuário está bloqueado (por exemplo, verificando a propriedade LockedOut do objeto retornado) e, em caso positivo, executar as ações necessárias, como registrar o evento ou enviar um alerta. O ponto A é anterior à consulta, onde não há dados para avaliar, e o ponto C é posterior, onde o tratamento já deveria ter sido feito.

A lógica do script é: executar a consulta (com Get-ADUser), verificar o resultado (no ponto B) e, se o usuário estiver bloqueado, tomar uma ação. Essa estrutura é típica de scripts de monitoramento, onde a verificação de uma condição (usuário bloqueado) precede a ação corretiva.

A pegadinha desta questão está em dois níveis: primeiro, o candidato pode não conhecer o cmdlet correto e escolher um nome inventado; segundo, mesmo conhecendo o Get-ADUser, pode errar o ponto de inserção do tratamento, confundindo o ponto A (antes da consulta) com o ponto B (após a consulta). O ponto B é o único que faz sentido, pois é onde o resultado da consulta está disponível para ser avaliado.

Alternativa A — ❌ Incorreta

O comando Get-ADUser está correto, mas o ponto A está errado. O ponto A é anterior à execução da consulta, portanto não há resultado para avaliar. O tratamento do usuário bloqueado só pode ser feito após a consulta, no ponto B.

Alternativa B — ❌ Incorreta

O comando Show-Users não existe no módulo ActiveDirectory do PowerShell. Não há um cmdlet com esse nome para consultar usuários do AD. O comando correto é Get-ADUser.

Alternativa C — ❌ Incorreta

O comando Get-UserList não existe no módulo ActiveDirectory. O cmdlet correto para consultar usuários é Get-ADUser. Embora o ponto B esteja correto, o comando inválido torna a alternativa errada.

Alternativa D — ✅ Correta ⟵ GABARITO

O comando Get-ADUser é o cmdlet nativo do módulo ActiveDirectory para consultar usuários. O ponto B é o local correto para adicionar o tratamento, pois é onde o resultado da consulta é recebido e pode ser verificado. A combinação comando + ponto está correta.

Alternativa E — ❌ Incorreta

O comando Show-Users não existe no módulo ActiveDirectory, e o ponto C é posterior ao momento em que o tratamento deveria ser feito. O ponto correto é o B, imediatamente após a consulta.

Gabarito: letra D

Link permanente: /questoes/vu092381