- Vue d'ensemble (Overview)
- Prérequis
- Pré-installation
- Préparation de l'installation
- Téléchargement des packages d'installation
- Configuration du registre conforme à OCI
- Octroi d'autorisations d'installation avec des rôles de cluster
- Octroi d'autorisations d'installation sans rôles de cluster
- Installation et configuration du service Mesh
- Installer et configurer l'outil GitOps
- Installation de l'opérateur de clés secrètes externes
- Déploiement de Redis via OperatorHub
- Application de diverses configurations
- Exécution de uipathctl
- Installation
- Post-installation
- Migration et mise à niveau
- Surveillance et alerte
- Administration du cluster
- Configuration spécifique au produit
- Configuration avancée d'Orchestrator
- Configuration des paramètres d'Orchestrator
- Configuration des paramètres d'application
- Configuration de la taille maximale de la requête
- Remplacement de la configuration du stockage au niveau du cluster
- Configuration de NLog
- Enregistrement des journaux du robot dans Elasticsearch
- Configuration des magasins d'informations d'identification
- Configuration de la clé de chiffrement par locataire
- Nettoyer la base de données Orchestrator
- Ignorer l’installation de la bibliothèque hôte
- Rotation des informations d’identification de stockage d’objets blob
- Désactivation de l'utilisation d'URL pré-signées lors du téléchargement de données vers le stockage Amazon S3
- Configuration de la sécurité de l'application de processus
- Configurer une authentification Kerberos avec l’authentification MSSQL de base pour Process Mining
- AI Trust Layer
- Résolution des problèmes
- Comment désinstaller Automation Suite
- Comment résoudre l'échec de la vérification de la connectivité préalable sur OpenShift 4.16–4.18
- Comment déployer Insights dans un cluster compatible FIPS
- Comment désactiver l’activation automatique CDI dans l’opérateur GPU Nvidia
- Comment encoder en URL un mot de passe de chaîne de connexion SQL
- 500 erreurs et limitation de débit sur les requêtes S3 dans ODF
- Résolution des problèmes de clés secrètes externes
- Configuration des tolérances des pilotes CSI pour ODF 4.20
- Résolution des problèmes de Temporel en tant que service
- Les pods AI Center et Document Understanding ne démarrent pas avec la vérification du certificat TLS activée
- Studio Desktop ne peut pas charger les connecteurs et activités Integration Service
- Erreurs de validation du certificat TLS
- Atténuation manuelle de la politique réseau ArgoCD
- Configurer les requêtes et les limites de ressources pour les charges de travail créées par uipathctl
Gestion des certificats
Mettre à jour et faire pivoter les certificats TLS et d'identité dans Automation Suite sur OpenShift.
Le processus d'installation génère des certificats auto-signés en votre nom. Ces certificats expireront dans 90 jours. Vous devez les remplacer par des certificats signés par une autorité de certification (CA) approuvée dès la fin de l'installation. Si vous ne mettez pas à jour les certificats, l'installation cessera d'être opérationnelle après 90 jours.
Vous pouvez utiliser l'outil CLI uipathctl pour mettre à jour les certificats après l'installation. Pour de plus amples informations, consultez la documentation uipathctl.
Génération d'une demande de signature de certificat (CSR) et d'une clé privée
Pour générer la CSR et la clé privée, exécutez la commande suivante :
# 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,DNS:apps.$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,DNS:apps.$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
Votre équipe informatique utilise les valeurs obtenues pour générer un certificat signé. La clé privée générée reste locale.
Gestion du certificat TLS
Pour afficher plus d'informations sur la mise à jour des certificats TLS, exécutez la commande suivante :
uipathctl config update-tls-certificates --help
uipathctl config update-tls-certificates --help
Sortie :
************************************************************************************
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)
************************************************************************************
Trouver les certificats TLS
Les certificats sont stockés sous forme de clé secrète au niveau d'Istio. Vous pouvez trouver des certificats sous le nom istio-ingressgateway-certs dans l'espace de noms <istio-system> .
Consultez les fichiers de certificat dans la liste suivante :
- Le certificat TLS du serveur est stocké en tant que
tls.crt - Clé privée TLS du serveur en tant que
tls.key - Le bundle CA est stocké en tant que
ca.crt
Vous pouvez vérifier les clés secrètes à l'aide de la commande suivante :
oc -n <istio-system> get secrets istio-ingressgateway-certs -o yaml
oc -n <istio-system> get secrets istio-ingressgateway-certs -o yaml
Les certificats sont également stockés dans l’espace de noms <uipath> . Cela s’applique à tous les produits UiPath® qui ont besoin d’informations de certificat afin d’approuver les appels entrants. Pour de plus amples informations, consultez la section Comprendre l'architecture de conteneur liée aux certificats.
Mise à jour des certificats TLS
Avant de mettre à jour le certificat du serveur, vous devez déchiffrer la clé privée générée dans la section Génération d'une demande de signature de certificat (CSR) et une clé privée . Ignorer cette étape de déchiffrement entraînera une erreur.
Pour déchiffrer la clé de certificat, exécutez la commande suivante :
# 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
Comment la chaîne de certificats est assemblage
Lorsque vous exécutez la commande uipathctl config tls-certificates update , uipathctl assemble la chaîne complète de certificats à partir de deux fichiers d’entrée distincts:
server.crt- la chaîne de certificats de serveur public complète au format PEM: le certificat de serveur de feuille, suivi du ou des certificats CA intermédiaires et de l'autorité de certification racine qui forment le chemin de signature de ce certificat de feuille. Inclure uniquement les certificats qui font partie de la chaîne de signature réelle du certificat de la feuille - n'incluez pas les certificats frères, non liés, en double ou alternatifs.ca.crt: la chaîne CA complète, y compris tous les certificats intermédiaires et l'autorité de certification racine. Le fichier doit uniquement contenir les certificats utilisés pour signer le certificat du serveur TLS. Inclure tout ce qui entraînera un échec.
uipathctl fusionne ces fichiers au moment du runtime.
Pour mettre à jour le certificat, indiquez le chemin d’accès à chacun des trois fichiers de certificat. Tous les fichiers de certificat doivent être au format PEM .
- Ensemble d’autorité de certification : chaîne CA complète utilisée pour signer le certificat du serveur TLS. Incluez tous les certificats intermédiaires et l’autorité de certification racine. N'incluez pas le certificat de la feuille ou tout autre certificat non utilisé pour signer le certificat du serveur TLS, car l'inclusion de toute autre chose entraînera l'échec. La limite de la chaîne est de neuf certificats au maximum.
- Certificat de serveur : la chaîne complète de certificats de serveur public au format PEM, en commençant par le certificat de serveur de la feuille, suivi du ou des certificats CA intermédiaires et de l'autorité de certification racine. Incluez uniquement les certificats qui forment la chaîne de signature réelle du certificat de la feuille.
- Clé privée : clé privée du certificat du serveur.
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
Pour résoudre les erreurs de validation de certificat TLS, consultez la section Erreurs de validation de certificat TLS.
Si vous choisissez de gérer vous-même les certificats, vous devez utiliser l'indicateur --use-istio-cert avec la commande de mise à jour des certificats. Cet indicateur permet de copier les clés secrètes existantes dans l'espace de noms uipath . Sachez que, lorsque vous utilisez l'indicateur --use-istio-cert , vous ne devez utiliser aucun autre indicateur de certificat, sinon la commande échouera.
Si vous utilisez un autre espace de noms à la place de uipath, vous devez le spécifier en le passant à l'indicateur--namespace <uipath> , où <uipath> représente l'espace de noms dans lequel Automation Suite est déployé.
Accéder au certificat TLS
Pour imprimer les fichiers de certificat, exécutez la commande suivante :
uipathctl config tls-certificates get
uipathctl config tls-certificates get
Gestion des certificats CA supplémentaires
Si vous souhaitez que le cluster fasse confiance à un logiciel externe, vous devrez peut-être fournir des certificats d'autorité de certification de confiance supplémentaires. Exemples : le certificat CA de serveur SQL, le certificat CA de serveur SMTP et le certificat CA de magasin d'objets externe compatible S3.
Vous devez fournir des certificats CA pour tout logiciel externe nécessitant une communication TLS sécurisée pendant l'installation. Cependant, si vous n'avez pas activé la communication TLS, vous pouvez la configurer après l'installation.
Pour afficher plus d'informations sur les certificats CA supplémentaires, exécutez la commande suivante :
uipathctl config additional-ca-certificates --help
uipathctl config additional-ca-certificates --help
Sortie :
***************************************************************************************
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
-f, --force override all user prompts to true
--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 "info")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default: 90 minutes) (default 1h30m0s)
--versions string optional path to versions file
Use "uipathctl config additional-ca-certificates [command] --help" for more information about a command.
***************************************************************************************
***************************************************************************************
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
-f, --force override all user prompts to true
--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 "info")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default: 90 minutes) (default 1h30m0s)
--versions string optional path to versions file
Use "uipathctl config additional-ca-certificates [command] --help" for more information about a command.
***************************************************************************************
Les sections suivantes décrivent les opérations que vous pouvez effectuer à l'aide de la commande uipathctl config additional-ca-certificates .
Mise à jour des certificats CA
Pour mettre à jour les certificats CA, procédez comme suit :
- Mettez à jour le fichier
input.jsonpour pointer vers le fichier avecadditional_ca_certsPour des détails, reportez-vous à Configuration du certificat. - Appliquez le manifeste :
Cette commande peut échouer en générant des erreurs telles que :
uipathctl manifest apply input.json --versions versions.jsonuipathctl manifest apply input.json --versions versions.jsonQuel que soit l'échec, passez à l'étape 3 pour redémarrer les déploiements et stabiliser l'environnement.Error: [failed to wait for application argocd/<app-name1>: timed out waiting for the condition, failed to wait for application argocd/<app-name2>: timed out waiting for the condition]]Error: [failed to wait for application argocd/<app-name1>: timed out waiting for the condition, failed to wait for application argocd/<app-name2>: timed out waiting for the condition]] - Redémarrez manuellement tous les déploiements et ensembles d'états dans l'espace de noms
uipath:kubectl rollout restart deployment -n <uipath> kubectl rollout restart sts -n <uipath>kubectl rollout restart deployment -n <uipath> kubectl rollout restart sts -n <uipath>
Pour ajouter les anciens certificats, vous devez utiliser la commande get de la section Accéder aux certificats CA et les ajouter dans le fichier de certificat CA .pem que vous devez fournir dans le champ additional_ca_certs .
Le fichier groupé de certificats CA doit être au format .pem valide et peut contenir plusieurs certificats.
Accéder aux certificats CA
Pour télécharger les certificats CA déjà configurés, exécutez la commande suivante :
uipathctl config additional-ca-certificates get --namespace <uipath>
uipathctl config additional-ca-certificates get --namespace <uipath>
Gestion des certificats de signature de jeton d'identité
Automation Suite propose deux méthodes pour gérer la rotation des certificats de signature de jeton d'identité : automatique et manuelle.
Pour afficher plus d'informations sur les certificats de signature de jeton d'identité, exécutez la commande suivante :
uipathctl config token-signing-certificates --help
uipathctl config token-signing-certificates --help
Sortie :
************************************************************************************
Manage token signing certificates
Usage:
uipathctl config token-signing-certificates [flags]
uipathctl config token-signing-certificates [command]
Available Commands:
automatic-key-management Manage key management
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
-f, --force override all user prompts to true
--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 "info")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default: 90 minutes) (default 1h30m0s)
--versions string optional path to versions file
Use "uipathctl config token-signing-certificates [command] --help" for more information about a command.
************************************************************************************
************************************************************************************
Manage token signing certificates
Usage:
uipathctl config token-signing-certificates [flags]
uipathctl config token-signing-certificates [command]
Available Commands:
automatic-key-management Manage key management
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
-f, --force override all user prompts to true
--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 "info")
-q, --quiet suppress all output except for errors and warnings
--timeout duration timeout of the command (default: 90 minutes) (default 1h30m0s)
--versions string optional path to versions file
Use "uipathctl config token-signing-certificates [command] --help" for more information about a command.
************************************************************************************
Vous pouvez utiliser une longueur de clé maximale de 4096 bits pour la signature des certificats. Comme meilleure pratique, nous vous recommandons fortement d'utiliser une longueur de clé d'au moins 512 bits (64 octets).
La section suivante fournit des détails sur les opérations que vous pouvez effectuer à l'aide de la commande uipathctl config token-signing-certificates .
Rotation automatique des certificats
La rotation automatique des certificats signifie qu’Automation Suite gère le cycle de vie des clés de signature. Cela inclut la rotation des clés tous les 90 jours, l'annonce de nouvelles clés 14 jours avant la rotation, la conservation des anciennes clés pendant 14 jours après la rotation, puis la suppression de celles-ci lorsque la période de 14 jours se termine.
Si vous effectuez la mise à niveau d'une ancienne version vers 2.2510, la rotation automatique des certificats est désactivée par défaut. Pour activer la gestion automatique des clés, exécutez la commande suivante:
uipathctl config token-signing-certificates automatic-key-management enable --namespace <uipath>
uipathctl config token-signing-certificates automatic-key-management enable --namespace <uipath>
L'activation de la rotation automatique des certificats peut entraîner un temps d'arrêt allant jusqu'à une heure.
La rotation automatique des certificats est activée par défaut pour les nouvelles installations d'Automation Suite. Pour désactiver la gestion automatique des clés, exécutez la commande suivante:
uipathctl config token-signing-certificates automatic-key-management disable --namespace <uipath>
uipathctl config token-signing-certificates automatic-key-management disable --namespace <uipath>
Si la fonctionnalité de gestion automatique est désactivée, les certificats de signature doivent être mis à jour et pivotés manuellement. Pour des détails sur la gestion manuelle des clés, reportez-vous à la documentation sur la mise à jour et la rotation manuelles du certificat.
Mise à jour manuelle du certificat
La commande suivante ne remplace pas le certificat de signature de jeton existant.
Assurez-vous que le certificat que vous fournissez est au format .pem . Le fichier server.crt doit contenir l'ensemble de la chaîne, comme illustré dans l'exemple suivant:
-----server cert-----
-----root ca chain-----
-----server cert-----
-----root ca chain-----
Pour télécharger le nouveau certificat afin de signer le jeton, exécutez la commande suivante :
uipathctl config token-signing-certificates update --namespace <uipath> --cert server.crt --key server.key
uipathctl config token-signing-certificates update --namespace <uipath> --cert server.crt --key server.key
Faire pivoter manuellement le certificat
Pour faire pivoter ou remplacer l'ancien certificat par le nouveau, exécutez la commande suivante :
uipathctl config token-signing-certificates rotate --namespace <uipath>
uipathctl config token-signing-certificates rotate --namespace <uipath>
Après la rotation, redémarrez les déploiements et les ensembles d'états en exécutant les commandes suivantes :
kubectl -n <uipath> rollout restart deploy
kubectl -n <uipath> rollout restart sts
kubectl -n <uipath> rollout restart deploy
kubectl -n <uipath> rollout restart sts
Accéder au certificat
Pour télécharger le certificat de signature de jeton actuel, exécutez la commande suivante :
uipathctl config token-signing-certificates get --namespace <uipath>
uipathctl config token-signing-certificates get --namespace <uipath>
Il devrait y avoir un délai d'environ 24 à 48 heures entre la mise à jour du certificat et sa rotation.
Nous avons besoin de ce délai pour continuer à prendre en charge l'authentification pour le jeton mis en cache signé par l'ancien certificat.
La rotation du certificat trop tôt avant l'expiration du jeton de cache peut entraîner des temps d'arrêt. Dans ce cas, vous devrez peut-être redémarrer tous vos robots.
- Génération d'une demande de signature de certificat (CSR) et d'une clé privée
- Gestion du certificat TLS
- Trouver les certificats TLS
- Mise à jour des certificats TLS
- Accéder au certificat TLS
- Gestion des certificats CA supplémentaires
- Mise à jour des certificats CA
- Accéder aux certificats CA
- Gestion des certificats de signature de jeton d'identité
- Rotation automatique des certificats
- Mise à jour manuelle du certificat
- Faire pivoter manuellement le certificat
- Accéder au certificat