xref: /openbmc/bmcweb/features/redfish/schema/dmtf/json-schema/Signature.v1_0_3.json (revision f2a8e57ede74a8252100b2281e3f4d170aa69391)
1*f2a8e57eSGunnar Mills{
2*f2a8e57eSGunnar Mills    "$id": "http://redfish.dmtf.org/schemas/v1/Signature.v1_0_3.json",
3*f2a8e57eSGunnar Mills    "$ref": "#/definitions/Signature",
4*f2a8e57eSGunnar Mills    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5*f2a8e57eSGunnar Mills    "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6*f2a8e57eSGunnar Mills    "definitions": {
7*f2a8e57eSGunnar Mills        "Actions": {
8*f2a8e57eSGunnar Mills            "additionalProperties": false,
9*f2a8e57eSGunnar Mills            "description": "The available actions for this resource.",
10*f2a8e57eSGunnar Mills            "longDescription": "This type shall contain the available actions for this resource.",
11*f2a8e57eSGunnar Mills            "patternProperties": {
12*f2a8e57eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13*f2a8e57eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
14*f2a8e57eSGunnar Mills                    "type": [
15*f2a8e57eSGunnar Mills                        "array",
16*f2a8e57eSGunnar Mills                        "boolean",
17*f2a8e57eSGunnar Mills                        "integer",
18*f2a8e57eSGunnar Mills                        "number",
19*f2a8e57eSGunnar Mills                        "null",
20*f2a8e57eSGunnar Mills                        "object",
21*f2a8e57eSGunnar Mills                        "string"
22*f2a8e57eSGunnar Mills                    ]
23*f2a8e57eSGunnar Mills                }
24*f2a8e57eSGunnar Mills            },
25*f2a8e57eSGunnar Mills            "properties": {
26*f2a8e57eSGunnar Mills                "Oem": {
27*f2a8e57eSGunnar Mills                    "$ref": "#/definitions/OemActions",
28*f2a8e57eSGunnar Mills                    "description": "The available OEM-specific actions for this resource.",
29*f2a8e57eSGunnar Mills                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
30*f2a8e57eSGunnar Mills                }
31*f2a8e57eSGunnar Mills            },
32*f2a8e57eSGunnar Mills            "type": "object"
33*f2a8e57eSGunnar Mills        },
34*f2a8e57eSGunnar Mills        "OemActions": {
35*f2a8e57eSGunnar Mills            "additionalProperties": true,
36*f2a8e57eSGunnar Mills            "description": "The available OEM-specific actions for this resource.",
37*f2a8e57eSGunnar Mills            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
38*f2a8e57eSGunnar Mills            "patternProperties": {
39*f2a8e57eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
40*f2a8e57eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
41*f2a8e57eSGunnar Mills                    "type": [
42*f2a8e57eSGunnar Mills                        "array",
43*f2a8e57eSGunnar Mills                        "boolean",
44*f2a8e57eSGunnar Mills                        "integer",
45*f2a8e57eSGunnar Mills                        "number",
46*f2a8e57eSGunnar Mills                        "null",
47*f2a8e57eSGunnar Mills                        "object",
48*f2a8e57eSGunnar Mills                        "string"
49*f2a8e57eSGunnar Mills                    ]
50*f2a8e57eSGunnar Mills                }
51*f2a8e57eSGunnar Mills            },
52*f2a8e57eSGunnar Mills            "properties": {},
53*f2a8e57eSGunnar Mills            "type": "object"
54*f2a8e57eSGunnar Mills        },
55*f2a8e57eSGunnar Mills        "Signature": {
56*f2a8e57eSGunnar Mills            "additionalProperties": false,
57*f2a8e57eSGunnar Mills            "description": "The `Signature` schema describes a signature or a hash.",
58*f2a8e57eSGunnar Mills            "longDescription": "This resource contains a signature for a Redfish implementation.",
59*f2a8e57eSGunnar Mills            "patternProperties": {
60*f2a8e57eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
61*f2a8e57eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
62*f2a8e57eSGunnar Mills                    "type": [
63*f2a8e57eSGunnar Mills                        "array",
64*f2a8e57eSGunnar Mills                        "boolean",
65*f2a8e57eSGunnar Mills                        "integer",
66*f2a8e57eSGunnar Mills                        "number",
67*f2a8e57eSGunnar Mills                        "null",
68*f2a8e57eSGunnar Mills                        "object",
69*f2a8e57eSGunnar Mills                        "string"
70*f2a8e57eSGunnar Mills                    ]
71*f2a8e57eSGunnar Mills                }
72*f2a8e57eSGunnar Mills            },
73*f2a8e57eSGunnar Mills            "properties": {
74*f2a8e57eSGunnar Mills                "@odata.context": {
75*f2a8e57eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
76*f2a8e57eSGunnar Mills                },
77*f2a8e57eSGunnar Mills                "@odata.etag": {
78*f2a8e57eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
79*f2a8e57eSGunnar Mills                },
80*f2a8e57eSGunnar Mills                "@odata.id": {
81*f2a8e57eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
82*f2a8e57eSGunnar Mills                },
83*f2a8e57eSGunnar Mills                "@odata.type": {
84*f2a8e57eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
85*f2a8e57eSGunnar Mills                },
86*f2a8e57eSGunnar Mills                "Actions": {
87*f2a8e57eSGunnar Mills                    "$ref": "#/definitions/Actions",
88*f2a8e57eSGunnar Mills                    "description": "The available actions for this resource.",
89*f2a8e57eSGunnar Mills                    "longDescription": "This property shall contain the available actions for this resource."
90*f2a8e57eSGunnar Mills                },
91*f2a8e57eSGunnar Mills                "Description": {
92*f2a8e57eSGunnar Mills                    "anyOf": [
93*f2a8e57eSGunnar Mills                        {
94*f2a8e57eSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
95*f2a8e57eSGunnar Mills                        },
96*f2a8e57eSGunnar Mills                        {
97*f2a8e57eSGunnar Mills                            "type": "null"
98*f2a8e57eSGunnar Mills                        }
99*f2a8e57eSGunnar Mills                    ],
100*f2a8e57eSGunnar Mills                    "readonly": true
101*f2a8e57eSGunnar Mills                },
102*f2a8e57eSGunnar Mills                "Id": {
103*f2a8e57eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
104*f2a8e57eSGunnar Mills                    "readonly": true
105*f2a8e57eSGunnar Mills                },
106*f2a8e57eSGunnar Mills                "Name": {
107*f2a8e57eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
108*f2a8e57eSGunnar Mills                    "readonly": true
109*f2a8e57eSGunnar Mills                },
110*f2a8e57eSGunnar Mills                "Oem": {
111*f2a8e57eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
112*f2a8e57eSGunnar Mills                    "description": "The OEM extension property.",
113*f2a8e57eSGunnar Mills                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
114*f2a8e57eSGunnar Mills                },
115*f2a8e57eSGunnar Mills                "SignatureString": {
116*f2a8e57eSGunnar Mills                    "description": "The string for the signature.",
117*f2a8e57eSGunnar Mills                    "longDescription": "This property shall contain the string of the signature, and the format shall follow the requirements specified by the value of the `SignatureType` property.  If the signature contains any private keys, they shall be removed from the string in responses.  If the private key for the signature is not known by the service and is needed to use the signature, the client shall provide the private key as part of the string in the `POST` request.",
118*f2a8e57eSGunnar Mills                    "readonly": true,
119*f2a8e57eSGunnar Mills                    "type": [
120*f2a8e57eSGunnar Mills                        "string",
121*f2a8e57eSGunnar Mills                        "null"
122*f2a8e57eSGunnar Mills                    ]
123*f2a8e57eSGunnar Mills                },
124*f2a8e57eSGunnar Mills                "SignatureType": {
125*f2a8e57eSGunnar Mills                    "description": "The format of the signature.",
126*f2a8e57eSGunnar Mills                    "longDescription": "This property shall contain the format type for the signature.  The format is qualified by the value of the `SignatureTypeRegistry` property.",
127*f2a8e57eSGunnar Mills                    "readonly": true,
128*f2a8e57eSGunnar Mills                    "type": [
129*f2a8e57eSGunnar Mills                        "string",
130*f2a8e57eSGunnar Mills                        "null"
131*f2a8e57eSGunnar Mills                    ]
132*f2a8e57eSGunnar Mills                },
133*f2a8e57eSGunnar Mills                "SignatureTypeRegistry": {
134*f2a8e57eSGunnar Mills                    "anyOf": [
135*f2a8e57eSGunnar Mills                        {
136*f2a8e57eSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Signature.json#/definitions/SignatureTypeRegistry"
137*f2a8e57eSGunnar Mills                        },
138*f2a8e57eSGunnar Mills                        {
139*f2a8e57eSGunnar Mills                            "type": "null"
140*f2a8e57eSGunnar Mills                        }
141*f2a8e57eSGunnar Mills                    ],
142*f2a8e57eSGunnar Mills                    "description": "The type of the signature.",
143*f2a8e57eSGunnar Mills                    "longDescription": "This property shall contain the type for the signature.",
144*f2a8e57eSGunnar Mills                    "readonly": true
145*f2a8e57eSGunnar Mills                },
146*f2a8e57eSGunnar Mills                "UefiSignatureOwner": {
147*f2a8e57eSGunnar Mills                    "description": "The UEFI signature owner for this signature.",
148*f2a8e57eSGunnar Mills                    "longDescription": "The value of this property shall contain the GUID of the UEFI signature owner for this signature as defined by the UEFI Specification.  This property shall only be present if the `SignatureTypeRegistry` property is `UEFI`.",
149*f2a8e57eSGunnar Mills                    "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
150*f2a8e57eSGunnar Mills                    "readonly": true,
151*f2a8e57eSGunnar Mills                    "type": [
152*f2a8e57eSGunnar Mills                        "string",
153*f2a8e57eSGunnar Mills                        "null"
154*f2a8e57eSGunnar Mills                    ]
155*f2a8e57eSGunnar Mills                }
156*f2a8e57eSGunnar Mills            },
157*f2a8e57eSGunnar Mills            "required": [
158*f2a8e57eSGunnar Mills                "@odata.id",
159*f2a8e57eSGunnar Mills                "@odata.type",
160*f2a8e57eSGunnar Mills                "Id",
161*f2a8e57eSGunnar Mills                "Name"
162*f2a8e57eSGunnar Mills            ],
163*f2a8e57eSGunnar Mills            "requiredOnCreate": [
164*f2a8e57eSGunnar Mills                "SignatureTypeRegistry",
165*f2a8e57eSGunnar Mills                "SignatureType",
166*f2a8e57eSGunnar Mills                "SignatureString"
167*f2a8e57eSGunnar Mills            ],
168*f2a8e57eSGunnar Mills            "type": "object"
169*f2a8e57eSGunnar Mills        }
170*f2a8e57eSGunnar Mills    },
171*f2a8e57eSGunnar Mills    "language": "en",
172*f2a8e57eSGunnar Mills    "owningEntity": "DMTF",
173*f2a8e57eSGunnar Mills    "release": "2020.1",
174*f2a8e57eSGunnar Mills    "title": "#Signature.v1_0_3.Signature"
175*f2a8e57eSGunnar Mills}