UiPath Documentation
cicd-integrations
2025.10
true
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Guide de l'utilisateur des intégrations CI/CD

Dernière mise à jour 22 mai 2026

Signature des paquets du projet

Signature des paquets du projet

UiPath CLI 25.10 offre la possibilité de signer numériquement les packages de projets d'automatisation lors de l'opération de pack. La signature des packages fournit une vérification d'authenticité et garantit que les packages n'ont pas été modifiés après leur création, améliorant la sécurité dans votre pipeline CI/CD.

Lorsque vous signez un package de projet, la CLI :

  1. Crée le fichier de paquet .nupkg
  2. Applique une signature numérique à l’aide de votre certificat
  3. Horodatage éventuellement horodatage de la signature pour une validité à long terme

Types de certificat pris en charge

La CLI prend en charge le format de certificat PKCS#12 (.pfx).

Important :

Le certificat doit :

  • Inclure une clé privée pour la signature
  • être valide (n'a pas expiré)
  • Disposer de capacités de signature de code

Paramètres

La commande package pack prend en charge les paramètres de signature suivants :

ParamètreDescriptionRequis
--certificatePathChemin d'accès au fichier de certificat (.pfx)Oui (si la signature)
--certificatePasswordMot de passe du fichier de certificatNon (No)
--timestampServerUrlURL du serveur d’horodatage RFC 3161Non (No)

Exemples d'utilisation

Signature de base avec certificat
# Windows
uipcli package pack "C:\Projects\MyRobot\project.json" `
  -o "C:\Packages" `
  --certificatePath "C:\Certificates\codesign.pfx" `
  --certificatePassword "YourPassword123"

# Linux/macOS
uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123"
# Windows
uipcli package pack "C:\Projects\MyRobot\project.json" `
  -o "C:\Packages" `
  --certificatePath "C:\Certificates\codesign.pfx" `
  --certificatePassword "YourPassword123"

# Linux/macOS
uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123"

Signature avec le serveur d'horodatage

L'ajout d'un horodatage garantit que la signature reste valide, même après l'expiration du certificat.

uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123" \
  --timestampServerUrl "http://timestamp.digicert.com"
uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123" \
  --timestampServerUrl "http://timestamp.digicert.com"

Signature avec la version et le type de sortie

uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  -v "1.0.5" \
  --outputType "Process" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123" \
  --timestampServerUrl "http://timestamp.digicert.com"
uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  -v "1.0.5" \
  --outputType "Process" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123" \
  --timestampServerUrl "http://timestamp.digicert.com"

Signature avec un certificat sans mot de passe

uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --certificatePath "./certificates/codesign.pfx"
uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --certificatePath "./certificates/codesign.pfx"

Signature avec les dépendances de la bibliothèque Orchestrator

uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --libraryOrchestratorUrl "https://cloud.uipath.com/" \
  --libraryOrchestratorTenant "Default" \
  -A "myorg" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S '********' \
  --libraryOrchestratorApplicationScope "OR.Folders OR.Execution" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123" \
  --timestampServerUrl "http://timestamp.digicert.com"
uipcli package pack "./MyRobot/project.json" \
  -o "./packages" \
  --libraryOrchestratorUrl "https://cloud.uipath.com/" \
  --libraryOrchestratorTenant "Default" \
  -A "myorg" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S '********' \
  --libraryOrchestratorApplicationScope "OR.Folders OR.Execution" \
  --certificatePath "./certificates/codesign.pfx" \
  --certificatePassword "YourPassword123" \
  --timestampServerUrl "http://timestamp.digicert.com"

Il est recommandé d'utiliser un serveur d'horodatage pour s'assurer que les signatures restent valides après l'expiration du certificat :

  • http://timestamp.digicert.com - DigiCert
  • http://timestamp.comodoca.com - Secrete (ComDo)
  • http://timestamp.globalsign.com - GlobalSign
  • http://timestamp.sectigo.com - Secrets

Meilleures pratiques

Stockage sécurisé du certificat

  • Ne jamais valider les certificats vers le contrôle de version
  • Utilisez des solutions de stockage sécurisées :
    • Azure Key Vault
    • AWS Secrets Manager
    • HashiCorp Vault
    • Clés secrètes GitHub/Fichiers sécurisés Azure DevOps
    • Gestion des clés secrètes de la plate-forme CI/CD

Variables de l'environnement

  • Utiliser les variables d’environnement ou la gestion des clés secrètes pour les mots de passe
  • Évitez le codage en dur d’informations sensibles dans les scripts

Utilisation de l’horodatage

  • Utilisez toujours un serveur d’horodatage dans les environnements de production
  • Les horodatages garantissent la validité de la signature après l'expiration du certificat

Gestion des certificats

  • Utiliser des certificats de signature de code dédiés
  • Rotation des certificats avant l'expiration
  • Gérez les sauvegardes de certificats en toute sécurité

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour