Compartir a través de


Firmar una directiva de CI mediante la firma de confianza

En este artículo se muestra cómo firmar nuevas directivas de integridad de código (CI) mediante el servicio de firma de confianza.

Requisitos previos

Para completar los pasos de este artículo, necesitará lo siguiente:

  • Una cuenta de firma de confianza, validación de identidades y perfil de certificado.
  • Asignación individual o de grupo del rol Firmante de perfil de certificado de firma de confianza.
  • Azure PowerShell en Windows instalado.
  • Módulo Az.CodeSigning descargado.

Firmar una directiva de CI

  1. Abra PowerShell 7.

  2. Opcionalmente, puede crear un archivo metadata.json similar al de este ejemplo: (el valor del URI de "Endpoint" debe ser un identificador URI que se alinee con la región donde ha creado la cuenta de firma de confianza y el perfil de certificado al configurar estos recursos).

    {
    "Endpoint":"https://xxx.codesigning.azure.net/",
    "CodeSigningAccountName":"<Trusted Signing Account Name>",
    "CertificateProfileName":"<Certificate Profile Name>"
    }
    
  3. Obtenga el certificado raíz que desea agregar al almacén de confianza:

    Get-AzCodeSigningRootCert -AccountName TestAccount -ProfileName TestCertProfile -EndpointUrl https://xxx.codesigning.azure.net/ -Destination c:\temp\root.cer
    

    Si usa un archivo metadata.json, ejecute este comando en su lugar:

    Get-AzCodeSigningRootCert -MetadataFilePath C:\temp\metadata.json https://xxx.codesigning.azure.net/ -Destination c:\temp\root.cer 
    
  4. Para obtener el uso extendido de claves (EKU) que se va a insertar en la directiva:

    Get-AzCodeSigningCustomerEku -AccountName TestAccount -ProfileName TestCertProfile -EndpointUrl https://xxx.codesigning.azure.net/ 
    

    Si usa un archivo metadata.json, ejecute este comando en su lugar:

    Get-AzCodeSigningCustomerEku -MetadataFilePath C:\temp\metadata.json 
    
  5. Para firmar la directiva, ejecute el comando invoke:

    Invoke-AzCodeSigningCIPolicySigning -accountName TestAccount -profileName TestCertProfile -endpointurl "https://xxx.codesigning.azure.net/" -Path C:\Temp\defaultpolicy.bin -Destination C:\Temp\defaultpolicy_signed.bin -TimeStamperUrl: http://timestamp.acs.microsoft.com 
    

    Si usa un archivo metadata.json, ejecute este comando en su lugar:

    Invoke-AzCodeSigningCIPolicySigning -MetadataFilePath C:\temp\metadata.json -Path C:\Temp\defaultpolicy.bin -Destination C:\Temp\defaultpolicy_signed.bin -TimeStamperUrl: http://timestamp.acs.microsoft.com 
    

Creación e implementación de una directiva de CI

Para conocer los pasos para crear e implementar la directiva de CI, vea estos artículos: