- 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
- Disaster Recovery : configurations active/passive
- Génération du fichier de configuration à l'aide d'un assistant
- exemple 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
- 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
Configuration d'une clé secrète Kubernetes en tant que magasin de clés secrètes
Fractionnez la configuration input.json à partir des informations d'identification stockées dans Kubernetes Secrets pour une sécurité améliorée.
Par défaut, les informations d'identification sont définies dans input.json. Pour améliorer la sécurité, vous pouvez diviser les données en deux parties :
input.jsonpour stocker uniquement les valeurs de configuration.- Clé secrète Kubernetes pour stocker les informations d'identification.
Vous ne pouvez pas stocker les chemins de certificat ou les informations d'identification liées au certificat dans le magasin secret.
Prérequis
Si l'espace de noms n'existe pas déjà, créez-le avant de déployer les produits UiPath, comme suit :
kubectl create namespace <uipath-namespace>
kubectl create namespace <uipath-namespace>
La clé secrète doit être créée dans l'espace de noms où les produits uipath doivent être déployés.
Configuring input.json
Pour uipathctl afin d'identifier que les informations d'identification sont stockées dans une clé secrète Kubernetes, ajoutez la section suivante à input.json:
"secret_store": {
"enabled": true,
"secret_name": "uipath-credentials" // Secret deployed in uipath ns with all the credentials configured.
}
"secret_store": {
"enabled": true,
"secret_name": "uipath-credentials" // Secret deployed in uipath ns with all the credentials configured.
}
Selon la façon dont vous souhaitez gérer les informations d'identification, votre input.json peut contenir à la fois la configuration et les informations d'identification, ou bien la configuration uniquement et les informations d'identification sont stockées dans la clé secrète, comme illustré dans le diagramme suivant :
- L’exemple suivant montre une valeur
input.jsonpar défaut avec la configuration et les informations d’identification :{ "admin_username": "admin", "admin_password": "password", "apps": { "enabled": true, "external_object_storage": { "enabled": true, "account_key": "secretkey", "account_name": "as-storage-account", ... } }, "external_object_storage": { "enabled": true, "account_key": "secretkey", ... }, "fabric": { "redis": { "hostname": "redis-cache.mycompany.com", "password": "redispassword", "port": 6380, "tls": true } }, "fqdn": "automationsuite.mycompany.com", "orchestrator": { "enabled": true, "sql_connection_str": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;", "external_object_storage": { "enabled": true, "account_key": "secretkey", "account_name": "os-storage-account", ... }, ... }, "registries": { "docker": { "url": "registry.uipath.com", "username": "username", "password": "password" }, "helm": { "url": "registry.uipath.com", "username": "username", "password": "password" } }, "snapshot": { "enabled": true, "external_object_storage": { "enabled": true, "client_id": "1fbd7d95-5f8c-4f70-90a6-fdf20310d10e", "client_secret": "client-secret", ... } }, "storage_class": "managed-premium", "storage_class_single_replica": "azurefile-csi", "sql_connection_string_template": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;", "sql_connection_string_template_jdbc": "jdbc:sqlserver://mssql.mycompany.com:1443;database=DB_NAME_PLACEHOLDER;user=sqladmin;password={sqlpassword};encrypt=true;trustServerCertificate=true;loginTimeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_odbc": "SERVER=mssql.mycompany.com,1443;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=sqladmin;PWD={sqlpassword};Encrypt=yes;TrustServerCertificate=yes;Connection Timeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://sqladmin:sqlpassword@mssql.mycompany.com:1443/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server", "postgresql_connection_string_template_sqlalchemy_pyodbc": "postgresql+psycopg2://sa:<password>@135.235.240.165:5432/DB_NAME_PLACEHOLDER" }{ "admin_username": "admin", "admin_password": "password", "apps": { "enabled": true, "external_object_storage": { "enabled": true, "account_key": "secretkey", "account_name": "as-storage-account", ... } }, "external_object_storage": { "enabled": true, "account_key": "secretkey", ... }, "fabric": { "redis": { "hostname": "redis-cache.mycompany.com", "password": "redispassword", "port": 6380, "tls": true } }, "fqdn": "automationsuite.mycompany.com", "orchestrator": { "enabled": true, "sql_connection_str": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;", "external_object_storage": { "enabled": true, "account_key": "secretkey", "account_name": "os-storage-account", ... }, ... }, "registries": { "docker": { "url": "registry.uipath.com", "username": "username", "password": "password" }, "helm": { "url": "registry.uipath.com", "username": "username", "password": "password" } }, "snapshot": { "enabled": true, "external_object_storage": { "enabled": true, "client_id": "1fbd7d95-5f8c-4f70-90a6-fdf20310d10e", "client_secret": "client-secret", ... } }, "storage_class": "managed-premium", "storage_class_single_replica": "azurefile-csi", "sql_connection_string_template": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;", "sql_connection_string_template_jdbc": "jdbc:sqlserver://mssql.mycompany.com:1443;database=DB_NAME_PLACEHOLDER;user=sqladmin;password={sqlpassword};encrypt=true;trustServerCertificate=true;loginTimeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_odbc": "SERVER=mssql.mycompany.com,1443;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=sqladmin;PWD={sqlpassword};Encrypt=yes;TrustServerCertificate=yes;Connection Timeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://sqladmin:sqlpassword@mssql.mycompany.com:1443/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server", "postgresql_connection_string_template_sqlalchemy_pyodbc": "postgresql+psycopg2://sa:<password>@135.235.240.165:5432/DB_NAME_PLACEHOLDER" } - Les exemples suivants illustrent un fichier
input.jsonavec une configuration uniquement (secret_storeconfiguré) et les informations d'identification stockées séparément danscredentials.json:- Exemple de fichier
input.jsonavec la configuration etsecret_storeconfiguré :{ "apps": { "enabled": true, "external_object_storage": { "enabled": true, ... } }, "external_object_storage": { "enabled": true, ... }, "fabric": { "redis": { "hostname": "redis-cache.mycompany.com", "port": 6380, "tls": true } }, "fqdn": "automationsuite.mycompany.com", "orchestrator": { "enabled": true, "external_object_storage": { "enabled": true, ... }, ... }, "registries": { "docker": { "url": "registry.uipath.com" }, "helm": { "url": "registry.uipath.com" } }, "secret_store": { "enabled": true, "secret_name": "uipath-credentials", "provider_configs": [] }, "snapshot": { "enabled": true, "external_object_storage": { "enabled": true, ... } } }{ "apps": { "enabled": true, "external_object_storage": { "enabled": true, ... } }, "external_object_storage": { "enabled": true, ... }, "fabric": { "redis": { "hostname": "redis-cache.mycompany.com", "port": 6380, "tls": true } }, "fqdn": "automationsuite.mycompany.com", "orchestrator": { "enabled": true, "external_object_storage": { "enabled": true, ... }, ... }, "registries": { "docker": { "url": "registry.uipath.com" }, "helm": { "url": "registry.uipath.com" } }, "secret_store": { "enabled": true, "secret_name": "uipath-credentials", "provider_configs": [] }, "snapshot": { "enabled": true, "external_object_storage": { "enabled": true, ... } } } - Exemple de fichier
credentials.jsonavec les informations d’identification :{ "admin_password": "password", "admin_username": "admin", "apps": { "external_object_storage": { "account_key": "secretkey" } }, "external_object_storage": { "account_key": "secretkey" }, "fabric": { "redis": { "password": "redispassword" } }, "orchestrator": { "external_object_storage": { "account_key": "secretkey" }, "sql_connection_str": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;" }, "postgresql_connection_string_template_sqlalchemy_pyodbc": "postgresql+psycopg2://sa:<password>@135.235.240.165:5432/DB_NAME_PLACEHOLDER", "registries": { "docker": { "password": "password", "username": "username" }, "helm": { "password": "password", "username": "username" } }, "snapshot": { "external_object_storage": { "client_secret": "client-secret", "client_id": "1fbd7d95-5f8c-4f70-90a6-fdf20310d10e" } }, "sql_connection_string_template": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;", "sql_connection_string_template_jdbc": "jdbc:sqlserver://mssql.mycompany.com:1443;database=DB_NAME_PLACEHOLDER;user=sqladmin;password={sqlpassword};encrypt=true;trustServerCertificate=true;loginTimeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_odbc": "SERVER=mssql.mycompany.com,1443;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=sqladmin;PWD={sqlpassword};Encrypt=yes;TrustServerCertificate=yes;Connection Timeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://sqladmin:sqlpassword@mssql.mycompany.com:1443/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server" }%{ "admin_password": "password", "admin_username": "admin", "apps": { "external_object_storage": { "account_key": "secretkey" } }, "external_object_storage": { "account_key": "secretkey" }, "fabric": { "redis": { "password": "redispassword" } }, "orchestrator": { "external_object_storage": { "account_key": "secretkey" }, "sql_connection_str": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;" }, "postgresql_connection_string_template_sqlalchemy_pyodbc": "postgresql+psycopg2://sa:<password>@135.235.240.165:5432/DB_NAME_PLACEHOLDER", "registries": { "docker": { "password": "password", "username": "username" }, "helm": { "password": "password", "username": "username" } }, "snapshot": { "external_object_storage": { "client_secret": "client-secret", "client_id": "1fbd7d95-5f8c-4f70-90a6-fdf20310d10e" } }, "sql_connection_string_template": "Server=tcp:mssql.mycompany.com,1443;Initial Catalog=DB_NAME_PLACEHOLDER;Persist Security Info=False;User Id=sqladmin;Password='sqlpassword';MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;Max Pool Size=100;", "sql_connection_string_template_jdbc": "jdbc:sqlserver://mssql.mycompany.com:1443;database=DB_NAME_PLACEHOLDER;user=sqladmin;password={sqlpassword};encrypt=true;trustServerCertificate=true;loginTimeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_odbc": "SERVER=mssql.mycompany.com,1443;DATABASE=DB_NAME_PLACEHOLDER;DRIVER={ODBC Driver 17 for SQL Server};UID=sqladmin;PWD={sqlpassword};Encrypt=yes;TrustServerCertificate=yes;Connection Timeout=30;hostNameInCertificate=mssql.mycompany.com", "sql_connection_string_template_sqlalchemy_pyodbc": "mssql+pyodbc://sqladmin:sqlpassword@mssql.mycompany.com:1443/DB_NAME_PLACEHOLDER?driver=ODBC+Driver+17+for+SQL+Server" }%
- Exemple de fichier
Stockage des informations d'identification dans une clé secrète Kubernetes
Les informations d'identification sont stockées dans le cadre d'une clé secrète Kubernetes, comme le montre l'exemple suivant :
apiVersion: v1
kind: Secret
metadata:
name: uipath-credentials
namespace: uipath
type: Opaque
data:
config.json: ewogICJhZG1pbl9wYXNzd29yZCI6ICJwYXNzd29yZCIsCiAgImFkbWluX3VzZXJuYW1lIjogImFkbWluIiwKICAiYXBwcyI6IHsKICAgICJleHRlcm5hbF9vYmplY3Rfc3RvcmFnZSI6IHsKCiAgICAgICJhY2NvdW50X2tleSI6ICJzZWNyZXRrZXkiCiAgICB9CiAgfSwKICAiZXh0ZXJuYWxfb2JqZWN0X3N0b3JhZ2UiOiB7CiAgICAiYWNjb3VudF9rZXkiOiAic2VjcmV0a2V5IgogIH0sCiAgImZhYnJpYyI6IHsKICAgICJyZWRpcyI6IHsKICAgICAgInBhc3N3b3JkIjogInJlZGlzcGFzc3dvcmQiCiAgICB9CiAgfSwKICAib3JjaGVzdHJhdG9yIjogewogICAgImV4dGVybmFsX29iamVjdF9zdG9yYWdlIjogewogICAgICAiYWNjb3VudF9rZXkiOiAic2VjcmV0a2V5IgogICAgfSwKICAgICJzcWxfY29ubmVjdGlvbl9zdHIiOiAiU2VydmVyPXRjcDptc3NxbC5teWNvbXBhbnkuY29tLDE0NDM7SW5pdGlhbCBDYXRhbG9nPURCX05BTUVfUExBQ0VIT0xERVI7UGVyc2lzdCBTZWN1cml0eSBJbmZvPUZhbHNlO1VzZXIgSWQ9c3FsYWRtaW47UGFzc3dvcmQ9J3NxbHBhc3N3b3JkJztNdWx0aXBsZUFjdGl2ZVJlc3VsdFNldHM9RmFsc2U7RW5jcnlwdD1UcnVlO1RydXN0U2VydmVyQ2VydGlmaWNhdGU9VHJ1ZTtDb25uZWN0aW9uIFRpbWVvdXQ9MzA7TWF4IFBvb2wgU2l6ZT0xMDA7IgogIH0sCiAgInBvc3RncmVzcWxfY29ubmVjdGlvbl9zdHJpbmdfdGVtcGxhdGVfc3FsYWxjaGVteV9weW9kYmMiOiAicG9zdGdyZXNxbCtwc3ljb3BnMjovL3NhOiZsdDtwYXNzd29yZCZndDtAMTM1LjIzNS4yNDAuMTY1OjU0MzIvREJfTkFNRV9QTEFDRUhPTERFUiIsCiAgICAicmVnaXN0cmllcyI6IHsKICAgICJkb2NrZXIiOiB7CiAgICAgICJwYXNzd29yZCI6ICJwYXNzd29yZCIsCiAgICAgICJ1c2VybmFtZSI6ICJ1c2VybmFtZSIKICAgIH0sCiAgICAiaGVsbSI6IHsKICAgICAgInBhc3N3b3JkIjogInBhc3N3b3JkIiwKICAgICAgInVzZXJuYW1lIjogInVzZXJuYW1lIgogICAgfQogIH0sCiAgInNuYXBzaG90IjogewogICAgImV4dGVybmFsX29iamVjdF9zdG9yYWdlIjogewogICAgICAiY2xpZW50X3NlY3JldCI6ICJjbGllbnQtc2VjcmV0IiwKICAgICAgImNsaWVudF9pZCI6ICIxZmJkN2Q5NS01ZjhjLTRmNzAtOTBhNi1mZGYyMDMxMGQxMGUiCiAgICB9CiAgfSwKICAic3FsX2Nvbm5lY3Rpb25fc3RyaW5nX3RlbXBsYXRlIjogIlNlcnZlcj10Y3A6bXNzcWwubXljb21wYW55LmNvbSwxNDQzO0luaXRpYWwgQ2F0YWxvZz1EQl9OQU1FX1BMQUNFSE9MREVSO1BlcnNpc3QgU2VjdXJpdHkgSW5mbz1GYWxzZTtVc2VyIElkPXNxbGFkbWluO1Bhc3N3b3JkPSdzcWxwYXNzd29yZCc7TXVsdGlwbGVBY3RpdmVSZXN1bHRTZXRzPUZhbHNlO0VuY3J5cHQ9VHJ1ZTtUcnVzdFNlcnZlckNlcnRpZmljYXRlPVRydWU7Q29ubmVjdGlvbiBUaW1lb3V0PTMwO01heCBQb29sIFNpemU9MTAwOyIsCiAgInNxbF9jb25uZWN0aW9uX3N0cmluZ190ZW1wbGF0ZV9qZGJjIjogImpkYmM6c3Fsc2VydmVyOi8vbXNzcWwubXljb21wYW55LmNvbToxNDQzO2RhdGFiYXNlPURCX05BTUVfUExBQ0VIT0xERVI7dXNlcj1zcWxhZG1pbjtwYXNzd29yZD17c3FscGFzc3dvcmR9O2VuY3J5cHQ9dHJ1ZTt0cnVzdFNlcnZlckNlcnRpZmljYXRlPXRydWU7bG9naW5UaW1lb3V0PTMwO2hvc3ROYW1lSW5DZXJ0aWZpY2F0ZT1tc3NxbC5teWNvbXBhbnkuY29tIiwKICAic3FsX2Nvbm5lY3Rpb25fc3RyaW5nX3RlbXBsYXRlX29kYmMiOiAiU0VSVkVSPW1zc3FsLm15Y29tcGFueS5jb20sMTQ0MztEQVRBQkFTRT1EQl9OQU1FX1BMQUNFSE9MREVSO0RSSVZFUj17T0RCQyBEcml2ZXIgMTcgZm9yIFNRTCBTZXJ2ZXJ9O1VJRD1zcWxhZG1pbjtQV0Q9e3NxbHBhc3N3b3JkfTtFbmNyeXB0PXllcztUcnVzdFNlcnZlckNlcnRpZmljYXRlPXllcztDb25uZWN0aW9uIFRpbWVvdXQ9MzA7aG9zdE5hbWVJbkNlcnRpZmljYXRlPW1zc3FsLm15Y29tcGFueS5jb20iLAogICJzcWxfY29ubmVjdGlvbl9zdHJpbmdfdGVtcGxhdGVfc3FsYWxjaGVteV9weW9kYmMiOiAibXNzcWwrcHlvZGJjOi8vc3FsYWRtaW46c3FscGFzc3dvcmRAbXNzcWwubXljb21wYW55LmNvbToxNDQzL0RCX05BTUVfUExBQ0VIT0xERVI/ZHJpdmVyPU9EQkMrRHJpdmVyKzE3K2ZvcitTUUwrU2VydmVyIgp9
apiVersion: v1
kind: Secret
metadata:
name: uipath-credentials
namespace: uipath
type: Opaque
data:
config.json: ewogICJhZG1pbl9wYXNzd29yZCI6ICJwYXNzd29yZCIsCiAgImFkbWluX3VzZXJuYW1lIjogImFkbWluIiwKICAiYXBwcyI6IHsKICAgICJleHRlcm5hbF9vYmplY3Rfc3RvcmFnZSI6IHsKCiAgICAgICJhY2NvdW50X2tleSI6ICJzZWNyZXRrZXkiCiAgICB9CiAgfSwKICAiZXh0ZXJuYWxfb2JqZWN0X3N0b3JhZ2UiOiB7CiAgICAiYWNjb3VudF9rZXkiOiAic2VjcmV0a2V5IgogIH0sCiAgImZhYnJpYyI6IHsKICAgICJyZWRpcyI6IHsKICAgICAgInBhc3N3b3JkIjogInJlZGlzcGFzc3dvcmQiCiAgICB9CiAgfSwKICAib3JjaGVzdHJhdG9yIjogewogICAgImV4dGVybmFsX29iamVjdF9zdG9yYWdlIjogewogICAgICAiYWNjb3VudF9rZXkiOiAic2VjcmV0a2V5IgogICAgfSwKICAgICJzcWxfY29ubmVjdGlvbl9zdHIiOiAiU2VydmVyPXRjcDptc3NxbC5teWNvbXBhbnkuY29tLDE0NDM7SW5pdGlhbCBDYXRhbG9nPURCX05BTUVfUExBQ0VIT0xERVI7UGVyc2lzdCBTZWN1cml0eSBJbmZvPUZhbHNlO1VzZXIgSWQ9c3FsYWRtaW47UGFzc3dvcmQ9J3NxbHBhc3N3b3JkJztNdWx0aXBsZUFjdGl2ZVJlc3VsdFNldHM9RmFsc2U7RW5jcnlwdD1UcnVlO1RydXN0U2VydmVyQ2VydGlmaWNhdGU9VHJ1ZTtDb25uZWN0aW9uIFRpbWVvdXQ9MzA7TWF4IFBvb2wgU2l6ZT0xMDA7IgogIH0sCiAgInBvc3RncmVzcWxfY29ubmVjdGlvbl9zdHJpbmdfdGVtcGxhdGVfc3FsYWxjaGVteV9weW9kYmMiOiAicG9zdGdyZXNxbCtwc3ljb3BnMjovL3NhOiZsdDtwYXNzd29yZCZndDtAMTM1LjIzNS4yNDAuMTY1OjU0MzIvREJfTkFNRV9QTEFDRUhPTERFUiIsCiAgICAicmVnaXN0cmllcyI6IHsKICAgICJkb2NrZXIiOiB7CiAgICAgICJwYXNzd29yZCI6ICJwYXNzd29yZCIsCiAgICAgICJ1c2VybmFtZSI6ICJ1c2VybmFtZSIKICAgIH0sCiAgICAiaGVsbSI6IHsKICAgICAgInBhc3N3b3JkIjogInBhc3N3b3JkIiwKICAgICAgInVzZXJuYW1lIjogInVzZXJuYW1lIgogICAgfQogIH0sCiAgInNuYXBzaG90IjogewogICAgImV4dGVybmFsX29iamVjdF9zdG9yYWdlIjogewogICAgICAiY2xpZW50X3NlY3JldCI6ICJjbGllbnQtc2VjcmV0IiwKICAgICAgImNsaWVudF9pZCI6ICIxZmJkN2Q5NS01ZjhjLTRmNzAtOTBhNi1mZGYyMDMxMGQxMGUiCiAgICB9CiAgfSwKICAic3FsX2Nvbm5lY3Rpb25fc3RyaW5nX3RlbXBsYXRlIjogIlNlcnZlcj10Y3A6bXNzcWwubXljb21wYW55LmNvbSwxNDQzO0luaXRpYWwgQ2F0YWxvZz1EQl9OQU1FX1BMQUNFSE9MREVSO1BlcnNpc3QgU2VjdXJpdHkgSW5mbz1GYWxzZTtVc2VyIElkPXNxbGFkbWluO1Bhc3N3b3JkPSdzcWxwYXNzd29yZCc7TXVsdGlwbGVBY3RpdmVSZXN1bHRTZXRzPUZhbHNlO0VuY3J5cHQ9VHJ1ZTtUcnVzdFNlcnZlckNlcnRpZmljYXRlPVRydWU7Q29ubmVjdGlvbiBUaW1lb3V0PTMwO01heCBQb29sIFNpemU9MTAwOyIsCiAgInNxbF9jb25uZWN0aW9uX3N0cmluZ190ZW1wbGF0ZV9qZGJjIjogImpkYmM6c3Fsc2VydmVyOi8vbXNzcWwubXljb21wYW55LmNvbToxNDQzO2RhdGFiYXNlPURCX05BTUVfUExBQ0VIT0xERVI7dXNlcj1zcWxhZG1pbjtwYXNzd29yZD17c3FscGFzc3dvcmR9O2VuY3J5cHQ9dHJ1ZTt0cnVzdFNlcnZlckNlcnRpZmljYXRlPXRydWU7bG9naW5UaW1lb3V0PTMwO2hvc3ROYW1lSW5DZXJ0aWZpY2F0ZT1tc3NxbC5teWNvbXBhbnkuY29tIiwKICAic3FsX2Nvbm5lY3Rpb25fc3RyaW5nX3RlbXBsYXRlX29kYmMiOiAiU0VSVkVSPW1zc3FsLm15Y29tcGFueS5jb20sMTQ0MztEQVRBQkFTRT1EQl9OQU1FX1BMQUNFSE9MREVSO0RSSVZFUj17T0RCQyBEcml2ZXIgMTcgZm9yIFNRTCBTZXJ2ZXJ9O1VJRD1zcWxhZG1pbjtQV0Q9e3NxbHBhc3N3b3JkfTtFbmNyeXB0PXllcztUcnVzdFNlcnZlckNlcnRpZmljYXRlPXllcztDb25uZWN0aW9uIFRpbWVvdXQ9MzA7aG9zdE5hbWVJbkNlcnRpZmljYXRlPW1zc3FsLm15Y29tcGFueS5jb20iLAogICJzcWxfY29ubmVjdGlvbl9zdHJpbmdfdGVtcGxhdGVfc3FsYWxjaGVteV9weW9kYmMiOiAibXNzcWwrcHlvZGJjOi8vc3FsYWRtaW46c3FscGFzc3dvcmRAbXNzcWwubXljb21wYW55LmNvbToxNDQzL0RCX05BTUVfUExBQ0VIT0xERVI/ZHJpdmVyPU9EQkMrRHJpdmVyKzE3K2ZvcitTUUwrU2VydmVyIgp9
Création du secret Kubernetes
Le secret Kubernetes peut être créé à l'aide du fichier credentials.json via la commande suivante :
kubectl create secret generic <secret-name> \
--from-file=config.json=<path-to-credentials.json>/credentials.json \
--namespace=<uipath-namespace>
kubectl create secret generic <secret-name> \
--from-file=config.json=<path-to-credentials.json>/credentials.json \
--namespace=<uipath-namespace>