Estou configurando clientes Windows 11 como parte de um projeto para migrar nossa infraestrutura para o Intune. Como parte disso, estou tendo problemas com um script do PowerShell, que funciona em nossos clientes de domínio não intune. Preciso verificar se o endereço de e-mail inclui a string "@stu.domain" ou se é apenas "@domain". Meu script é o seguinte:
# Define the path to the executable
$exePath = "C:\Program Files\uniFLOW SmartClient\momsmartclnt.exe"
$currentUser = ([adsi]"LDAP://$(whoami /fqdn)").mail
# Check if the file exists and wether user is a teacher
if (Test-Path $exePath) {
# Run the executable
if($currentUser -notLike "*stu.myDomain*") {
Start-Process -FilePath $exePath
}
} else {
Write-Host "File not found: $exePath"
}
Agora, quando executo isso em meu cliente registrado uniflow, recebo o seguinte erro:
Isso se traduz em: "O FQDN não pôde ser solicitado porque o usuário atual não é um usuário de domínio.
No entanto, quando executo o comando whoami, recebo o domínio/nome de usuário, mas não o e-mail completo.
Estou confundindo alguma coisa aqui ou existe uma maneira melhor de obter o e-mail completo do usuário do cliente?
Agradecemos antecipadamente por qualquer ajuda/sugestão que você possa fornecer.
Bem-vindo à comunidade Stack Overflow👋
Provavelmente, você se depara com o problema porque o LDAP não consegue encontrar seu FQDN e não consegue combiná-lo com um usuário existente. Isso pode ser devido a vários problemas.
Você pode contornar isso pesquisando seu nome de usuário no AD usando o adsisearcher integrado. Você pode acessar seu nome de usuário usando a variável de ambiente. Lembre-se de que isso apontará para o nome de usuário do usuário que está executando o script, que pode não ser o usuário conectado no momento.
Além disso, eu recomendo que você use REGEX para sua correspondência de padrões, para que seu script possa ser modificado mais facilmente para lidar com requisitos de correspondência de padrões mais complexos.
Consulte nosso guia sobre como fazer boas perguntas para obter sugestões sobre como você pode melhorar suas perguntas futuras. Sua jornada ServerFault ainda está começando 🙌