Assinar uma política de CI usando a Assinatura Confiável

Este artigo mostra como assinar novas políticas de Integridade de Código (CI) usando o serviço de Assinatura Confiável.

Pré-requisitos

Para concluir as etapas deste artigo, você precisa de:

  • Uma conta de Assinatura Confiável, validação de identidade e perfil de certificado.
  • Uma atribuição individual ou em grupo da função de Signatário de Perfil de Certificado de Assinatura Confiável.
  • Azure PowerShell no Windows instalado.
  • Módulo Az.CodeSigning baixado.

Assinar uma política de CI

  1. Abra o PowerShell 7.

  2. Opcionalmente, você pode criar um arquivo metadata.json semelhante a este exemplo: (o valor do URI do "Endpoint" precisa ser um URI que se alinha à região em que você criou sua conta de Assinatura Confiável e o perfil de certificado no momento da configuração desses recursos.)

    {
    "Endpoint":"https://xxx.codesigning.azure.net/",
    "CodeSigningAccountName":"<Trusted Signing Account Name>",
    "CertificateProfileName":"<Certificate Profile Name>"
    }
    
  3. Obtenha o certificado raiz que você quer adicionar ao repositório de confiança:

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

    Se estiver usando um arquivo metadata.json, execute esse outro comando:

    Get-AzCodeSigningRootCert -MetadataFilePath C:\temp\metadata.json https://xxx.codesigning.azure.net/ -Destination c:\temp\root.cer 
    
  4. Para obter o Uso Avançado de Chave (EKU) a ser inserido na sua política:

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

    Se estiver usando um arquivo metadata.json, execute esse outro comando:

    Get-AzCodeSigningCustomerEku -MetadataFilePath C:\temp\metadata.json 
    
  5. Para assinar sua política, execute o 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 
    

    Se estiver usando um arquivo metadata.json, execute esse outro comando:

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

Criar e implantar uma política de CI

Para obter as etapas para criar e implantar sua política de CI, confira os artigos a seguir: