summaryrefslogtreecommitdiff
path: root/redfish-core/schema/dmtf/csdl/SecureBoot_v1.xml
blob: 6b376af8c266f76e2b86681a64c0a9019780e4a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
<?xml version="1.0" encoding="UTF-8"?>
<!---->
<!--################################################################################       -->
<!--# Redfish Schema:  SecureBoot v1.1.1                                                   -->
<!--#                                                                                      -->
<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
<!--# available at http://www.dmtf.org/standards/redfish                                   -->
<!--# Copyright 2014-2023 DMTF.                                                            -->
<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
<!--################################################################################       -->
<!---->
<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">

  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
    <edmx:Include Namespace="Resource.v1_0_0"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/SecureBootDatabaseCollection_v1.xml">
    <edmx:Include Namespace="SecureBootDatabaseCollection"/>
  </edmx:Reference>

  <edmx:DataServices>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>

      <EntityType Name="SecureBoot" BaseType="Resource.v1_0_0.Resource" Abstract="true">
        <Annotation Term="OData.Description" String="The SecureBoot schema contains UEFI Secure Boot information and represents properties for managing the UEFI Secure Boot functionality of a system."/>
        <Annotation Term="OData.LongDescription" String="This resource contains UEFI Secure Boot information for a Redfish implementation."/>
        <Annotation Term="Capabilities.InsertRestrictions">
          <Record>
            <PropertyValue Property="Insertable" Bool="false"/>
          </Record>
        </Annotation>
        <Annotation Term="Capabilities.UpdateRestrictions">
          <Record>
            <PropertyValue Property="Updatable" Bool="true"/>
            <Annotation Term="OData.Description" String="Secure Boot can be updated to enable or disable the service."/>
          </Record>
        </Annotation>
        <Annotation Term="Capabilities.DeleteRestrictions">
          <Record>
            <PropertyValue Property="Deletable" Bool="false"/>
          </Record>
        </Annotation>
        <Annotation Term="Redfish.Uris">
          <Collection>
            <String>/redfish/v1/Systems/{ComputerSystemId}/SecureBoot</String>
            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/SecureBoot</String>
            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/SecureBoot</String>
          </Collection>
        </Annotation>
      </EntityType>

      <Action Name="ResetKeys" IsBound="true">
        <Annotation Term="OData.Description" String="This action resets the UEFI Secure Boot keys."/>
        <Annotation Term="OData.LongDescription" String="This action shall reset the UEFI Secure Boot key databases.  The `ResetAllKeysToDefault` value shall reset all UEFI Secure Boot key databases to their default values.  The `DeleteAllKeys` value shall delete the contents of all UEFI Secure Boot key databases.  The `DeletePK` value shall delete the contents of the PK Secure Boot key database."/>
        <Parameter Name="SecureBoot" Type="SecureBoot.v1_0_0.Actions"/>
        <Parameter Name="ResetKeysType" Type="SecureBoot.v1_0_0.ResetKeysType" Nullable="false">
          <Annotation Term="OData.Description" String="The type of reset or delete to perform on the UEFI Secure Boot databases."/>
          <Annotation Term="OData.LongDescription" String="This parameter shall specify the type of reset or delete to perform on the UEFI Secure Boot databases."/>
        </Parameter>
      </Action>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_0">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="Redfish.Release" String="2016.1"/>

      <EntityType Name="SecureBoot" BaseType="SecureBoot.SecureBoot">
        <Property Name="SecureBootEnable" Type="Edm.Boolean">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
          <Annotation Term="OData.Description" String="An indication of whether UEFI Secure Boot is enabled."/>
          <Annotation Term="OData.LongDescription" String="This property shall indicate whether the UEFI Secure Boot takes effect on next boot.  This property can be enabled in UEFI boot mode only."/>
        </Property>
        <Property Name="SecureBootCurrentBoot" Type="SecureBoot.v1_0_0.SecureBootCurrentBootType">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The UEFI Secure Boot state during the current boot cycle."/>
          <Annotation Term="OData.LongDescription" String="This property shall indicate the UEFI Secure Boot state during the current boot cycle."/>
        </Property>
        <Property Name="SecureBootMode" Type="SecureBoot.v1_0_0.SecureBootModeType">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The current UEFI Secure Boot Mode."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the current UEFI Secure Boot mode, as defined in the UEFI Specification."/>
        </Property>
        <Property Name="Actions" Type="SecureBoot.v1_0_0.Actions" Nullable="false">
          <Annotation Term="OData.Description" String="The available actions for this resource."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
        </Property>
      </EntityType>

      <EnumType Name="SecureBootCurrentBootType">
        <Member Name="Enabled">
          <Annotation Term="OData.Description" String="UEFI Secure Boot is currently enabled."/>
        </Member>
        <Member Name="Disabled">
          <Annotation Term="OData.Description" String="UEFI Secure Boot is currently disabled."/>
        </Member>
      </EnumType>

      <EnumType Name="SecureBootModeType">
        <Member Name="SetupMode">
          <Annotation Term="OData.Description" String="UEFI Secure Boot is currently in Setup Mode."/>
        </Member>
        <Member Name="UserMode">
          <Annotation Term="OData.Description" String="UEFI Secure Boot is currently in User Mode."/>
        </Member>
        <Member Name="AuditMode">
          <Annotation Term="OData.Description" String="UEFI Secure Boot is currently in Audit Mode."/>
        </Member>
        <Member Name="DeployedMode">
          <Annotation Term="OData.Description" String="UEFI Secure Boot is currently in Deployed Mode."/>
        </Member>
      </EnumType>

      <EnumType Name="ResetKeysType">
        <Member Name="ResetAllKeysToDefault">
          <Annotation Term="OData.Description" String="Reset the contents of all UEFI Secure Boot key databases, including the PK key database, to the default values."/>
        </Member>
        <Member Name="DeleteAllKeys">
          <Annotation Term="OData.Description" String="Delete the contents of all UEFI Secure Boot key databases, including the PK key database.  This puts the system in Setup Mode."/>
        </Member>
        <Member Name="DeletePK">
          <Annotation Term="OData.Description" String="Delete the contents of the PK UEFI Secure Boot database.  This puts the system in Setup Mode."/>
        </Member>
      </EnumType>

      <ComplexType Name="Actions">
        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
        <Annotation Term="OData.Description" String="The available actions for this resource."/>
        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
        <Property Name="Oem" Type="SecureBoot.v1_0_0.OemActions" Nullable="false">
          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
        </Property>
      </ComplexType>

      <ComplexType Name="OemActions">
        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
      </ComplexType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_1">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to show that annotations in previous namespaces were updated."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_0.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_2">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to show that annotations in previous namespaces were updated."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_1.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_3">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to add requirements on the action parameters to show they are mandatory through Nullable=false, and corrects the short and long descriptions in the defined actions."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_2.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_4">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that OData properties are marked as required, and integer properties are marked as integer rather than number."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_3.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_5">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that URI properties use the uri-reference format."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_4.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_6">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to update descriptions that this schema defines."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_5.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_7">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to update descriptions as needed to reference UEFI Secure Boot databases."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_6.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_0_8">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_7.SecureBoot"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_1_0">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="Redfish.Release" String="2020.1"/>

      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_0_7.SecureBoot">
        <NavigationProperty Name="SecureBootDatabases" Type="SecureBootDatabaseCollection.SecureBootDatabaseCollection" ContainsTarget="true" Nullable="false">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="A link to the collection of UEFI Secure Boot databases."/>
          <Annotation Term="OData.LongDescription" String="The value of this property shall be a link to a resource collection of type SecureBootDatabaseCollection."/>
          <Annotation Term="OData.AutoExpandReferences"/>
        </NavigationProperty>
      </EntityType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="SecureBoot.v1_1_1">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
      <EntityType Name="SecureBoot" BaseType="SecureBoot.v1_1_0.SecureBoot"/>
    </Schema>

  </edmx:DataServices>
</edmx:Edmx>