The ProvideIdentities Method allows a Device to request that it be authenticated so it can have access to the network. It is called by a Device using PullManagement to provide the Registrar with its DeviceIdentity Certificates. The Registrar follows the process described in 7 to select and validate one of the Certificates.
This Method shall be called from an authenticated SecureChannel.
Signature
ProvideIdentities (
[in]0:ByteString [] identities,
[in]0:ByteString [] issuers,
[in]0:EncodedTicket [] tickets,
[out]0:ByteString selectedIdentity,
[out]2:BaseTicketType matchingTicket,
[out]0:NodeId applicationId,
[out]2:ManagerDescriptionsoftwareUpdateManager
);
Argument |
Description |
identities |
The DER encoded DeviceIdentity Certificates issued to the Device. The first Certificates shall be the IDevID Certificates. |
issuers |
The DER encoded Certificates needed to verify the DeviceIdentity Certificates. Certificates that cannot be verified are ignored. |
tickets |
The signed Tickets stored on the Device. This argument may be null. If the Registrar returns a Bad_TicketRequired error this Method needs to called again with any available Tickets. Tickets that cannot be verified are ignored. |
selectedIdentity |
The DER encoded DeviceIdentity Certificate that the DCA needs to use to complete the registration process. |
matchingTicket |
The Ticket describing the Device which the Registrar accepted. |
applicationId |
The identifier assigned by the CertificateManager to the Device. This identifier is needed to request Certificates from the CertificateManager. |
softwareUpdateManager |
The Endpoint for the SoftwareUpdateManager which the caller contacts to complete the onboarding process. Set to NULL if a software update is not required or not supported. |
Method Result Codes (defined in Call Service)
Result Code |
Description |
Bad_CertificateInvalid |
None of the identity Certificates can be verified. |
Bad_TicketRequired |
The Device has to provide a Ticket before it can be accepted. |
Bad_NotFound |
No valid Ticket was found. |
Table 18 specifies the AddressSpace representation for the ProvideIdentities Method.
Table 18 – ProvideIdentities Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
2:ProvideIdentities |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
HasProperty |
Variable |
0:InputArguments |
0:Argument [] |
0:PropertyType |
Mandatory |
HasProperty |
Variable |
0:OutputArguments |
0:Argument [] |
0:PropertyType |
Mandatory |