CodeSign Secure Documentation
  • Overview
    • About CodeSign Secure
    • Getting Started
    • Documentation Guide
    • Portal Overview
    • Troubleshooting
      • FAQ
    • Glossary
  • Reference Guide
    • Header Bar
      • CodeSign Secure Documentation
      • Swagger API
      • Profile Section
    • Dashboard
      • Key Performance Indicators
      • Issued Certificates
      • Signatures Generated
      • HSM Health Check
    • Keys and Certificates
      • Key and Certificate Lifecycle
    • App Management
    • Signing Requests
      • Approval Workflows
    • Signing Tools
    • Reports
      • Signing Request Report
      • Audit Trail
      • Certificate Report
      • Client Report
    • Logs
    • System Setup
      • Identity Store
      • Backup
      • User
      • Roles and Permissions
      • Email
      • Signing Projects
      • SSL/TLS Management
      • Environment
      • Plugins
  • Setup & Architecture
    • Identity and Access Control
    • Architecture and Concepts
    • Installation
      • Windows
        • Installing the Server
        • Ports and Protocols
        • High Availability and Backup
        • Upgrades and Compatibility
    • Security
      • Security Hardening Checklist
      • Client Authentication
      • Designing Signing Policies
  • Release Notes
    • Releases for 2026
      • v3.2.1
    • Releases for 2025
      • v3.2.0
    • Releases for 2024
      • v3.1.0
  • API Reference
    • Getting Started
    • Authorizing Requests
    • Securing API Access
    • Request and Response Conventions
    • Endpoint Reference
      • Signing
      • Signing Requests
      • Certificates
      • Applications and Environments
      • User Management
      • Permissions
      • Email
      • System Setup
      • Reports
      • Dashboard
      • License
  • Integration Guides
    • Signing Capabilities
      • Supported Formats and Platforms
      • Timestamping
      • Windows Signing - SignTool
        • Signing
        • Macro Signing
      • Apple Signing
      • AppX & MSIX Signing
      • Visual Studio ClickOnce
      • Jar Signing
      • Sign HLK/HCK using CodeSign Secure
      • NuGet Signing
      • Mage Signing
      • Sign OVA/OVF using Encryption Consulting’s Utility Tool
      • Utility Tool for code signing
      • Container Signing
      • PKCS11 Wrapper
        • APK Signing
        • OpenSSL Signing
        • XML Signing
        • JSign Tool Signing
        • Jarsigner Signing
        • GPG2, Debian & RPM Signing
      • Reproducible Build
        • Automated Hash Validation
        • Reproducible Build Process Flow
        • Pipeline Script Components
        • Hash Validation
    • CI/CD Integration
      • GitHub Actions
      • Jenkins
      • GitLab
      • Azure DevOps
      • TeamCity
      • Bamboo
      • Securing CI/CD Credentials

Designing Signing Policies

Choose approval policies for each environment so that production signing is controlled without slowing down development or automation.

Policy options
PolicyWhat happens to a signing requestWho approves
Certificate OwnerWaits until the certificate owner approves or denies itThe owner of the certificate
QuorumWaits until the required number of quorum members approve itThe users set as quorum members
No ApprovalIs signed immediatelyNobody
  • Approvers for Certificate Owner and Quorum must hold the System Admin or Project Manager role, or both.

  • An environment that shows No Policy Setup behaves as No Approval.

  • Needs MFA adds a one-time code, sent by email, that the approver must enter before Approve and Deny appear.

Timers
TimerValueWhat it means
Request validity100 secondsThe request must be approved within 100 seconds of being submitted. Otherwise, it times out and the approval buttons disappear.
MFA validation15 minutesAn MFA validation stays valid for 15 minutes.
How approvals affect pipelines

When a pipeline signs with a certificate whose environment needs approval, the signing job waits for the decision. If nobody approves within 100 seconds, the request times out and the signing command fails, which fails the job.

  • For fully automated signing, use a certificate in an environment with No Approval, and control risk through team mapping, dedicated API users and the Audit Trail.

  • For release signing that needs approval, make sure an approver is available when the release job runs, and tell them when it starts.

  • Use separate certificates for automated and approved signing, so that each keeps its own policy.

Recommended environments
EnvironmentPolicyNeeds MFATypical use
DevNo ApprovalOffDeveloper and test builds, usually with self-signed certificates
CINo ApprovalOffAutomated builds that must never wait for a person
StagingCertificate OwnerOptionalRelease candidates reviewed by the application owner
ProductionQuorumOnReleases that customers install
EV / High assuranceQuorum, with a higher minimumOnEV certificates, drivers and other high-impact artifacts
Setting up a quorum
  • Choose Quorum as the Policy Type, then select the eligible approvers and the number of approvals required.

  • Choose more eligible approvers than the minimum, so one absence doesn’t block a release.

  • Only users with the System Admin or Project Manager role can be quorum members.

Policy checklist
  • Every production certificate is in an environment with Quorum or Certificate Owner, and MFA is on.

  • Automated pipelines use their own certificates in No Approval environments.

  • Approvers know the 100-second window and watch for signing request notifications.

  • The people who request production signatures are not the only people who can approve them.

  • You review environment assignments whenever you create or import a certificate.

On this Page:
Support Privacy Policy Terms of Service

Copyright Encryption Consulting LLC. All rights reserved.