blob: 9b2915489e704c9ad8e426351527f44caf80c418 [file] [log] [blame]
Marri Devender Raod45d2d02019-01-21 10:11:34 -06001{
Ed Tanouscb103132019-10-08 11:34:22 -07002 "$id": "http://redfish.dmtf.org/schemas/v1/CertificateService.v1_0_2.json",
Marri Devender Raod45d2d02019-01-21 10:11:34 -06003 "$ref": "#/definitions/CertificateService",
4 "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
Ed Tanouscb103132019-10-08 11:34:22 -07005 "copyright": "Copyright 2014-2019 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
Marri Devender Raod45d2d02019-01-21 10:11:34 -06006 "definitions": {
7 "Actions": {
8 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -07009 "description": "The available actions for this Resource.",
10 "longDescription": "This type shall contain the available actions for this Resource.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -060011 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070012 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Marri Devender Raod45d2d02019-01-21 10:11:34 -060013 "description": "This property shall specify a valid odata or Redfish property.",
14 "type": [
15 "array",
16 "boolean",
17 "integer",
18 "number",
19 "null",
20 "object",
21 "string"
22 ]
23 }
24 },
25 "properties": {
26 "#CertificateService.GenerateCSR": {
27 "$ref": "#/definitions/GenerateCSR"
28 },
29 "#CertificateService.ReplaceCertificate": {
30 "$ref": "#/definitions/ReplaceCertificate"
31 },
32 "Oem": {
33 "$ref": "#/definitions/OemActions",
Ed Tanouscb103132019-10-08 11:34:22 -070034 "description": "The available OEM-specific actions for this Resource.",
35 "longDescription": "This property shall contain the available OEM-specific actions for this Resource."
Marri Devender Raod45d2d02019-01-21 10:11:34 -060036 }
37 },
38 "type": "object"
39 },
40 "CertificateService": {
41 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -070042 "description": "The CertificateService schema describes a Certificate Service that represents the actions available to manage certificates and links to the certificates.",
43 "longDescription": "This Resource shall represent the Certificate Service properties for a Redfish implementation.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -060044 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070045 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Marri Devender Raod45d2d02019-01-21 10:11:34 -060046 "description": "This property shall specify a valid odata or Redfish property.",
47 "type": [
48 "array",
49 "boolean",
50 "integer",
51 "number",
52 "null",
53 "object",
54 "string"
55 ]
56 }
57 },
58 "properties": {
59 "@odata.context": {
Ed Tanouscb103132019-10-08 11:34:22 -070060 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
Marri Devender Raod45d2d02019-01-21 10:11:34 -060061 },
62 "@odata.etag": {
Ed Tanouscb103132019-10-08 11:34:22 -070063 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
Marri Devender Raod45d2d02019-01-21 10:11:34 -060064 },
65 "@odata.id": {
Ed Tanouscb103132019-10-08 11:34:22 -070066 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
Marri Devender Raod45d2d02019-01-21 10:11:34 -060067 },
68 "@odata.type": {
Ed Tanouscb103132019-10-08 11:34:22 -070069 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
Marri Devender Raod45d2d02019-01-21 10:11:34 -060070 },
71 "Actions": {
72 "$ref": "#/definitions/Actions",
Ed Tanouscb103132019-10-08 11:34:22 -070073 "description": "The available actions for this Resource.",
74 "longDescription": "This property shall contain the available actions for this Resource."
Marri Devender Raod45d2d02019-01-21 10:11:34 -060075 },
76 "CertificateLocations": {
77 "$ref": "http://redfish.dmtf.org/schemas/v1/CertificateLocations.json#/definitions/CertificateLocations",
Ed Tanouscb103132019-10-08 11:34:22 -070078 "description": "The information about the location of certificates.",
79 "longDescription": "This property shall contain the link to a Resource of type CertificateLocations.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -060080 "readonly": true
81 },
82 "Description": {
83 "anyOf": [
84 {
85 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
86 },
87 {
88 "type": "null"
89 }
90 ],
91 "readonly": true
92 },
93 "Id": {
94 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
95 "readonly": true
96 },
97 "Name": {
98 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
99 "readonly": true
100 },
101 "Oem": {
102 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
Ed Tanouscb103132019-10-08 11:34:22 -0700103 "description": "The OEM extension property.",
104 "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600105 }
106 },
107 "required": [
108 "@odata.id",
109 "@odata.type",
110 "Id",
111 "Name"
112 ],
113 "type": "object"
114 },
115 "GenerateCSR": {
116 "actionResponse": {
117 "$ref": "#/definitions/GenerateCSRResponse"
118 },
119 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -0700120 "description": "This action makes a certificate signing request.",
121 "longDescription": "This action shall make a certificate signing request. The response shall contain a signing request that a certificate authority (CA) must sign. The Service should retain the private key that was generated during this request for installation of the certificate. The private key should not be part of the response.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600122 "parameters": {
123 "AlternativeNames": {
Ed Tanouscb103132019-10-08 11:34:22 -0700124 "description": "The additional host names of the component to secure.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600125 "items": {
126 "type": "string"
127 },
Ed Tanouscb103132019-10-08 11:34:22 -0700128 "longDescription": "This parameter shall contain an array of additional host names of the component to secure, as defined by the RFC5280 'subjectAltName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600129 "type": "array"
130 },
131 "CertificateCollection": {
132 "$ref": "http://redfish.dmtf.org/schemas/v1/CertificateCollection.json#/definitions/CertificateCollection",
Ed Tanouscb103132019-10-08 11:34:22 -0700133 "description": "The URI of the Certificate Resource Collection where the certificate is installed after the certificate authority (CA) signs the certificate.",
134 "longDescription": "This parameter shall contain the URI of the Certificate Resource Collection where the certificate is installed after the certificate authority (CA) signs the certificate.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600135 "requiredParameter": true
136 },
137 "ChallengePassword": {
Ed Tanouscb103132019-10-08 11:34:22 -0700138 "description": "The challenge password to apply to the certificate for revocation requests.",
139 "longDescription": "This property shall contain the challenge password to apply to the certificate for revocation requests as defined by the RFC2985 'challengePassword' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600140 "type": "string"
141 },
142 "City": {
143 "description": "The city or locality of the organization making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700144 "longDescription": "This parameter shall contain the city or locality of the organization making the request, as defined by the RFC5280 'localityName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600145 "requiredParameter": true,
146 "type": "string"
147 },
148 "CommonName": {
Ed Tanouscb103132019-10-08 11:34:22 -0700149 "description": "The fully qualified domain name of the component to secure.",
150 "longDescription": "This parameter shall contain the fully qualified domain name of the component to secure, as defined by the RFC5280 'commonName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600151 "requiredParameter": true,
152 "type": "string"
153 },
154 "ContactPerson": {
155 "description": "The name of the user making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700156 "longDescription": "This property shall contain the name of the user making the request, as defined by the RFC5280 'name' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600157 "type": "string"
158 },
159 "Country": {
Ed Tanouscb103132019-10-08 11:34:22 -0700160 "description": "The two-letter country code of the organization making the request.",
161 "longDescription": "This parameter shall contain the two-letter ISO code for the country of the organization making the request, as defined by the RFC5280 'countryName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600162 "requiredParameter": true,
163 "type": "string"
164 },
165 "Email": {
166 "description": "The email address of the contact within the organization making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700167 "longDescription": "This parameter shall contain the email address of the contact within the organization making the request, as defined by the RFC2985 'emailAddress' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600168 "type": "string"
169 },
170 "GivenName": {
171 "description": "The given name of the user making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700172 "longDescription": "This parameter shall contain the given name of the user making the request, as defined by the RFC5280 'givenName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600173 "type": "string"
174 },
175 "Initials": {
176 "description": "The initials of the user making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700177 "longDescription": "This parameter shall contain the initials of the user making the request, as defined by the RFC5280 'initials' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600178 "type": "string"
179 },
180 "KeyBitLength": {
Ed Tanouscb103132019-10-08 11:34:22 -0700181 "description": "The length of the key, in bits, if needed based on the KeyPairAlgorithm parameter value.",
182 "longDescription": "This parameter shall contain the length of the key, in bits, if needed based on the KeyPairAlgorithm parameter value.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600183 "type": "integer"
184 },
185 "KeyCurveId": {
Ed Tanouscb103132019-10-08 11:34:22 -0700186 "description": "The curve ID to use with the key, if needed based on the KeyPairAlgorithm parameter value.",
187 "longDescription": "This parameter shall contain the curve ID to use with the key, if needed based on the KeyPairAlgorithm parameter value. The allowable values for this parameter shall be the strings in the 'Name' field of the 'TPM_ECC_CURVE Constants' table within the 'Trusted Computing Group Algorithm Registry'.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600188 "type": "string"
189 },
190 "KeyPairAlgorithm": {
Ed Tanouscb103132019-10-08 11:34:22 -0700191 "description": "The type of key-pair for use with signing algorithms.",
192 "longDescription": "This parameter shall contain the type of key-pair for use with signing algorithms. The allowable values for this parameter shall be the strings in the 'Algorithm Name' field of the 'TPM_ALG_ID Constants' table within the 'Trusted Computing Group Algorithm Registry'.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600193 "type": "string"
194 },
195 "KeyUsage": {
196 "description": "The usage of the key contained in the certificate.",
197 "items": {
198 "$ref": "http://redfish.dmtf.org/schemas/v1/Certificate.json#/definitions/KeyUsage"
199 },
Ed Tanouscb103132019-10-08 11:34:22 -0700200 "longDescription": "This parameter shall contain the usage of the key contained in the certificate. If the client does not provide this value, the service may determine the appropriate key usage settings in the certificate signing request.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600201 "type": "array"
202 },
203 "Organization": {
204 "description": "The name of the organization making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700205 "longDescription": "This parameter shall contain the name of the organization making the request, as defined by the RFC5280 'organizationName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600206 "requiredParameter": true,
207 "type": "string"
208 },
209 "OrganizationalUnit": {
210 "description": "The name of the unit or division of the organization making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700211 "longDescription": "This parameter shall contain the name of the unit or division of the organization making the request, as defined by the RFC5280 'organizationalUnitName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600212 "requiredParameter": true,
213 "type": "string"
214 },
215 "State": {
216 "description": "The state, province, or region of the organization making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700217 "longDescription": "This parameter shall contain the state, province, or region of the organization making the request, as defined by the RFC5280 'stateOrProvinceName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600218 "requiredParameter": true,
219 "type": "string"
220 },
221 "Surname": {
222 "description": "The surname of the user making the request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700223 "longDescription": "This parameter shall contain the surname of the user making the request, as defined by the RFC5280 'surname' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600224 "type": "string"
225 },
226 "UnstructuredName": {
227 "description": "The unstructured name of the subject.",
Ed Tanouscb103132019-10-08 11:34:22 -0700228 "longDescription": "This property shall contain the unstructured name of the subject, as defined by the RFC2985 'unstructuredName' attribute.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600229 "type": "string"
230 }
231 },
232 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700233 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600234 "description": "This property shall specify a valid odata or Redfish property.",
235 "type": [
236 "array",
237 "boolean",
238 "integer",
239 "number",
240 "null",
241 "object",
242 "string"
243 ]
244 }
245 },
246 "properties": {
247 "target": {
248 "description": "Link to invoke action",
Ed Tanouscb103132019-10-08 11:34:22 -0700249 "format": "uri-reference",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600250 "type": "string"
251 },
252 "title": {
253 "description": "Friendly action name",
254 "type": "string"
255 }
256 },
257 "type": "object"
258 },
259 "GenerateCSRResponse": {
260 "additionalProperties": false,
261 "description": "The response body for the GenerateCSR action.",
262 "longDescription": "This type shall contain the properties found in the response body for the GenerateCSR action.",
263 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700264 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600265 "description": "This property shall specify a valid odata or Redfish property.",
266 "type": [
267 "array",
268 "boolean",
269 "integer",
270 "number",
271 "null",
272 "object",
273 "string"
274 ]
275 }
276 },
277 "properties": {
278 "CSRString": {
279 "description": "The string for the certificate signing request.",
Ed Tanouscb103132019-10-08 11:34:22 -0700280 "longDescription": "This property shall contain the Privacy Enhanced Mail (PEM)-encoded string, which contains RFC2986-specified structures, of the certificate signing request. The private key should not be part of the string.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600281 "readonly": true,
282 "type": "string"
283 },
284 "CertificateCollection": {
285 "$ref": "http://redfish.dmtf.org/schemas/v1/CertificateCollection.json#/definitions/CertificateCollection",
Ed Tanouscb103132019-10-08 11:34:22 -0700286 "description": "The link to the Certificate Resource Collection where the certificate is installed.",
287 "longDescription": "This property shall contain the URI of the Certificate Resource Collection where the certificate is installed after the certificate authority (CA) has signed the certificate.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600288 "readonly": true
289 }
290 },
291 "required": [
292 "CertificateCollection",
293 "CSRString"
294 ],
295 "type": "object"
296 },
297 "OemActions": {
298 "additionalProperties": true,
Ed Tanouscb103132019-10-08 11:34:22 -0700299 "description": "The available OEM-specific actions for this Resource.",
300 "longDescription": "This type shall contain the available OEM-specific actions for this Resource.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600301 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700302 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600303 "description": "This property shall specify a valid odata or Redfish property.",
304 "type": [
305 "array",
306 "boolean",
307 "integer",
308 "number",
309 "null",
310 "object",
311 "string"
312 ]
313 }
314 },
315 "properties": {},
316 "type": "object"
317 },
318 "ReplaceCertificate": {
319 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -0700320 "description": "This action replaces a certificate.",
321 "longDescription": "This action shall replace a certificate. The Location header in the response shall contain the URI of the new Certificate Resource.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600322 "parameters": {
323 "CertificateString": {
324 "description": "The string for the certificate.",
Ed Tanouscb103132019-10-08 11:34:22 -0700325 "longDescription": "This parameter shall contain the string of the certificate, and the format shall follow the requirements specified by the CertificateType property value. If the certificate contains any private keys, they shall be removed from the string in responses. If the service does not know the private key for the certificate and it is needed to use the certificate, the client shall provide the private key as part of the string in the POST request.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600326 "requiredParameter": true,
327 "type": "string"
328 },
329 "CertificateType": {
330 "$ref": "http://redfish.dmtf.org/schemas/v1/Certificate.json#/definitions/CertificateType",
331 "description": "The format of the certificate.",
Ed Tanouscb103132019-10-08 11:34:22 -0700332 "longDescription": "This parameter shall contain the format type for the certificate.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600333 "requiredParameter": true
334 },
335 "CertificateUri": {
336 "$ref": "http://redfish.dmtf.org/schemas/v1/Certificate.json#/definitions/Certificate",
Ed Tanouscb103132019-10-08 11:34:22 -0700337 "description": "The link to the certificate that is being replaced.",
338 "longDescription": "This parameter shall contain the URI of the Certificate Resource that is being replaced.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600339 "requiredParameter": true
340 }
341 },
342 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700343 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600344 "description": "This property shall specify a valid odata or Redfish property.",
345 "type": [
346 "array",
347 "boolean",
348 "integer",
349 "number",
350 "null",
351 "object",
352 "string"
353 ]
354 }
355 },
356 "properties": {
357 "target": {
358 "description": "Link to invoke action",
Ed Tanouscb103132019-10-08 11:34:22 -0700359 "format": "uri-reference",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600360 "type": "string"
361 },
362 "title": {
363 "description": "Friendly action name",
364 "type": "string"
365 }
366 },
367 "type": "object"
368 }
369 },
370 "owningEntity": "DMTF",
371 "release": "2018.3",
Ed Tanouscb103132019-10-08 11:34:22 -0700372 "title": "#CertificateService.v1_0_2.CertificateService"
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600373}