Compartilhar via


Criando uma solicitação de certificado de aplicativo do Tempo de Execução do Windows usando JavaScript

[ Este artigo destina-se aos desenvolvedores do Windows 8.x e do Windows Phone 8.x que escrevem aplicativos do Windows Runtime. Se você estiver desenvolvendo para o Windows 10, consulte documentação mais recente]

Para criar uma solicitação de certificado, você deve criar primeiro um objeto CertificateRequestProperties e definir as propriedades que o seu certificado deve ter. Por padrão, o construtor define as propriedades a seguir.

Propriedade Valor padrão

Subject

Cadeia de caracteres vazia

KeyAlgorithmName

KeyAlgorithmNames.RSA

KeySize

KeySize.RSA2048

FriendlyName

Cadeia de caracteres vazia

HashAlgorithmName

HashAlgorithmNames.Sha256

Exportable

ExportOption.NotExportable

KeyUsages

EnrollKeyUsage.Signing

KeyProtectionLevel

KeyProtectionLevel.NoConsent

KeyStorageProviderName

KeystorageProviderNames.SoftwareKeyStorageProvider

Este é o "Provedor de Armazenamento de Chaves de Software da Microsoft"

 

Para criar a solicitação, chame o método CreateRequestAsync. Isso é mostrado no exemplo a seguir.


function createCertificateRequest() {

    // Declare a certificate request message.
    var myMessage = "";

    // Note - The default constructor for a CertificateRequestProperties object
    // sets the following default property values:
    //
    //      subject: "" -- empty string
    //      keyAlgorithm: KeyAlgorithm.RSA
    //      keySize: KeySizes.RSA2048  -- 2048 bits
    //      friendlyName: "" -- empty string
    //      hashAlgorithm: HashAlgorithms.SHA256
    //      exportable: ExportOptions.NotExportable
    //      keyUsage: EnrollKeyUsages.Signing 
    //      keyProtectionLevel: KeyProtectionLevel.NoConsent
    //      keyStorageProvider: KeystorageProviders.SoftwareKsp -- "Microsoft Software Key Storage Provider"

    try {

        // Create a default CertificateRequestProperties object.
        var myRequestProperties = new Windows.Security.Cryptography.Certificates.CertificateRequestProperties();

        // Override the default subject and display names.
        myRequestProperties.subject = "Toby";
        myRequestProperties.friendlyName = "Toby's Cert";

        // Call a custom function to convert the request properties to a string.
        myMessage = "Create certificate request:" + convertCertificateRequestPropertiestoString(myRequestProperties);

        // Create a certificate request from the CertificateRequestProperties object.
        myRequest = Windows.Security.Cryptography.Certificates.CertificateEnrollmentManager.createRequest(myRequestProperties);
        myMessage = myMessage + "\n\nCertificate request creation succeeded.\nEncoded request String:\n " + myRequest;

        // Display the request string in your program (here called SDKSample)
        sdkSample.displayStatus(myMessage);
    }
    catch (e) {
        myMessage = myMessage + "\n\nCertificate request creation failed.";
        myMessage = myMessage + convertErrortoString(e);
        sdkSample.displayError(myMessage);
    }
}

Tópicos relacionados

Enviando uma solicitação de certificado e instalando a resposta do certificado

Trabalhando com certificados