- Visão geral
- UiPath CLI
- Sobre o UiPath CLI
- Baixando o UiPath CLI
- Matriz de compatibilidade
- Executando o UiPath CLI
- Gerenciando feeds do NuGet
- Suporte do Test Manager
- Empacotando projetos em um pacote
- Assinatura de pacotes de projetos
- Análise de um projeto
- Implantação de um pacote no Orchestrator
- Executando um trabalho dentro do Orchestrator
- Teste de um pacote ou execução de um conjunto de testes
- Teste de vários pacotes
- Implantação de ativos no Orchestrator
- Exclusão de ativos do Orchestrator
- Executando tarefas usando a configuração JSON
- Restaurando dependências de automação
- Solução de problemas do UiPath CLI
- Extensão do Azure DevOps
- Plug-in do Jenkins

Guia do usuário de integrações de CI/CD
Como assinar pacotes de projetos
Como assinar pacotes de projetos
A UiPath CLI 25.10 introduz a capacidade de assinar digitalmente pacotes de projeto de automação durante a operação do pacote. A assinatura de pacotes fornece verificação de autenticidade e garante que os pacotes não tenham sido alterados após a criação, aumentando a segurança em seu pipeline CI/CD.
Quando você assina um pacote de projeto, a CLI:
- Cria o arquivo de pacote
.nupkg - Aplica uma assinatura digital usando seu certificado
- Opcionalmente, carimbo de data/hora a assinatura para validade de longo prazo
Tipos de certificado suportados
A CLI é compatível com o formato de certificado PKCS#12 (.pfx).
O certificado deve:
- Incluir uma chave privada para assinatura
- Ser válido (não expirado)
- Ter recursos de assinatura de código
Parâmetros
O comando package pack suporta os seguintes parâmetros de assinatura:
| Parâmetro | Description | Required |
|---|---|---|
--certificatePath | Caminho para o arquivo do certificado (.pfx) | Sim (se estiver assinando) |
--certificatePassword | Senha do arquivo do certificado | Não |
--timestampServerUrl | URL do servidor de carimbo de data/hora RFC 3161 | Não |
Exemplos de uso
Assinatura básica com certificado
# 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"
Como assinar com o servidor de carimbo de data/hora
Adicionar um carimbo de data/hora garante que a assinatura permaneça válida mesmo após a expiração do certificado.
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"
Como assinar com a versão e o tipo de saída
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"
Assinatura com certificado sem senha
uipcli package pack "./MyRobot/project.json" \
-o "./packages" \
--certificatePath "./certificates/codesign.pfx"
uipcli package pack "./MyRobot/project.json" \
-o "./packages" \
--certificatePath "./certificates/codesign.pfx"
Como assinar com as dependências da biblioteca do 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"
Servidores de carimbo de data/hora recomendados
Usar um servidor de carimbo de data/hora é recomendado para garantir que as assinaturas permaneçam válidas após a expiração do certificado:
http://timestamp.digicert.com- DigiCerthttp://timestamp.comodoca.com- Sectigo (Comodo)http://timestamp.globalsign.com— GlobalSignhttp://timestamp.sectigo.com– Sectigo
Melhores práticas
Armazenamento seguro do certificado
- Nunca confirmar certificados para o controle de versões
- Use soluções de armazenamento seguras:
- Azure Key Vault
- AWS Secrets Manager
- HashiCorp Vault
- Segredos do GitHub /Arquivos seguros do Azure DevOps
- Gerenciamento de segredos da plataforma de CI/CD
Variáveis de Ambiente
- Usar variáveis de ambiente ou gerenciamento de segredos para senhas
- Evite embutir informações confidenciais em scripts
Uso do carimbo de data/hora
- Sempre use um servidor de carimbo de data/hora em ambientes de produção
- Os carimbos de data/hora garantem a validade da assinatura além da expiração do certificado
Gerenciamento de certificados
- Use os certificados de assinatura de código dedicados
- Rotacionar certificados antes da expiração
- Mantenha os backups dos certificados com segurança