Procurando por uma solução alternativa para instalar um certificado pessoal em um perfil obrigatório

1

Recentemente, criei perfis obrigatórios para uma imagem de PC que estou criando e consegui configurar tudo o que preciso nos perfis por meio da política de grupo, com exceção de um item principal. Aparentemente, os perfis obrigatórios não permitem a instalação de certificados no armazenamento pessoal (pfx / p12 certs). Esse é um disjuntor de negócios porque um de nossos fornecedores exige um certificado pessoal instalado. Eu gostaria de evitar me afastar dos perfis obrigatórios por causa desta advertência, então estou tentando fazer o possível para resolver isso. Eu sinto que estou muito perto, mas eu bati na parede no último degrau .. aqui está o que eu inventei até agora:

  • Descobri que, editando manualmente o valor de Estado da subchave de registro em NT \ CurrentVersion \ ProfileList \% userSID% de HKLM \ SOFTWARE \ Microsoft \ Windows de 21001 (que é o que o designa como um perfil obrigatório) para 0 (o que o designa como um perfil local) posso fazer com que o computador pense que é um perfil local e ele permitirá que o certificado seja instalado.
  • Eu tive um script powershell escrito que consulta o atual SID de usuários logados e edita o valor de Estado para mim.
  • Esse script exige privilégios de administrador para ser executado, mas precisa ser executado em uma conta não administrativa no login. No momento, estou tentando fazer isso funcionar implantando uma tarefa agendada por meio da política de grupo que executa o script no logon com credenciais de administrador.
  • para que isso funcione, preciso definir "Executar se o usuário está logado ou não" na tarefa agendada, mas isso faz com que o script seja executado, mas não funcione. (A chave do registro não é atualizada).

Parece-me que o problema é que o agendador de tarefas não pode executar um script interativo com a execução se o usuário está logado ou não está marcada. Alguém tem alguma idéia do que eu posso fazer isso funcionar? Eu não estou familiarizado o suficiente com scripts para saber se é possível atualizar meu script para que seja um script não interativo que pode atualizar essa chave do Registro.

Eu também não estou ligado ao script de jeito nenhum - se existe outra maneira de obter este certificado instalado automaticamente Obrigado por todo e qualquer suporte a todos. Eu tenho mais algumas idéias para investigar que eu acho que pode ou não funcionar, mas minha falta de experiência me deixa inseguro, como -

  • Talvez seja possível criar o perfil obrigatório de forma que, embora ele aja como um perfil obrigatório (exclui o perfil e carregue um perfil padrão em seu lugar no login do usuário), o estado será criado como " 0 "quando o perfil é criado (em vez de um 21001)

  • Talvez seja possível escrever algo (em um idioma diferente do PowerShell) que altere a chave de registro para mim no login que pode ser definido como "Executar se o usuário está logado ou não" como administrador.

  • Talvez exista uma maneira de instalar manualmente o certificado em meu sistema, em vez de usar o instalador de certificado ou o certutil. Parece-me que, ao instalar o certificado no perfil obrigatório, o certificado será instalado no armazenamento pessoal, mas o site não será autenticado. Talvez esteja armazenando incorretamente a senha dos certificados?

Qualquer orientação ou idéias são muito apreciadas, eu sinto que estou tão perto, mas tão longe .. Obrigado a todos!

    
por Jacob skidmore 17.11.2016 / 21:21

1 resposta

0

OP aqui, estou tentando recuperar a conta em que postei essa pergunta, mas até lá responderei por meio dessa resposta.

Na minha resposta originalmente excluída, afirmei que todos não compartilham um certificado - existem mais de 300 sites com 4 a 5 PCs cada, todos com um certificado específico do site. Eu pretendo gerenciar a instalação do certificado por meio da política de grupo.

No que diz respeito ao certificado que está sendo compartilhado, aqui está como descobri que o processo está funcionando na prática.

O PC tem um "perfil de modelo" que os usuários do meu domínio devem usar como o perfil de usuário padrão. Quando um usuário efetua login, um perfil é criado para esse usuário específico, espelhando as configurações do perfil do modelo. A política de grupo deve então começar a implementar todos os GPOs de meu usuário, incluindo a criação e a execução do script que atualiza o registro para esse novo perfil específico de usuário. no próximo logon desse usuário, o perfil é completamente apagado e o processo volta a ocorrer. Portanto, cada usuário está gravando em seu próprio perfil exclusivo quando o certificado é instalado e, portanto, eu poderia ter três usuários diferentes instalando três certificados diferentes no mesmo computador sem conflito. O certificado não é instalado no modelo, mas no perfil exclusivo que é criado no log in (confirmei isso com a minha solução alternativa de registro).

Uma observação adicional, cada PC usa apenas um único certificado para qualquer usuário que o use. Então, supondo que um certificado foi compartilhado para todos os perfis no PC, tudo bem. Eu simplesmente não consigo convencer nosso fornecedor a emitir certificados de PC.

    
por 17.11.2016 / 23:27