Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def create_device_with_x509(self, device_id, primary_thumbprint, secondary_thumbprint, status):
"""Creates a device identity on IoTHub using X509 authentication.
:param str device_id: The name (deviceId) of the device.
:param str primary_thumbprint: Primary X509 thumbprint.
:param str secondary_thumbprint: Secondary X509 thumbprint.
:param str status: Initital state of the created device (enabled or disabled).
:raises: HttpOperationError if the HTTP response status is not in [200].
:returns: Device object containing the created device.
"""
x509_thumbprint = X509Thumbprint(
primary_thumbprint=primary_thumbprint, secondary_thumbprint=secondary_thumbprint
)
kwargs = {
"device_id": device_id,
"status": status,
"authentication": AuthenticationMechanism(
type="selfSigned", x509_thumbprint=x509_thumbprint
),
}
device = Device(**kwargs)
return self.protocol.service.create_or_update_device(device_id, device)
):
"""Updates a module identity for a device on IoTHub using X509 authentication.
:param str device_id: The name (deviceId) of the device.
:param str module_id: The name (moduleID) of the module.
:param str managed_by: The name of the manager device (edge).
:param str etag: The etag (if_match) value to use for the update operation.
:param str primary_thumbprint: Primary X509 thumbprint.
:param str secondary_thumbprint: Secondary X509 thumbprint.
:param str status: Initital state of the created device (enabled or disabled).
:raises: HttpOperationError if the HTTP response status is not in [200].
:returns: The updated Module object containing the created module.
"""
x509_thumbprint = X509Thumbprint(
primary_thumbprint=primary_thumbprint, secondary_thumbprint=secondary_thumbprint
)
kwargs = {
"device_id": device_id,
"module_id": module_id,
"managed_by": managed_by,
"status": status,
"etag": etag,
"authentication": AuthenticationMechanism(
type="selfSigned", x509_thumbprint=x509_thumbprint
),
}
module = Module(**kwargs)
return self.protocol.service.create_or_update_module(device_id, module_id, module)
self, device_id, module_id, managed_by, primary_thumbprint, secondary_thumbprint, status
):
"""Creates a module identity for a device on IoTHub using X509 authentication.
:param str device_id: The name (deviceId) of the device.
:param str module_id: The name (moduleID) of the module.
:param str managed_by: The name of the manager device (edge).
:param str primary_thumbprint: Primary X509 thumbprint.
:param str secondary_thumbprint: Secondary X509 thumbprint.
:param str status: Initital state of the created device (enabled or disabled).
:raises: HttpOperationError if the HTTP response status is not in [200].
:returns: Module object containing the created module.
"""
x509_thumbprint = X509Thumbprint(
primary_thumbprint=primary_thumbprint, secondary_thumbprint=secondary_thumbprint
)
kwargs = {
"device_id": device_id,
"module_id": module_id,
"managed_by": managed_by,
"status": status,
"authentication": AuthenticationMechanism(
type="selfSigned", x509_thumbprint=x509_thumbprint
),
}
module = Module(**kwargs)
return self.protocol.service.create_or_update_module(device_id, module_id, module)
def update_device_with_x509(
self, device_id, etag, primary_thumbprint, secondary_thumbprint, status
):
"""Updates a device identity on IoTHub using X509 authentication.
:param str device_id: The name (deviceId) of the device.
:param str etag: The etag (if_match) value to use for the update operation.
:param str primary_thumbprint: Primary X509 thumbprint.
:param str secondary_thumbprint: Secondary X509 thumbprint.
:param str status: Initital state of the created device (enabled or disabled).
:raises: HttpOperationError if the HTTP response status is not in [200].
:returns: The updated Device object containing the created device.
"""
x509_thumbprint = X509Thumbprint(
primary_thumbprint=primary_thumbprint, secondary_thumbprint=secondary_thumbprint
)
kwargs = {
"device_id": device_id,
"status": status,
"etag": etag,
"authentication": AuthenticationMechanism(
type="selfSigned", x509_thumbprint=x509_thumbprint
),
}
device = Device(**kwargs)
return self.protocol.service.create_or_update_device(device_id, device)