X509Certificates Class

  • java.lang.Object
    • java.io.Serializable
      • Serializable
        • com.microsoft.azure.sdk.iot.provisioning.service.configs.X509Certificates

public class X509Certificates extends Serializable

Representation of a single Device Provisioning Service X509 Primary and Secondary Certificate.

this class creates a representation of an X509 certificate. It can receive primary and secondary certificate, but only the primary is mandatory.

Users must provide the certificate as aString 

</code> , from a <b>.pem</b> files. This class will encapsulate both in a single <xref uid="com.microsoft.azure.sdk.iot.provisioning.service.configs.X509Attestation" data-throw-if-not-resolved="false" data-raw-source="X509Attestation"></xref>. The following JSON is an example of the result of this class. <pre><code>{

    "primary": {

        "certificate": "-----BEGIN CERTIFICATE-----\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "-----END CERTIFICATE-----\n"

    },

    "secondary": {

        "certificate": "-----BEGIN CERTIFICATE-----\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" +

                       "-----END CERTIFICATE-----\n"

    }

}

</code></pre></p>

After send an X509 certificate with success, the provisioning service will return the X509CertificateInfo for both primary and secondary certificate. User can get these info from this class, and once again, only the primary info is mandatory. The following JSON is an example what info the provisioning service will return for X509.

{
    "primary": {

        "info": {

             "subjectName": "CN=ROOT_00000000-0000-0000-0000-000000000000, OU=Azure IoT, O=MSFT, C=US",

             "sha1Thumbprint": "0000000000000000000000000000000000",

             "sha256Thumbprint": "validEnrollmentGroupId",

             "issuerName": "CN=ROOT_00000000-0000-0000-0000-000000000000, OU=Azure IoT, O=MSFT, C=US",

             "notBeforeUtc": "2017-11-14T12:34:18Z",

             "notAfterUtc": "2017-11-20T12:34:18Z",

             "serialNumber": "000000000000000000",

             "version": 3

         }

    },

    "secondary": {

        "info": {

             "subjectName": "CN=ROOT_00000000-0000-0000-0000-000000000000, OU=Azure IoT, O=MSFT, C=US",

             "sha1Thumbprint": "0000000000000000000000000000000000",

             "sha256Thumbprint": "validEnrollmentGroupId",

             "issuerName": "CN=ROOT_00000000-0000-0000-0000-000000000000, OU=Azure IoT, O=MSFT, C=US",

             "notBeforeUtc": "2017-11-14T12:34:18Z",

             "notAfterUtc": "2017-11-20T12:34:18Z",

             "serialNumber": "000000000000000000",

             "version": 3

         }

    }

}

</code></pre></p>

Constructor Summary

Constructor Description
X509Certificates(X509Certificates x509Certificates)

Constructor [COPY]

Creates a new instance of the x509Certificates copping the content of the provided one.

Inherited Members

Constructor Details

X509Certificates

public X509Certificates(X509Certificates x509Certificates)

Constructor [COPY]

Creates a new instance of the x509Certificates copping the content of the provided one.

Parameters:

x509Certificates -

the originalX509Certificates 

</code> to copy. </p>

Throws:

IllegalArgumentException - if the provided x509Certificates is null or if its primary certificate is null.

Applies to