Amster

RegisterThing

Realm Operations

Resource path:

/realm-config/authentication/authenticationtrees/nodes/IotRegistrationNode

Resource version: 1.0

create

Usage

am> create RegisterThing --realm Realm --id id --body body

Parameters

--id

The unique identifier for the resource.

--body

The resource in JSON format, described by the following JSON schema:

{
  "type" : "object",
  "properties" : {
    "claimToAttributeMapping" : {
      "title" : "Claim to Attribute Mapping",
      "description" : "Map the verified claims to the thing's attributes. The key is the name of the claim in the JWT. The value is the name of the attribute in the data store.",
      "propertyOrder" : 40,
      "patternProperties" : {
        ".*" : {
          "type" : "string"
        }
      },
      "type" : "object",
      "exampleValue" : ""
    },
    "allowAttributeOverwrite" : {
      "title" : "Overwrite Attributes",
      "description" : "Allow existing identity attributes to be overwritten when new claims are provided for the thing.",
      "propertyOrder" : 50,
      "type" : "boolean",
      "exampleValue" : ""
    },
    "verifySubject" : {
      "title" : "Verify Certificate Subject",
      "description" : "Verify that the subject provided in the JWT is the same as either the X.509 certificate subject CN or UID. Only applies when \"Proof of Possession & Certificate\" JWT Registration Method is selected.",
      "propertyOrder" : 10,
      "type" : "boolean",
      "exampleValue" : ""
    },
    "jwtRegistrationMethod" : {
      "title" : "JWT Registration Method",
      "description" : "Choose the required JWT registration method.</br><p>Proof of Possession & Certificate: Register using a Proof of Possession JWT that includes an X.509 certificate for providing trust. A challenge nonce will be presented in the callback that must be included in the signed JWT.</p><p>Proof of Possession & Software Statement: Register using a Proof of Possession JWT and a Software Statement for providing trust. A challenge nonce will be presented in the callback that must be included in the signed Proof of Possession JWT. The claims in the Software Statement will take precedence over the claims in the Proof of Possession JWT.</p><p>Proof of Possession: Register using a Proof of Possession JWT without using a trusted third party. A challenge nonce will be presented in the callback that must be included in the signed JWT.</p><p>Software Statement: Register using a Software Statement without doing proof of possession. If this registration method is chosen then the resultant session token will not include a proof of possession restriction.</p>",
      "propertyOrder" : 5,
      "type" : "string",
      "exampleValue" : ""
    },
    "defaultAttributeValues" : {
      "title" : "Default Attribute Values",
      "description" : "Provide default values for the thing's attributes. The key is the name of the attribute in the data store. The value is the value of the attribute.",
      "propertyOrder" : 35,
      "patternProperties" : {
        ".*" : {
          "type" : "string"
        }
      },
      "type" : "object",
      "exampleValue" : ""
    },
    "createIdentity" : {
      "title" : "Create Identity",
      "description" : "Create a new identity for the thing if one does not exist already.",
      "propertyOrder" : 20,
      "type" : "boolean",
      "exampleValue" : ""
    },
    "allowKeyRotation" : {
      "title" : "Rotate Confirmation Key",
      "description" : "Allow multiple confirmation keys to be registered for a thing.",
      "propertyOrder" : 30,
      "type" : "boolean",
      "exampleValue" : ""
    }
  },
  "required" : [ "verifySubject", "claimToAttributeMapping", "allowKeyRotation", "allowAttributeOverwrite", "jwtRegistrationMethod", "createIdentity", "defaultAttributeValues" ]
}

delete

Usage

am> delete RegisterThing --realm Realm --id id

Parameters

--id

The unique identifier for the resource.

getAllTypes

Obtain the collection of all secondary configuration types related to the resource.

Usage

am> action RegisterThing --realm Realm --actionName getAllTypes

getCreatableTypes

Obtain the collection of secondary configuration types that have yet to be added to the resource.

Usage

am> action RegisterThing --realm Realm --actionName getCreatableTypes

listOutcomes

List the available outcomes for the node type.

Usage

am> action RegisterThing --realm Realm --body body --actionName listOutcomes

Parameters

--body

The resource in JSON format, described by the following JSON schema:

{
  "type" : "object",
  "title" : "Some configuration of the node. This does not need to be complete against the configuration schema."
}

nextdescendents

Obtain the collection of secondary configuration instances that have been added to the resource.

Usage

am> action RegisterThing --realm Realm --actionName nextdescendents

query

Get the full list of instances of this collection. This query only supports _queryFilter=true filter.

Usage

am> query RegisterThing --realm Realm --filter filter

Parameters

--filter

A CREST formatted query filter, where "true" will query all.

read

Usage

am> read RegisterThing --realm Realm --id id

Parameters

--id

The unique identifier for the resource.

update

Usage

am> update RegisterThing --realm Realm --id id --body body

Parameters

--id

The unique identifier for the resource.

--body

The resource in JSON format, described by the following JSON schema:

{
  "type" : "object",
  "properties" : {
    "claimToAttributeMapping" : {
      "title" : "Claim to Attribute Mapping",
      "description" : "Map the verified claims to the thing's attributes. The key is the name of the claim in the JWT. The value is the name of the attribute in the data store.",
      "propertyOrder" : 40,
      "patternProperties" : {
        ".*" : {
          "type" : "string"
        }
      },
      "type" : "object",
      "exampleValue" : ""
    },
    "allowAttributeOverwrite" : {
      "title" : "Overwrite Attributes",
      "description" : "Allow existing identity attributes to be overwritten when new claims are provided for the thing.",
      "propertyOrder" : 50,
      "type" : "boolean",
      "exampleValue" : ""
    },
    "verifySubject" : {
      "title" : "Verify Certificate Subject",
      "description" : "Verify that the subject provided in the JWT is the same as either the X.509 certificate subject CN or UID. Only applies when \"Proof of Possession & Certificate\" JWT Registration Method is selected.",
      "propertyOrder" : 10,
      "type" : "boolean",
      "exampleValue" : ""
    },
    "jwtRegistrationMethod" : {
      "title" : "JWT Registration Method",
      "description" : "Choose the required JWT registration method.</br><p>Proof of Possession & Certificate: Register using a Proof of Possession JWT that includes an X.509 certificate for providing trust. A challenge nonce will be presented in the callback that must be included in the signed JWT.</p><p>Proof of Possession & Software Statement: Register using a Proof of Possession JWT and a Software Statement for providing trust. A challenge nonce will be presented in the callback that must be included in the signed Proof of Possession JWT. The claims in the Software Statement will take precedence over the claims in the Proof of Possession JWT.</p><p>Proof of Possession: Register using a Proof of Possession JWT without using a trusted third party. A challenge nonce will be presented in the callback that must be included in the signed JWT.</p><p>Software Statement: Register using a Software Statement without doing proof of possession. If this registration method is chosen then the resultant session token will not include a proof of possession restriction.</p>",
      "propertyOrder" : 5,
      "type" : "string",
      "exampleValue" : ""
    },
    "defaultAttributeValues" : {
      "title" : "Default Attribute Values",
      "description" : "Provide default values for the thing's attributes. The key is the name of the attribute in the data store. The value is the value of the attribute.",
      "propertyOrder" : 35,
      "patternProperties" : {
        ".*" : {
          "type" : "string"
        }
      },
      "type" : "object",
      "exampleValue" : ""
    },
    "createIdentity" : {
      "title" : "Create Identity",
      "description" : "Create a new identity for the thing if one does not exist already.",
      "propertyOrder" : 20,
      "type" : "boolean",
      "exampleValue" : ""
    },
    "allowKeyRotation" : {
      "title" : "Rotate Confirmation Key",
      "description" : "Allow multiple confirmation keys to be registered for a thing.",
      "propertyOrder" : 30,
      "type" : "boolean",
      "exampleValue" : ""
    }
  },
  "required" : [ "verifySubject", "claimToAttributeMapping", "allowKeyRotation", "allowAttributeOverwrite", "jwtRegistrationMethod", "createIdentity", "defaultAttributeValues" ]
}