---
sourceDocument: Criar ou modificar aplicações do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/application-development

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Criar ou modificar aplicações do Xanadu

ft:clusterId :

    - cadev

bundleId :

    - cadev

workflow :

    - Creator


---

# Gerar certificados para configuração do Navegador sem interface para Microsoft Windows

# Gerar certificados para configuração do Navegador sem interface para Microsoft Windows {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 3 min. de leitura

Gere certificados TLS/SSL para proteger a REST API do Docker e autenticar solicitações HTTP.

## Antes de Iniciar

Função necessária: administrador na instância ServiceNow e administrador local na máquina host.  
Aviso:  
A única versão de Microsoft Windows que ServiceNow oferece suporte como host é o Windows Server 2019 v10.0.17763.737. Nenhuma outra versão é compatível. Se você não puder atender a esses requisitos, um host Linux será recomendado.  
* Conclua os pré-requisitos listados no tópico [Configuração do navegador remoto para Microsoft Windows](https://servicenow-prod.fluidtopics.net/VazqYUR_hu5RrHifSHjjjA "O navegador sem interface ServiceNow ] para Automated Test Framework (ATF) fornece automação para que você não precise abrir manualmente um navegador durante os testes. A configuração do Navegador remoto está disponível em Linux e Microsoft Windows. Este tópico cobre a configuração do Windows."). Certifique-se de que os seguintes programas estejam instalados no servidor Windows :
  * Docker: [aplicação do Docker para Windows](https://docs.docker.com/engine/install/)
  * Java keytool: [ferramenta de chocolate para javaruntime](https://community.chocolatey.org/packages/javaruntime)
  * OpenSSL: [ferramenta de chocolate para openssl](https://community.chocolatey.org/packages/openssl)
  {#headless-browser-certificates-windows__ul_ec4_1vk_jpb}
{#headless-browser-certificates-windows__ul_mts_5qk_jpb}  
Observe os seguintes requisitos:

* Comunicação bidirecional  
  Aviso:  
  Certifique-se de obter as chaves de autoridade de certificação de uma autoridade de certificação confiável.
  * Deve haver comunicação bidirecional entre o URL da instância e o servidor.
  * Encontre o endereço IP do seu servidor e obtenha o nome do host. Você pode usar um ou ambos, mas precisa de pelo menos um.  
    Nota:  
    Se você não tiver um nome de host e estiver se conectando por meio do endereço IP, poderá inserir o endereço IP e colocar "localhost" na variável de ambiente Hostname.

  {#headless-browser-certificates-windows__ul_pzf_hzm_hpb}  
  Dica:  
  Para facilitar a memorização deles, defina as seguintes variáveis de ambiente:
  * `exportar SENHA="<password to generate the certificates with> "`
  * `exportar SERVERIP="<this server's IP address> "`
  * `exportar HOSTNAME="<hostname of this server> "`
  {#headless-browser-certificates-windows__ul_qkj_fzm_hpb}
* Porta: use a porta 2376 ou sua própria porta padrão para este procedimento.  
  Nota:  
  Verifique se as regras de firewall permitem solicitações de entrada nesta porta
* Para saber mais, consulte [Usar TLS (HTTPS) para proteger o soquete do daemon do Docker](https://docs.docker.com/engine/security/protect-access/#:~:text=Use%20TLS%20(HTTPS)%20to%20protect,to%20a%20trusted%20CA%20certificate.).
{#headless-browser-certificates-windows__ul_nkj_fzm_hpb}

## Por Que e Quando Desempenhar Esta Tarefa

Por padrão, ao expor a Docker API, as solicitações não são autenticadas, o que pode deixar sua máquina host vulnerável a ataques. A API do Docker, no entanto, é compatível com a autenticação TLS em que as solicitações são verificadas em relação às chaves privadas públicas fornecidas na criptografia HTTPS. Nesta etapa, você cria essas chaves para o servidor e o cliente.

## Procedimento

1. Abra uma linha de comando.
2. Gere uma chave de autoridade de certificação autoassinada ou recupere um par de chaves de uma autoridade de certificação confiável.  
   Os comandos a seguir são um exemplo. Observe que sua configuração pode variar.

       openssl genrsa -aes256 -passout pass:%PASSWORD% -out ca-key.pem 4096
       openssl req -passin pass:%PASSWORD% -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem 

3. Gere o par de chaves do servidor usando a chave da autoridade de certificação.  
   Os comandos a seguir são um exemplo. Observe que sua configuração pode variar.

       openssl genrsa -out server-key.pem 4096
       openssl req -subj /CN=%HOSTNAME% -new -key server-key.pem -out server.csr
       echo extendedKeyUsage = clientAuth > extfile.cnf
       openssl x509 -passin pass:%PASSWORD% -req -days 365 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem -extfile extfile.cnf

4. Crie o par de chaves do cliente usando a chave da autoridade de certificação.  
   Os comandos a seguir são um exemplo. Observe que sua configuração pode variar.

       openssl genrsa -out client-key.pem 4096
       openssl req -subj /CN=%HOSTNAME% -new -key client-key.pem -out client.csr
       echo subjectAltName = DNS:%HOSTNAME%,IP:%SERVERIP%,IP:127.0.0.1 > extfile.cnf
       openssl x509 -passin pass:%PASSWORD% -req -days 365 -in client.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out client-cert.pem -extfile extfile.cnf

5. Importe a chave pública da CA e o par de chaves do cliente para um armazenamento de chaves Java.  
   Estas instruções são um exemplo. Sua configuração pode variar.  
   Crie o arquivo de armazenamento de chaves e uma senha para ele (e salve para uso posterior): `keytool -genkey -keyalg RSA -alias dse -keystore my.keystore`

   Exclua uma entrada padrão do arquivo de armazenamento de chaves: `keytool -delete -alias dse -keystore my.keystore `  
   Nota:  
   Esta entrada é gerada automaticamente, portanto, não é necessária.

   Importe a chave pública da CA para o armazenamento de chaves: `keytool -import -keystore my.keystore -trustcacerts -alias ca -file ca.pem `  
   Importe o par de chaves do cliente.  
   Nota:  
   Você está criando um novo arquivo de armazenamento de chaves pkcs12 e importando o par de chaves para ele. Em seguida, copie o conteúdo para o arquivo de armazenamento de chaves original.
   * `openssl pkcs12 -export -name clientkeypair -in client-cert.pem -inkey client-key.pem -out clientkeypair.p12 `
   * `keytool -importarkeystore -destkeystore my.keystore -srckeystore clientkeypair.p12 -srcstoretype pkcs12 -alias clientkeypair `

   {#headless-browser-certificates-windows__ul_hvx_bjt_hpb}

   Agora que você adicionou todos os certificados ao arquivo de armazenamento de chaves, salve o arquivo my.keystore para mais tarde, pois ele será carregado na instância ServiceNow. Além disso, certifique-se de lembrar a senha que você inseriu quando solicitado a criar o arquivo de armazenamento de chaves; você precisará inserir isso em um formulário na instância ServiceNow.
{#headless-browser-certificates-windows__steps_u2x_3ht_hpb}
**Tópico anterior:** [Instalar o Docker para configuração do navegador remoto para Microsoft Windows](https://servicenow-prod.fluidtopics.net/Y7ESG9DRHIaITvq71qOurg "Etapa 1 na configuração [ Windows do ServiceNow Navegador remoto para Automated Test Framework: Instale o Docker.")  
**Próximo tópico:** [Configurar o Docker para configuração do navegador remoto em Microsoft Windows](https://servicenow-prod.fluidtopics.net/bhonJzGQH763hP5dB6_hKA "Configure o Docker Server para autenticar todas as solicitações.")

