- 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
- Disaster Recovery : configurations active/passive
- Génération du fichier de configuration à l'aide d'un assistant
- Exemple AKS input.json
- Exemple d'EKS input.json
- Configuration d'une clé secrète Kubernetes en tant que magasin de clés secrètes
- Configuration d'Azure Key Vault en tant que magasin de clés secrètes
- Configuration de HashiCorp Vault en tant que magasin secret
- Configuration d'AWS Secrets Manager en tant que magasin de clés secrètes
- Installation et configuration du service Mesh
- Installer et configurer l'outil GitOps
- Installation de l'opérateur de clés secrètes externes dans Kubernetes
- 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
- Échec de l’enregistrement d’AI Center après la mise à niveau vers la version 2023.10 ou une version ultérieure
- Volumes Insights créés dans deux zones différentes après la migration
- La mise à niveau échoue en raison du remplacement des tailles de PVC Insights
- Les composants de sauvegarde Velero restent après la mise à niveau sur AKS depuis Automation Suite 2024.10.x
- La configuration de sauvegarde ne fonctionne pas en raison d’un échec de connexion à Azure Government
- Pods dans l'espace de noms uipath bloqués lors de l'activation des rejets de nœuds personnalisés
- Impossible de lancer Automation Hub et Apps avec la configuration proxy
- La sauvegarde de Velero échoue avec l'erreur FailedValidation
- Résolution des problèmes de clés secrètes externes
- 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
- Erreurs de validation du certificat TLS
- Fluentd n’exporte pas les journaux dans les environnements IPv6
- Studio Desktop ne peut pas charger les connecteurs et activités Integration Service
- 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
Configuration de HashiCorp Vault en tant que magasin secret
Configurez HashiCorp Vault en tant que magasin de secrets pour Automation Suite sur EKS/AKS.
Vous pouvez configurer HashiCorp Vault en tant que magasin secret à l'aide de l'une des méthodes d'authentification suivantes :
- Authentification Kubernetes
- Authentification AppRole
HashiCorp Vault fournit un moteur de clés secrètes KV (Key-Value) pour le stockage des clés secrètes.
Par défaut, toutes les données sensibles sont définies dans input.json. Vous pouvez séparer ces données en deux parties :
input.json: contient uniquement les données de configuration.- HashiCorp Vault : enregistre les informations d'identification en toute sécurité.
Vous ne pouvez pas stocker les chemins de certificat ou les informations d'identification liées au certificat dans le magasin secret.
Toutes les informations d'identification référencées dans input.json doivent exister en tant que clés secrètes dans HashiCorp Vault avant de configurer le magasin de clés secrètes. S'il manque des informations d'identification référencées, l'installation échoue.
Utilisation de l'authentification Kubernetes
Le pod ESO s'authentifie auprès de HashiCorp Vault à l'aide de son jeton de compte de service Kubernetes. Vault authentifie le jeton par rapport au serveur d'API Kubernetes et émet un jeton Vault avec les stratégies appropriées.
Prérequis
- HashiCorp Vault avec la méthode d'authentification Kubernetes activée
- Rôle du coffre configuré pour autoriser le compte de service ESO. Par défaut, le nom du compte de service est
external-secrets. - Connectivité réseau du cluster Kubernetes vers le serveur Vault
- (Facultatif) Un Kubernetes ServiceAccount personnalisé, si le compte de service par défaut ESO n'est pas utilisé
Configuring input.json
Pour configurer HashiCorp Vault en tant que magasin secret à l'aide de Kubernetes Auth, ajoutez la section suivante à input.json:
{
"secret_store": {
"enabled": true,
"provider_configs": [
{
"name": "hc-vault",
"type": "hashicorp",
"auth_type": "kubernetes",
"hashicorp_kv": {
"server": "https://vault.example.com:8200",
"path": "secret",
"version": "v2",
"role": "uipath-role",
"mount_path": "kubernetes"
}
}
]
}
}
{
"secret_store": {
"enabled": true,
"provider_configs": [
{
"name": "hc-vault",
"type": "hashicorp",
"auth_type": "kubernetes",
"hashicorp_kv": {
"server": "https://vault.example.com:8200",
"path": "secret",
"version": "v2",
"role": "uipath-role",
"mount_path": "kubernetes"
}
}
]
}
}
Pour utiliser un CompteService personnalisé, ajoutez le champ service_account_name comme suit :
{
"secret_store": {
"enabled": true,
"provider_configs": [
{
"name": "hc-vault",
"type": "hashicorp",
"auth_type": "kubernetes",
"service_account_name": "vault-auth-sa",
"hashicorp_kv": {
"server": "http://vault.example.com:8200",
"path": "secret",
"version": "v2",
"role": "uipath-role",
"mount_path": "kubernetes"
}
}
]
}
}
{
"secret_store": {
"enabled": true,
"provider_configs": [
{
"name": "hc-vault",
"type": "hashicorp",
"auth_type": "kubernetes",
"service_account_name": "vault-auth-sa",
"hashicorp_kv": {
"server": "http://vault.example.com:8200",
"path": "secret",
"version": "v2",
"role": "uipath-role",
"mount_path": "kubernetes"
}
}
]
}
}
Si service_account_name est configuré, le ServiceAccount doit être pré-créé par le client. uipathctl valide son existante mais ne la crée pas.
Utiliser l’authentification AppRole
L'authentification AppRole utilise la méthode d'authentification AppRole de Vault, où ESO s'authentifie avec un ID de rôle et un ID de secret stockés dans une clé secrète Kubernetes. Cette méthode convient aux systèmes automatisés et ne nécessite pas que l'authentification Kubernetes soit activée dans Vault.
Prérequis
- HashiCorp Vault avec la méthode d'authentification AppRole activée
- ID de rôle AppRole et ID de secret générés
- Clé secrète Kubernetes pré-créée avec les informations d’identification AppRole
Configuring input.json
Pour configurer HashiCorp Vault en tant que magasin secret à l'aide de l'authentification d'AppRole, procédez comme suit :
-
Créez la clé secrète Kubernetes qui stocke les informations d’identification AppRole :
kubectl create secret generic vault-approle-creds \ --namespace uipath \ --from-literal=role-id=<your-role-id> \ --from-literal=secret-id=<your-secret-id>kubectl create secret generic vault-approle-creds \ --namespace uipath \ --from-literal=role-id=<your-role-id> \ --from-literal=secret-id=<your-secret-id>Le secret doit contenir les clés suivantes :
role-id: ID de rôle AppRole du coffresecret-id- ID du secret de l’application AppRole du coffre
-
Ajoutez la section suivante à
input.json:{ "secret_store": { "enabled": true, "provider_configs": [ { "name": "hc-vault", "type": "hashicorp", "auth_type": "approle", "credentials_secret_name": "vault-approle-creds", "hashicorp_kv": { "server": "https://vault.example.com:8200", "path": "secret", "version": "v2", "mount_path": "approle" } } ] } }{ "secret_store": { "enabled": true, "provider_configs": [ { "name": "hc-vault", "type": "hashicorp", "auth_type": "approle", "credentials_secret_name": "vault-approle-creds", "hashicorp_kv": { "server": "https://vault.example.com:8200", "path": "secret", "version": "v2", "mount_path": "approle" } } ] } }
Champs de configuration
Le tableau suivant décrit les champs de configuration disponibles.
| Champ | Requis | Default | Description |
|---|---|---|---|
hashicorp_kv.server | Oui (Yes) | - | URL du serveur Vault |
hashicorp_kv.path | Non (No) | secret | Chemin de montage du moteur de clés secrètes KV |
hashicorp_kv.version | Non (No) | v2 | Version du moteur KV : v1 ou v2 |
hashicorp_kv.role | Non (No) | uipath-role | Nom du rôle du coffre pour l’authentification |
hashicorp_kv.mount_path | Non (No) | kubernetes ou approle (Basé sur auth_type) | Chemin de montage de la méthode d’authentification |
auth_type | Oui (Yes) | - | Doit être kubernetes ou approle |
credentials_secret_name | Oui (AppRole uniquement) | - | Secret Kubernetes contenant les clés role-id et secret-id |
service_account_name | Non (No) | external-secrets | Kubernetes ServiceAccount pour Kubernetes Auth. Si un CompteService personnalisé est spécifié, vous devez le pré-créer dans le cluster. |
Gestion des certificats CA TLS
Lorsque le serveur Vault utilise HTTPS avec un certificat CA privé, configurez additional_ca_certs dans input.json avec le chemin d'accès au fichier de certificat CA :
additional_ca_certs: /path/to/client_cert
additional_ca_certs: /path/to/client_cert
Aucune configuration supplémentaire n'est nécessaire dans le bloc hashicorp_kv .
Référencement des clés secrètes dans input.json
Pour référencer des informations d'identification stockées dans HashiCorp Vault ), utilisez le format suivant en input.json:
vault/<vault-name>/<secret-path>?key=<key-name>
vault/<vault-name>/<secret-path>?key=<key-name>
- Champ spécifique :
vault/hc-vault/s3-credentials?key=access_key - Version épinglée :
vault/hc-vault/platform-sql?version=2
L'exemple suivant montre comment référencer une clé secrète HashiCorp Vault dans input.json:
admin_password: vault/hc-vault/admin-password-10832372?key=value
admin_password: vault/hc-vault/admin-password-10832372?key=value