X509Certificates Class

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

public class X509Certificates

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 a String, from a .pem files. This class will encapsulate both in a single X509Attestation. The following JSON is an example of the result of this class.

{
      "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"
      }
  }

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
           }
      }
  }

Constructor Summary

Constructor Description
X509Certificates(X509Certificates x509Certificates)

Constructor [COPY]

Method Summary

Modifier and Type Method and Description
X509CertificateWithInfo getPrimary()

Deprecated

as of provisioning-service-client version 1.3.3, please use getPrimaryFinal()

Getter for the primary.

final X509CertificateWithInfo getPrimaryFinal()

Getter for the primary.

X509CertificateWithInfo getSecondary()

Deprecated

as of provisioning-service-client version 1.3.3, please use getSecondaryFinal()

Getter for the secondary.

final X509CertificateWithInfo getSecondaryFinal()

Getter for the secondary.

Methods inherited from java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

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 original X509Certificates to copy.

Method Details

getPrimary


public X509CertificateWithInfo getPrimary()

Deprecated

as of provisioning-service-client version 1.3.3, please use getPrimaryFinal()

Getter for the primary.

Returns:

the X509CertificateWithInfo with the stored primary. It cannot be null.

getPrimaryFinal

public final X509CertificateWithInfo getPrimaryFinal()

Getter for the primary.

Returns:

the X509CertificateWithInfo with the stored primary. It cannot be null.

getSecondary


public X509CertificateWithInfo getSecondary()

Deprecated

as of provisioning-service-client version 1.3.3, please use getSecondaryFinal()

Getter for the secondary.

Returns:

the X509CertificateWithInfo with the stored secondary. It can be null.

getSecondaryFinal

public final X509CertificateWithInfo getSecondaryFinal()

Getter for the secondary.

Returns:

the X509CertificateWithInfo with the stored secondary. It can be null.

Applies to