linha de comando do Windows para executar como o usuário atualmente logado depois de iniciar o script de comando / lote como outro usuário dentro do mesmo script?

1

Eu tenho um script em lotes do Windows que é executado automaticamente no login como um usuário administrador específico (não é o mesmo usuário que está conectado) para todos os usuários padrão.

Dentro do mesmo script, preciso executar uma verificação em sua associação ao grupo (chamando um exe com um grupo específico como um parâmetro) no usuário conectado no momento, ou seja. o usuário que está logado no Windows que o shell do script exibe e é executado a partir de / on .

Depois, dependendo do resultado da verificação mencionada, continue processando o mesmo script usando os direitos do usuário inicial do administrador, , por exemplo. para instalar o software.

Existe alguma maneira de fazer isso sem pedir credenciais , puramente através de linha de comando ou talvez até mesmo powershell (chamado de dentro do script) ?

Estou à procura de uma experiência completamente não interativa para o usuário, pois isso deve ser aplicado em até aprox. 9000 usuários.

Qualquer ajuda seria apreciada. Felicidades.

    
por mettle 21.11.2016 / 19:14

1 resposta

0

O comando

Runas tem a chave /savedсred , mas sob cada novo usuário que você ainda precisa digitar a senha (uma vez).

Existe uma maneira no powershell:

  1. Use ConvertTo-SecureStrin g para criptografar senha
  2. Crie credenciais objeto
  3. Execute o aplicativo com Iniciar processo

$secstring = ConvertTo-SecureString -String $password -AsPlainText -Force

$credentials = New-Object System.Management.Automation.PSCredential -ArgumentList @($username,$secstring)

Start-Process <filefullpath> -WorkingDirectory <work dir> -Credential ($credentials)

Mas a segurança criptografada em um computador não pode ser descriptografada na outra ( se você não criptografar com uma chave conhecida com o parâmetro -Key ) Na verdade, você precisa colocar as credenciais no corpo do seu script.

    
por 22.11.2016 / 07:19