- Visão geral
- Requisitos
- Pré-instalação
- Preparação da instalação
- Baixando os pacotes de instalação
- Configuração do registro compatível com OCI
- Concessão de permissões de instalação
- Instalação e configuração do service mesh
- Instalando e configurando a ferramenta GitOps
- Instalando o operador de segredos externos no Kubernetes
- Aplicação de configurações diversas
- Executando o uipathctl
- Instalação
- Pós-instalação
- Migração e atualização
- Monitoramento e alertas
- Administração de cluster
- Configuração específica do produto
- Configuração avançada do Orchestrator
- 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
- Ignorar a instalação da biblioteca do host
- AI Trust Layer
- Solução de problemas
- A configuração de backup não funciona devido a uma falha na conexão com o Azure Government
- Pods no namespace uipath travaram ao habilitar taints de nó personalizado
- Não é possível iniciar o Automation Hub e o Apps com configuração de proxy
- O backup do Velero falha com o erro FailedValidation
- Solução de problemas de segredos externos
- Solução de problemas de Temporal como um serviço
- Os pods do AI Center e do Document Understanding falham ao iniciar com a verificação do certificado TLS habilitada
- Erros de validação de certificado TLS
- O Fluentd não exporta logs em ambientes IPv6
- O Studio Desktop não pode carregar conectores e atividades do Integration Service
- Migreção manual do ArgoCD NetworkPolicy (GHSA-47m3-95c7-g2g8)
- Configuração de solicitações e limites de recursos para cargas de trabalho criadas pelo uipathctl
Funcionalidades de segurança, compatibilidade com a FIPS 140-2 e políticas de rede para o Automation Suite no EKS/AKS.
Contexto de segurança para serviços da UiPath®
Esta seção fornece detalhes sobre o contexto de segurança dos serviços da UiPath®.
Todos os serviços UiPath® são configurados com um contexto de segurança definido em sua seção. spec
O exemplo a seguir mostra uma configuração típica para os serviços da UiPath®:
spec:
securityContext:
runAsNonRoot: true
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
containers:
- securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: ["ALL"]
hostPID: false
hostNetwork: false
spec:
securityContext:
runAsNonRoot: true
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
containers:
- securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: ["ALL"]
hostPID: false
hostNetwork: false
Para alguns serviços da UiPath®, há exceções da configuração típica do contexto de segurança:
- No caso do serviço,
connector-builder-setup-jobo valor do parâmetroreadOnlyRootFilesystemé.false
Em algumas instâncias, os IDs de usuário e IDs de grupo podem ser maiores ou iguais a 1000, dependendo do seu ambiente. Certifique-se de configurar os IDs de usuário e grupo de acordo com seus princípios de segurança e as diretrizes de segurança da sua organização.
Políticas de Gateway e OPA
O Automation Suite é pré-configurado com políticas Gatekeeper e OPA. Se você trouxer seu próprio componente do Gatekeeper e políticas OPA, poderá ignorar esses componentes da instalação do Automation Suite. Para obter detalhes, consulte a pilha do Automation Suite. Nesse caso, revise as políticas do OPA e as exceções necessárias para instalar e executar o Automation Suite.
Por padrão, essas políticas são executadas apenas nos seguintes namespaces da UiPath: -uipath, uipath-installer, uipath-infra, airflow e argocd.
Políticas do OPA
| Policy | Actionsde Aplicação | Namespaces/Imagens a serem excluídos |
|---|---|---|
| Controla a restrição de escalonamento a privilégios de root. Corresponde ao campo |
|
|
| Configura uma lista de permissões de perfis do AppArMor para uso por contêineres. Isso corresponde a anotações específicas aplicadas a uma PodSecurityPolicy. |
|
|
| Controla recursos do Linux em contêineres. Corresponde aos campos |
|
|
| Controla a lista de permissões de drivers do FlexVolume. Corresponde ao campo |
|
|
|
|
| |
| Controla a alocação de um FSGroup que tem os volumes do pod. Corresponde ao campo |
|
|
| Controla o uso do sistema de arquivos do host. Corresponde ao campo |
|
|
| Desabilita o compartilhamento de namespaces PID do host e IPC por contêineres de pod. Corresponde aos campos |
|
|
| Controla o uso do namespace da rede do host pelos contêineres de pod. |
|
|
| Controla a capacidade de qualquer contêiner de habilitar o modo privilegiado. Corresponde ao campo |
|
|
| Controla os tipos de Corresponde ao campo |
|
|
| Requer o uso de um sistema de arquivos raiz somente leitura para os contêineres de pod. |
|
|
| Controla o perfil secomp usado pelos contêineres. Corresponde à anotação |
|
|
| Define uma lista de permissões de configurações seLinuxOptions para contêineres de pod. |
|
|
| Controla os IDs de usuários e grupos do contêiner e de alguns volumes. |
|
|
| Restringe os tipos de volumes montáveis àqueles especificados pelo usuário. |
|
|
O namespace airflow só é necessário se você instalar o Process Mining.
Outras políticas do OPA
| Policy | Actionsde Aplicação | Namespaces/Imagens a serem excluídos |
|---|---|---|
| Controla a capacidade de qualquer pod de habilitar |
|
|
| Exige que as imagens de contêiner comecem com uma cadeia de caracteres da lista especificada. |
|
|
|
| N/A | |
| Não permite todos os serviços do tipo LoadBalancer. |
|
|
| Desabilita todos os Serviços do tipo NodePort. |
|
|
| Os usuários não devem poder criar Ingresss com um nome de host em branco ou curinga (*), pois isso os permitiria interceptar o tráfego para outros serviços no cluster, mesmo se eles não tiverem acesso a esses serviços. |
|
|
| Exige que os contêineres tenham limites de memória e CPU definidos. Limita os limites para que estejam dentro dos valores máximos especificados. |
|
|
| Exige que os contêineres tenham solicitações de memória e de CPU definidas. Limita as solicitações para que fiquem dentro dos valores máximos especificados. |
|
|
| Define uma relação máxima dos limites de recursos de contêiner para as solicitações. |
|
|
| Requer que os contêineres tenham recursos definidos definidos. |
|
|
| Proibir a associação dos recursos ClusterRole e Função ao usuário |
| N/A |
| Exige que as imagens de contêiner tenham uma tag de imagem diferente daquelas na lista especificada. |
| N/A |
| Exige que os contêineres tenham um limite de armazenamento efêmero definido e limita esse limite dentro dos valores máximos especificados. |
|
|
|
| N/A | |
| Requer que os recursos do Ingress sejam somente HTTPS. Os recursos de entrada devem incluir a anotação Por padrão, uma configuração {} de TLS válida é necessária, isso pode ser opcional definindo o parâmetro |
|
|
| Exige que as imagens de contêiner contenham um resumo. |
|
|
| Blocos que atualizam a conta de serviço em recursos que abstraem sobre pods. Esta política é ignorada no modo de auditoria. |
| N/A |
|
|
| |
| Exige que os pods tenham testes de prontidão e/ou atividade. |
|
|
| Requer que as classes de armazenamento sejam especificadas quando usadas. |
| N/A |
| Exige que todos os hosts da regra de Ingress sejam exclusivos. |
| N/A |
| Exige que os Serviços tenham seletores exclusivos em um namespace. Os seletores são considerados iguais se tiverem chaves e valores idênticos. Os seletores podem compartilhar um par de chave/valor, desde que haja pelo menos um par de chave/valor distinto entre eles. |
| N/A |
- O namespace
airflowsó é necessário se você instalar o Process Mining. prereq**são namespaces temporários criados ao executar um pré-requisito ou verificação de integridade. Os namespaces se excluem automaticamente após a conclusão.
Políticas de rede
O Automation Suite é pré-configurado com as políticas de rede padrão do Kubernetes para seguir o princípio do acesso à rede com privilégio mínimo. Você pode escolher pular a instalação de políticas de rede fornecidas pela UiPath adicionando network-policies sob a lista exclude components em input.json. Para saber mais sobre componentes opcionais, consulte a pilha do Automation Suite.
O Automation Suite impõe a rede de, para e dentro do namespace <uipath>. Se você trouxer suas próprias políticas de rede ou se tiver uma CNI personalizada (por exemplo, Cilium Enterprise ou Calico Tigera Enterprise), certifique-se de atualizar suas políticas para espelhar o gráfico do Helm network-policies .
As políticas de rede do Kubernetes são aplicadas pelo plug-in CNI. Alguns CNIs, como o Amazon VPC CNI, não impõem políticas de rede por padrão; nesse caso, as políticas de rede fornecidas pela UiPath são criadas, mas não têm efeito. Certifique-se de que a aplicação da política de rede esteja habilitada em seu cluster — para obter instruções, consulte a documentação oficial da sua CNI.
Você pode encontrar o gráfico do Helm network-policies do Automation Suite executando o seguinte comando.
- Você deve substituir
<automation-suite-version>por sua versão atual do Automation Suite no seguinte comando. - Você deve descompactar o arquivo para extrair o gráfico do Helm.
helm pull oci://registry.uipath.com/helm/network-policies --version <automation-suite-version>
helm pull oci://registry.uipath.com/helm/network-policies --version <automation-suite-version>
Requisitos de privilégio de cluster
O acesso de administrador do cluster é necessário para uipathctl no seu nó de gerenciamento para instalar e gerenciar o Automation Suite em um cluster dedicado. Esse nível de acesso é necessário para componentes no nível do sistema no Automation Suite, como Istio (roteamento/malha de serviço) e ArgoCD (implantação e gerenciamento do ciclo de vida do aplicativo), e para criar namespaces relacionados ao Automation Suite. Para clusters compartilhados, os privilégios de administrador não são necessários.
FIPS 140-2
O Federal Information Processing Standards 140-2 (FIPS 140-2) é um padrão de segurança que valida a eficácia dos módulos de criptografia.
O Automation Suite pode ser executado em máquinas habilitadas para FIPS 140-2.
Você pode habilitar o FIPS 140-2 nas máquinas nas quais você instala o Automation Suite nos seguintes cenários:
- Habilite o FIPS 140-2 antes de executar uma instalação limpa do Automation Suite. Esse cenário se aplica ao Automation Suite no EKS e ao Automation Suite no AKS. Para obter detalhes, consulte Habilitação do FIPS 140-2 para novas instalações.
- Habilite o FIPS 140-2 após executar uma instalação do Automation Suite em uma máquina com o FIPS-140-2 desabilitado. Para obter detalhes, consulte Habilitação do FIPS 140-2 para instalações existentes.
Observação:
Esse cenário se aplica apenas ao Automation Suite no AKS. Para o Automation Suite no EKS, você não pode habilitar o FIPS 140-2 se tiver concluído uma instalação do Automation Suite com o FIPS-140-2 desabilitado.
Habilitando o FIPS 140-2 para novas instalações
Para habilitar o FIPS 140-2 nas máquinas em que planeja realizar uma nova instalação do Automation Suite, siga estas etapas:
- Antes de iniciar a instalação do Automation Suite, habilite o FIPS 140-2 em suas máquinas.
- Execute a instalação do Automation Suite seguindo as instruções de instalação neste guia.
Observação:
- Ao instalar o AI Center em uma máquina habilitada para FIPS 140-2 e utilizar o Microsoft SQL Server em conjunto, algumas configurações adicionais serão necessárias. Para obter detalhes, consulte Requisitos do SQL para o AI Center.
- Certifique-se de que o Insights esteja desabilitado, pois não é suportado em FIPS 140-2. Se você precisar usar o Insights, poderá implantá-lo em um nó dedicado que não seja FIPS. Para obter detalhes, consulte Como implantar o Insights em um cluster habilitado para FIPS.
- Defina o sinalizador
fips_enabled_nodescomotrueno arquivoinput.json. - Certifique-se de que seus certificados sejam compatíveis com FIPS 140-2.
Observação:
Por padrão, o Automation Suite gera certificados autoassinados compatíveis com FIPS 140-2, cuja data de expiração depende do tipo de instalação do Automation Suite que você escolher.
Recomendamos fortemente que você substitua esses certificados autoassinados por certificados emitidos por CA no momento da instalação. Para usar o Automation Suite em máquinas habilitadas para FIPS 140-2, os novos certificados fornecidos devem ser compatíveis com FIPS 140-2.
Para obter uma lista de cifras elegíveis com suporte do RHEL, consulte a documentação do RHEL.Para obter detalhes sobre como adicionar sua própria assinatura de token compatível com FIPS 140-2 e certificados TLS, consulte Configuração de certificados.
- Para o Automation Suite no EKS, você deve fornecer o caminho do pacote de certificados do RDS. Você pode encontrar os links de download específicos da região para o pacote de certificados do RDS na documentação do AWS. Certifique-se de atualizar o arquivo do pacote de certificados do RDS
pemno arquivo de configuraçãoinput.json, conforme mostrado no exemplo a seguir:{ ... "additional_ca_certs": "certificates/rds-aws-bundle.pem", ... }{ ... "additional_ca_certs": "certificates/rds-aws-bundle.pem", ... }
Habilitando o FIPS 140-2 para instalações existentes
Você pode instalar o Automation Suite com o FIPS 140-2 desabilitado e, em seguida, habilitar o padrão de segurança nas mesmas máquinas. Isso também é possível ao atualizar para uma nova versão do Automation Suite.
Atualmente, é possível habilitar o FIPS 140-2 para instalações existentes do Automation Suite no AKS, mas não para instalações existentes do Automation Suite no EKS. Você pode habilitar o FIPS 140-2 para o Automation Suite no EKS apenas antes de realizar uma instalação limpa do Automation Suite. Para obter mais informações, consulte Habilitação do FIPS 140-2 para novas instalações.
Para habilitar o FIPS 140-2 nas máquinas nas quais já realizou uma instalação do Automation Suite, siga os seguintes passos:
- Execute uma operação regular de instalação ou atualização do Automation Suite em máquinas com FIPS 140-2 desabilitado.
- Habilite o FIPS 140-2 em todas as suas máquinas.
- Certifique-se de que seus certificados sejam compatíveis com FIPS 140-2.
Observação:
Para usar o Automation Suite em máquinas habilitadas para FIPS 140-2, você deve substituir seus certificados por novos compatíveis com FIPS 140-2 e assinados por uma CA.
Para obter uma lista de cifras elegíveis com suporte do RHEL, consulte a documentação do RHEL.
Para obter detalhes sobre como adicionar sua própria assinatura de token compatível com FIPS 140-2 e certificados TLS, consulte Configuração de certificados.
Para saber mais sobre certificados, consulte Gerenciamento dos certificados. - Certifique-se de que sua seleção de produtos esteja de acordo com os requisitos do FIPS-140-2:
- Ao instalar o AI Center em uma máquina habilitada para FIPS 140-2 e utilizar o Microsoft SQL Server em conjunto, algumas configurações adicionais serão necessárias. Para obter detalhes, consulte Requisitos do SQL para o AI Center.
- Se você habilitou o Insights anteriormente, deverá desabilitá-lo, pois não é compatível com FIPS 140-2. Se você precisar usar o Insights, poderá implantá-lo em um nó dedicado que não seja FIPS. Para obter detalhes, consulte Como implantar o Insights em um cluster habilitado para FIPS. Para obter detalhes sobre como desabilitar a pós-instalação de produtos, consulte Gerenciamento de produtos.
- Reinicialize suas máquinas e verifique se habilitou o FIPS 140-2 com sucesso.
- Execute novamente o instalador
uipathctl.