#[non_exhaustive]pub struct CompleteArgs {
pub nonce: String,
pub server_id: Uuid,
pub signature: String,
pub spki: Option<String>,
}Expand description
Request to complete device enrollment by presenting a signed challenge obtained from the start-enrollment endpoint.
JSON schema
{
"description": "Request to complete device enrollment by presenting a signed\nchallenge obtained from the start-enrollment endpoint.",
"type": "object",
"required": [
"nonce",
"server_id",
"signature"
],
"properties": {
"nonce": {
"description": "Base64-standard-encoded challenge nonce returned when enrollment\nwas started.",
"type": "string"
},
"server_id": {
"description": "ID of the machine being enrolled. Must match the value used when\nstarting enrollment.",
"type": "string",
"format": "uuid"
},
"signature": {
"description": "Base64-standard-encoded ASN.1 DER ECDSA (P-256, SHA-256) signature\nover the challenge transcript, proving possession of the device's\nprivate key. The transcript is the byte concatenation of: the raw\nchallenge nonce, the raw 16 bytes of the machine ID, the DER SPKI of\nthe device public key, and — only when channel binding was flagged\nas required — the connection's TLS exported keying material.",
"type": "string"
},
"spki": {
"description": "Base64-standard-encoded DER SPKI of the device's public key. Only\nrequired when enrolling over a transport with no client\ncertificate to read the key from; must match the key used when\nenrollment was started.",
"type": [
"string",
"null"
]
}
}
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.nonce: StringBase64-standard-encoded challenge nonce returned when enrollment was started.
server_id: UuidID of the machine being enrolled. Must match the value used when starting enrollment.
signature: StringBase64-standard-encoded ASN.1 DER ECDSA (P-256, SHA-256) signature over the challenge transcript, proving possession of the device’s private key. The transcript is the byte concatenation of: the raw challenge nonce, the raw 16 bytes of the machine ID, the DER SPKI of the device public key, and — only when channel binding was flagged as required — the connection’s TLS exported keying material.
spki: Option<String>Base64-standard-encoded DER SPKI of the device’s public key. Only required when enrolling over a transport with no client certificate to read the key from; must match the key used when enrollment was started.
Implementations§
Source§impl CompleteArgs
impl CompleteArgs
Sourcepub fn builder() -> CompleteArgsBuilder
pub fn builder() -> CompleteArgsBuilder
Create an instance of CompleteArgs using the builder syntax
Trait Implementations§
Source§impl Clone for CompleteArgs
impl Clone for CompleteArgs
Source§fn clone(&self) -> CompleteArgs
fn clone(&self) -> CompleteArgs
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more