- Visão geral
- Requisitos
- Pré-instalação
- Preparação da instalação
- Instalação e configuração do service mesh
- Baixando os pacotes de instalação
- Configuração do registro compatível com OCI
- Concessão de permissões de instalação
- Instalando e configurando a ferramenta GitOps
- Implantação do Redis pelo OperatorHub
- Aplicação de configurações diversas
- Executando o uipathctl
- Instalação
- Pós-instalação
- Acessando o Automation Suite
- Gerenciamento dos certificados
- Gerenciamento do cluster no ArgoCD
- Gerenciando produtos
- Atualizando Credenciais
- Migração e atualização
- Administração de cluster
- Configuração específica do produto
- Configuração de parâmetros do Orchestrator
- Configuração do AppSettings
- Configuração do tamanho máximo da solicitação
- Substituição da configuração de armazenamento no nível do cluster
- Configuração do NLog
- Salvando logs do robô no Elasticsearch
- Configuração dos repositórios de credenciais
- Configuração da chave de criptografia por tenant
- Limpeza do banco de dados do Orchestrator
- Solução de problemas
Guia de instalação do Automation Suite no OpenShift
Gerenciamento dos certificados
O processo de instalação gera certificados autoassinados em seu nome. Você deve substituí-los por certificados assinados por uma Autoridade de Certificação (CA) confiável assim que a instalação for concluída.
uipathctl
para atualizar certificados após a instalação. Para obter detalhes, consulte a documentação do uipathctl.
Para gerar o CSR e a chave privada, execute o seguinte comando:
# copy the machine openssl configuration locally
cp /etc/pki/tls/openssl.cnf ./openssl.tmp.cnf
# Replace the [AUTOMATION_SUITE_FQDN] value. For example, "automationsuite.corp.com"
AS_FQDN=[AUTOMATION_SUITE_FQDN]
cat >> ./openssl.tmp.cnf <<EOF
[SAN]
subjectAltName=DNS:$AS_FQDN,DNS:alm.$AS_FQDN,DNS:monitoring.$AS_FQDN,DNS:registry.$AS_FQDN,DNS:objectstore.$AS_FQDN,DNS:insights.$AS_FQDN
EOF
# create the certificate request
openssl req -new -sha256 -newkey rsa:2048 -nodes -keyout server.key -subj "/C=xx/ST=xx/O=xx/OU=xx/CN=$AS_FQDN" -reqexts SAN -config openssl.tmp.cnf -out ${AS_FQDN}.csr
# copy the machine openssl configuration locally
cp /etc/pki/tls/openssl.cnf ./openssl.tmp.cnf
# Replace the [AUTOMATION_SUITE_FQDN] value. For example, "automationsuite.corp.com"
AS_FQDN=[AUTOMATION_SUITE_FQDN]
cat >> ./openssl.tmp.cnf <<EOF
[SAN]
subjectAltName=DNS:$AS_FQDN,DNS:alm.$AS_FQDN,DNS:monitoring.$AS_FQDN,DNS:registry.$AS_FQDN,DNS:objectstore.$AS_FQDN,DNS:insights.$AS_FQDN
EOF
# create the certificate request
openssl req -new -sha256 -newkey rsa:2048 -nodes -keyout server.key -subj "/C=xx/ST=xx/O=xx/OU=xx/CN=$AS_FQDN" -reqexts SAN -config openssl.tmp.cnf -out ${AS_FQDN}.csr
Sua equipe de TI usa os valores obtidos para gerar um certificado assinado. A chave privada gerada permanece local.
Para exibir mais informações sobre a atualização dos certificados TLS, execute o seguinte comando:
uipathctl config update-tls-certificates --help
uipathctl config update-tls-certificates --help
Saída:
************************************************************************************
Manage tls certificates
Usage:
uipathctl config tls-certificates [flags]
uipathctl config tls-certificates [command]
Available Commands:
get Get the current tls certificates
update Update tls certificates
Flags:
-h, --help help for tls-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
************************************************************************************
Manage tls certificates
Usage:
uipathctl config tls-certificates [flags]
uipathctl config tls-certificates [command]
Available Commands:
get Get the current tls certificates
update Update tls certificates
Flags:
-h, --help help for tls-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
istio-ingressgateway-certs
no namespace <istio-system>
.
Consulte os arquivos de certificado na lista a seguir:
-
O certificado do servidor TLS é armazenado como
tls.crt
-
A chave privada TLS do servidor como
tls.key
-
O pacote do CA é armazenado como
ca.crt
Você pode verificar os segredos usando o seguinte comando:
oc -n <istio-system> get secrets istio-ingressgateway-certs -o yaml
oc -n <istio-system> get secrets istio-ingressgateway-certs -o yaml
<uipath>
Isso é aplicável a todos os produtos UiPath® que precisam de informações de certificado para confiar nas solicitações recebidas. Para obter detalhes, consulte Sobre a arquitetura de contêiner relacionada a certificados.
Você deve descriptografar a chave de certificado antes de atualizar o certificado do servidor. Ignorar a etapa de descriptografia resulta em um erro.
Para descriptografar a chave de certificado, execute o seguinte comando:
# replace /path/to/encrypted/cert/key to absolute file path of key
# replace /path/to/decrypt/cert/key to store decrypt key
# Once prompted, please entry the passphrase or password to decrypt the key
openssl rsa -in /path/to/encrypted/cert/key -out /path/to/decrypt/cert/key
# replace /path/to/encrypted/cert/key to absolute file path of key
# replace /path/to/decrypt/cert/key to store decrypt key
# Once prompted, please entry the passphrase or password to decrypt the key
openssl rsa -in /path/to/encrypted/cert/key -out /path/to/decrypt/cert/key
uipathctl
. Você precisa do caminho para cada um dos três arquivos de certificado. Todo o arquivo de certificado deve estar no formato pem
.
-
Pacote de autoridades de certificados - Esse pacote deve conter apenas os certificados de cadeia usados para assinar o certificado do servidor TLS. O certificado fornecido na opção
--cacert
não deve incluir os certificados de folha. O limite de cadeia é de até nove certificados. -
Certificado do Servidor - Certificado de servidor público
Observação: O arquivoserver.crt
deve conter a cadeia inteira, conforme mostrado no exemplo a seguir:-----server cert----- -----root ca chain-----
-----server cert----- -----root ca chain----- -
Chave privada - Chave privada para o certificado de servidor
uipathctl config tls-certificates update --cert server.crt --cacert ca.crt --key server.key
uipathctl config tls-certificates update --cert server.crt --cacert ca.crt --key server.key
--use-istio-cert
com o comando de atualização de certificados. Esse sinalizador permite que os segredos existentes sejam copiados para o namespace. <uipath>
Esteja ciente de que, ao usar o sinalizador --use-istio-cert
, você não deve usar quaisquer outros sinalizadores de certificado, caso contrário, o comando falhará. Se você usar outro namespace em vez do <uipath>
, você deve especificá-lo passando para o sinalizador --namespace
.
Se você quiser que o cluster confie em software externo, pode ser necessário fornecer certificados CA confiáveis adicionais. Exemplos são o certificado de CA do SQL Server, o certificado de CA do servidor SMTP e o certificado de CA de objectstore externo compatível com S3.
Você deve fornecer certificados de CA para qualquer software externo que exija comunicação TLS segura durante a instalação. No entanto, se você não tiver habilitado a comunicação TLS, poderá configurá-la após a instalação.
Para exibir mais informações sobre certificados de CA adicionais, execute o seguinte comando:
uipathctl config additional-ca-certificates --help
uipathctl config additional-ca-certificates --help
Saída:
***************************************************************************************
Manage additional ca certificates
Usage:
uipathctl config additional-ca-certificates [flags]
uipathctl config additional-ca-certificates [command]
Available Commands:
get Get the current additional ca certificates
update Update additional ca certificates
Flags:
-h, --help help for additional-ca-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
***************************************************************************************
***************************************************************************************
Manage additional ca certificates
Usage:
uipathctl config additional-ca-certificates [flags]
uipathctl config additional-ca-certificates [command]
Available Commands:
get Get the current additional ca certificates
update Update additional ca certificates
Flags:
-h, --help help for additional-ca-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
***************************************************************************************
uipathctl config additional-ca-certificates
.
Este comando ajuda você a atualizar ou substituir os certificados de CA configurados existentes.
uipathctl config additional-ca-certificates update --cacert additional_ca.crt
uipathctl config additional-ca-certificates update --cacert additional_ca.crt
--replace
na etapa final.
.pem
válido e pode ter mais de um certificado presente nele.
O Automation Suite oferece dois métodos para gerenciar a rotação de certificados de assinatura de token de identidade: automático e manual.
Para visualizar mais informações sobre certificados de assinatura de token de identidade, execute o seguinte comando:
uipathctl config token-signing-certificates --help
uipathctl config token-signing-certificates --help
Saída:
************************************************************************************
Manage token signing certificates
Usage:
uipathctl config token-signing-certificates [flags]
uipathctl config token-signing-certificates [command]
Available Commands:
get Get the current token signing certificate
rotate Rotate token signing certificates
update Update future token signing certificate
Flags:
-h, --help help for token-signing-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
************************************************************************************
Manage token signing certificates
Usage:
uipathctl config token-signing-certificates [flags]
uipathctl config token-signing-certificates [command]
Available Commands:
get Get the current token signing certificate
rotate Rotate token signing certificates
update Update future token signing certificate
Flags:
-h, --help help for token-signing-certificates
Global Flags:
--context string name of the kubeconfig context to use
--kubeconfig string kubectl configuration file (default: ~/.kube/config)
--log-format string log format. one of [text,json] (default "text")
--log-level string set log level. one of [trace,debug,info,error] (default "error")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default 1h0m0s)
************************************************************************************
Você pode usar um comprimento máximo de chave de 4096 bits para assinar certificados. Recomendamos enfaticamente que você use um comprimento de chave de pelo menos 512 bits (64 bytes) como uma prática recomendada.
uipathctl config token-signing-certificates
.
Rotação automática de certificados significa que o Automation Suite gerencia o ciclo de vida das chaves de assinatura. Isso inclui chaves rotativas a cada 90 dias, anunciando novas chaves 14 dias antes da rotação, mantendo as chaves antigas por 14 dias após a rotação e, depois, excluí-las quando o período de 14 dias terminar.
Se você estiver atualizando de uma versão mais antiga para a 2024.10, a rotação automática de certificado está desabilitada por padrão. Para habilitar o gerenciamento automático de chaves, use o seguinte comando:
uipathctl config token-signing-certificates automatic-key-management enable
uipathctl config token-signing-certificates automatic-key-management enable
Habilitar a rotação automática de certificados pode resultar em um tempo de inatividade de até uma hora.
A rotação automática de certificados é habilitada por padrão para instalações limpas do Automation Suite. Para desabilitar o gerenciamento automático de chaves, use o seguinte comando:
uipathctl config token-signing-certificates automatic-key-management disable
uipathctl config token-signing-certificates automatic-key-management disable
Se a funcionalidade de gerenciamento automático estiver desabilitada, os certificados de assinatura precisarão ser atualizados e rotacionados manualmente. Para obter detalhes sobre o gerenciamento manual de chaves, consulte a documentação sobre atualização manual e rotação do certificado.
Para fazer upload do novo certificado para assinar o token, execute o seguinte comando:
O comando a seguir não substitui o certificado de assinatura de token existente.
.pem
.
server.crt
deve conter toda a cadeia, conforme mostrado no exemplo a seguir:
-----server cert-----
-----root ca chain-----
-----server cert-----
-----root ca chain-----
uipathctl config token-signing-certificates update --cert server.crt --key server.key
uipathctl config token-signing-certificates update --cert server.crt --key server.key
Para rotacionar ou substituir o certificado antigo pelo novo, execute o seguinte comando:
uipathctl config token-signing-certificates rotate
uipathctl config token-signing-certificates rotate
Para baixar o certificado de assinatura de token atual, execute o comando a seguir:
uipathctl config token-signing-certificates get
uipathctl config token-signing-certificates get
Deve haver um prazo de entrega de aproximadamente 24 a 48 horas entre a atualização e a rotação do certificado.
Precisamos desse prazo de entrega para continuar dando suporte à autenticação do token em cache assinado pelo certificado antigo.
Girar o certificado muito antes da expiração do token de cache pode resultar em tempo de inatividade. Nesse caso, talvez seja necessário reiniciar todos os robôs.
- Generating a Certificate Signing Request (CSR) and a private key
- Gerenciamento do certificado TLS
- Encontrando os certificados TLS
- Atualização dos certificados TLS
- Acessando o certificado TLS
- Gerenciamento de certificados de CA adicionais
- Atualização dos certificados de CA
- Acessando os certificados de CA
- Gerenciando certificados de assinatura de token de identidade
- Rotação automática de certificado
- Atualização manual do certificado
- Rotação manual do certificado
- Acessando o certificado