123 lines
3.9 KiB
JSON
123 lines
3.9 KiB
JSON
{
|
|
"$id": "https://idhub.pangea.org/vc_schemas/device-snapshot-v1.json",
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"title": "DeviceSnapshotV1",
|
|
"description": "Snapshot create by workbench-script, software for discover hardware in one device.",
|
|
"name": [
|
|
{
|
|
"value": "Snapshot",
|
|
"lang": "en"
|
|
}
|
|
],
|
|
"type": "object",
|
|
"allOf": [
|
|
{
|
|
"$ref": "https://www.w3.org/2018/credentials/v1"
|
|
},
|
|
{
|
|
"properties": {
|
|
"credentialSubject": {
|
|
"description": "Define the properties of a digital device snapshot",
|
|
"type": "object",
|
|
"properties": {
|
|
"operatorId": {
|
|
"description": "Indentifier related to the product operator, defined a hash of an Id token (10 chars enough)",
|
|
"type": "string",
|
|
"minLength": 10
|
|
},
|
|
"uuid": {
|
|
"description": "Unique identifier of the snapshot.",
|
|
"type": "string",
|
|
"minLength": 36
|
|
},
|
|
"type": {
|
|
"description": "Defines a snapshot type, e.g., hardwareList, dataDeletion (need to adjust the enum values).",
|
|
"type": "string",
|
|
"enum": [
|
|
"hardwareList", "dataDeletion"
|
|
],
|
|
"minLength": 1
|
|
},
|
|
"software": {
|
|
"description": "Name of the snapshot software used.",
|
|
"type": "string",
|
|
"enum": [
|
|
"workbench-script"
|
|
],
|
|
"minLength": 1
|
|
},
|
|
"deviceId": {
|
|
"description": "List of identification properties for the device, each with a name and value.",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"description": "The type of device identifier information, e.g., ManufacturerSerial, EthernetMacAddress.",
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The value of the device identifier information.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": ["name", "value"]
|
|
}
|
|
},
|
|
"timestamp": {
|
|
"description": "Date and time of this snapshot.",
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
},
|
|
"required": [
|
|
"uuid",
|
|
"type",
|
|
"timestamp"
|
|
]
|
|
},
|
|
"evidence": {
|
|
"description": "Contains supporting evidence about the process which resulted in the issuance of this credential as a result of system operations.",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"description": "Type of evidence, linked to credentialSubject.type.",
|
|
"type": "string",
|
|
"enum": [
|
|
"HardwareList",
|
|
"DataDeletion"
|
|
]
|
|
},
|
|
"operation": {
|
|
"description": "Specifies the command executed for evidence generation.",
|
|
"type": "string",
|
|
"enum": [
|
|
"inxi",
|
|
"dmidecode",
|
|
"smartctl"
|
|
]
|
|
},
|
|
"output": {
|
|
"description": "Output from the executed command.",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"description": "Timestamp of the evidence generation if needed.",
|
|
"type": "string",
|
|
"format": "date-time"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"operation",
|
|
"output"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|