1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################       -->
4<!--# Redfish Schema:  ExternalAccountProvider v1.7.2                                      -->
5<!--#                                                                                      -->
6<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
7<!--# available at http://www.dmtf.org/standards/redfish                                   -->
8<!--# Copyright 2014-2024 DMTF.                                                            -->
9<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
10<!--################################################################################       -->
11<!---->
12<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
13
14  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
15    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
16  </edmx:Reference>
17  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
18    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
19  </edmx:Reference>
20  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
21    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
22    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
23  </edmx:Reference>
24  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
25    <edmx:Include Namespace="Resource"/>
26    <edmx:Include Namespace="Resource.v1_0_0"/>
27  </edmx:Reference>
28  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/CertificateCollection_v1.xml">
29    <edmx:Include Namespace="CertificateCollection"/>
30  </edmx:Reference>
31  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/AccountService_v1.xml">
32    <edmx:Include Namespace="AccountService"/>
33  </edmx:Reference>
34
35  <edmx:DataServices>
36
37    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider">
38      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
39      <Annotation Term="Redfish.Language" String="en"/>
40
41      <EntityType Name="ExternalAccountProvider" BaseType="Resource.v1_0_0.Resource" Abstract="true">
42        <Annotation Term="OData.Description" String="The `ExternalAccountProvider` schema represents a remote service that provides accounts for this manager to use for authentication."/>
43        <Annotation Term="OData.LongDescription" String="This resource shall represent a remote authentication service in the Redfish Specification."/>
44        <Annotation Term="Capabilities.InsertRestrictions">
45          <Record>
46            <PropertyValue Property="Insertable" Bool="false"/>
47          </Record>
48        </Annotation>
49        <Annotation Term="Capabilities.UpdateRestrictions">
50          <Record>
51            <PropertyValue Property="Updatable" Bool="true"/>
52            <Annotation Term="OData.Description" String="Any writable properties, such as `Authentication`, can be updated for external account providers."/>
53          </Record>
54        </Annotation>
55        <Annotation Term="Capabilities.DeleteRestrictions">
56          <Record>
57            <PropertyValue Property="Deletable" Bool="true"/>
58            <Annotation Term="OData.Description" String="The external account providers can be deleted."/>
59          </Record>
60        </Annotation>
61        <Annotation Term="Redfish.Uris">
62          <Collection>
63            <String>/redfish/v1/AccountService/ExternalAccountProviders/{ExternalAccountProviderId}</String>
64            <String>/redfish/v1/Managers/{ManagerId}/RemoteAccountService/ExternalAccountProviders/{ExternalAccountProviderId}</String>
65          </Collection>
66        </Annotation>
67      </EntityType>
68    </Schema>
69
70    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_0">
71      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
72      <Annotation Term="Redfish.Release" String="2018.1"/>
73
74      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.ExternalAccountProvider">
75        <Property Name="AccountProviderType" Type="ExternalAccountProvider.v1_0_0.AccountProviderTypes">
76          <Annotation Term="Redfish.RequiredOnCreate"/>
77          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
78          <Annotation Term="OData.Description" String="The type of external account provider to which this service connects."/>
79          <Annotation Term="OData.LongDescription" String="This property shall contain the type of external account provider to which this service connects."/>
80        </Property>
81        <Property Name="ServiceEnabled" Type="Edm.Boolean">
82          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
83          <Annotation Term="OData.Description" String="An indication of whether this service is enabled."/>
84          <Annotation Term="OData.LongDescription" String="This property shall indicate whether this service is enabled."/>
85        </Property>
86        <Property Name="ServiceAddresses" Type="Collection(Edm.String)">
87          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
88          <Annotation Term="OData.Description" String="The addresses of the user account providers to which this external account provider links.  The format of this field depends on the type of external account provider."/>
89          <Annotation Term="OData.LongDescription" String="This property shall contain the addresses of the account providers to which this external account provider links.  The format of this field depends on the type of external account provider.  Each item in the array shall contain a single address.  Services can define their own behavior for managing multiple addresses."/>
90        </Property>
91        <Property Name="Authentication" Type="ExternalAccountProvider.v1_0_0.Authentication" Nullable="false">
92          <Annotation Term="OData.Description" String="The authentication information for the external account provider."/>
93          <Annotation Term="OData.LongDescription" String="This property shall contain the authentication information for the external account provider."/>
94        </Property>
95        <Property Name="LDAPService" Type="ExternalAccountProvider.v1_0_0.LDAPService" Nullable="false">
96          <Annotation Term="OData.Description" String="The additional mapping information needed to parse a generic LDAP service."/>
97          <Annotation Term="OData.LongDescription" String="This property shall contain any additional mapping information needed to parse a generic LDAP service.  This property should only be present if `AccountProviderType` is `LDAPService`."/>
98        </Property>
99        <Property Name="RemoteRoleMapping" Type="Collection(ExternalAccountProvider.v1_0_0.RoleMapping)">
100          <Annotation Term="OData.Description" String="The mapping rules to convert the external account providers account information to the local Redfish role."/>
101          <Annotation Term="OData.LongDescription" String="This property shall contain a set of the mapping rules that are used to convert the external account providers account information to the local Redfish role."/>
102        </Property>
103        <Property Name="Links" Type="ExternalAccountProvider.v1_0_0.Links" Nullable="false">
104          <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
105          <Annotation Term="OData.LongDescription" String="This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
106        </Property>
107        <Property Name="Actions" Type="ExternalAccountProvider.v1_0_0.Actions" Nullable="false">
108          <Annotation Term="OData.Description" String="The available actions for this resource."/>
109          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
110        </Property>
111      </EntityType>
112
113      <EnumType Name="AccountProviderTypes">
114        <Member Name="RedfishService">
115          <Annotation Term="OData.Description" String="An external Redfish service."/>
116          <Annotation Term="OData.LongDescription" String="The external account provider shall be a DMTF Redfish Specification-conformant service.  The `ServiceAddresses` property shall contain URIs to `AccountService` resources that correspond to Redfish services.  For example, `https://192.168.1.50/redfish/v1/AccountService`."/>
117        </Member>
118        <Member Name="ActiveDirectoryService">
119          <Annotation Term="OData.Description" String="An external Active Directory service."/>
120          <Annotation Term="OData.LongDescription" String="The external account provider shall be a Microsoft Active Directory Technical Specification-conformant service.  The `ServiceAddresses` property shall contain fully qualified domain names (FQDN) or NetBIOS names that link to the domain servers for the Active Directory service."/>
121        </Member>
122        <Member Name="LDAPService">
123          <Annotation Term="OData.Description" String="A generic external LDAP service."/>
124          <Annotation Term="OData.LongDescription" String="The external account provider shall be an RFC4511-conformant service.  The `ServiceAddresses` property shall contain RFC3986-defined URIs in the format `scheme://host:port`, where `scheme://` and `:port` are optional, that link to the LDAP servers for the service.  If the scheme is not specified, services shall assume it is `ldaps://`.  If the port is not specified, services shall assume it is `636`.  For example, `ldaps://contoso.com:636` or `contoso.com`."/>
125        </Member>
126        <Member Name="OEM">
127          <Annotation Term="OData.Description" String="An OEM-specific external authentication or directory service."/>
128        </Member>
129        <Member Name="TACACSplus">
130          <Annotation Term="OData.Description" String="An external TACACS+ service."/>
131          <Annotation Term="OData.LongDescription" String="The external account provider shall be an RFC8907-conformant service.  The `ServiceAddresses` property shall contain RFC3986-defined URIs in the format `host:port` that correspond to the TACACS+ services."/>
132          <Annotation Term="Redfish.Revisions">
133            <Collection>
134              <Record>
135                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
136                <PropertyValue Property="Version" String="v1_3_0"/>
137              </Record>
138            </Collection>
139          </Annotation>
140        </Member>
141        <Member Name="OAuth2">
142          <Annotation Term="OData.Description" String="An external OAuth 2.0 service."/>
143          <Annotation Term="OData.LongDescription" String="The external account provider shall be an RFC6749-conformant service.  The `ServiceAddresses` property shall contain RFC3986-defined URIs that correspond to the RFC8414-defined metadata for the OAuth 2.0 service.  For example, `https://contoso.org/.well-known/oauth-authorization-server`."/>
144          <Annotation Term="Redfish.Revisions">
145            <Collection>
146              <Record>
147                <PropertyValue Property="Kind" EnumMember="Redfish.RevisionKind/Added"/>
148                <PropertyValue Property="Version" String="v1_3_0"/>
149              </Record>
150            </Collection>
151          </Annotation>
152        </Member>
153      </EnumType>
154
155      <ComplexType Name="Authentication">
156        <Annotation Term="OData.Description" String="The information required to authenticate to the external service."/>
157        <Annotation Term="OData.LongDescription" String="This type shall contain the information required to authenticate to the external service."/>
158        <Property Name="AuthenticationType" Type="ExternalAccountProvider.v1_0_0.AuthenticationTypes">
159          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
160          <Annotation Term="OData.Description" String="The type of authentication used to connect to the external account provider."/>
161          <Annotation Term="OData.LongDescription" String="This property shall contain the type of authentication used to connect to the external account provider."/>
162        </Property>
163        <Property Name="Username" Type="Edm.String" Nullable="false">
164          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
165          <Annotation Term="OData.Description" String="The username for the service."/>
166          <Annotation Term="OData.LongDescription" String="This property shall contain the username for this service."/>
167        </Property>
168        <Property Name="Password" Type="Edm.String">
169          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Write"/>
170          <Annotation Term="OData.Description" String="The password for this service.  A `PATCH` or `PUT` request writes the password.  This property is `null` in responses."/>
171          <Annotation Term="OData.LongDescription" String="This property shall contain the password for this service.  A `PATCH` or `PUT` operation writes the password.  The value shall be `null` in responses."/>
172        </Property>
173        <Property Name="Token" Type="Edm.String">
174          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Write"/>
175          <Annotation Term="OData.Description" String="The token for this service.  A `PATCH` or `PUT` operation writes the token.  This property is `null` in responses."/>
176          <Annotation Term="OData.LongDescription" String="This property shall contain the token for this service.  A `PATCH` or `PUT` operation writes the token.  The value shall be `null` in responses."/>
177        </Property>
178        <Property Name="KerberosKeytab" Type="Edm.String">
179          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Write"/>
180          <Annotation Term="OData.Description" String="The Base64-encoded version of the Kerberos keytab for this service.  A `PATCH` or `PUT` operation writes the keytab.  This property is `null` in responses."/>
181          <Annotation Term="OData.LongDescription" String="This property shall contain a Base64-encoded version of the Kerberos keytab for this service.  A `PATCH` or `PUT` operation writes the keytab.  The value shall be `null` in responses."/>
182        </Property>
183        <Property Name="Oem" Type="Resource.Oem" Nullable="false">
184          <Annotation Term="OData.Description" String="The OEM extension property."/>
185          <Annotation Term="OData.LongDescription" String="This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."/>
186        </Property>
187      </ComplexType>
188
189      <EnumType Name="AuthenticationTypes">
190        <Member Name="Token">
191          <Annotation Term="OData.Description" String="An opaque authentication token."/>
192        </Member>
193        <Member Name="KerberosKeytab">
194          <Annotation Term="OData.Description" String="A Kerberos keytab."/>
195        </Member>
196        <Member Name="UsernameAndPassword">
197          <Annotation Term="OData.Description" String="A username and password combination."/>
198        </Member>
199        <Member Name="OEM">
200          <Annotation Term="OData.Description" String="An OEM-specific authentication mechanism."/>
201        </Member>
202      </EnumType>
203
204      <ComplexType Name="LDAPService">
205        <Annotation Term="OData.Description" String="The settings required to parse a generic LDAP service."/>
206        <Annotation Term="OData.LongDescription" String="This type shall contain all required settings to parse a generic LDAP service."/>
207        <Property Name="SearchSettings" Type="ExternalAccountProvider.v1_0_0.LDAPSearchSettings" Nullable="false">
208          <Annotation Term="OData.Description" String="The required settings to search an external LDAP service."/>
209          <Annotation Term="OData.LongDescription" String="This property shall contain the required settings to search an external LDAP service."/>
210        </Property>
211        <Property Name="Oem" Type="Resource.Oem" Nullable="false">
212          <Annotation Term="OData.Description" String="The OEM extension property."/>
213          <Annotation Term="OData.LongDescription" String="This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."/>
214        </Property>
215      </ComplexType>
216
217      <ComplexType Name="LDAPSearchSettings">
218        <Annotation Term="OData.Description" String="The settings to search a generic LDAP service."/>
219        <Annotation Term="OData.LongDescription" String="This type shall contain all required settings to search a generic LDAP service."/>
220        <Property Name="BaseDistinguishedNames" Type="Collection(Edm.String)">
221          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
222          <Annotation Term="OData.Description" String="The base distinguished names to use to search an external LDAP service."/>
223          <Annotation Term="OData.LongDescription" String="This property shall contain an array of base distinguished names to use to search an external LDAP service."/>
224        </Property>
225        <Property Name="UsernameAttribute" Type="Edm.String">
226          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
227          <Annotation Term="OData.Description" String="The attribute name that contains the LDAP username entry."/>
228          <Annotation Term="OData.LongDescription" String="This property shall contain the attribute name that contains the LDAP username."/>
229        </Property>
230        <Property Name="GroupNameAttribute" Type="Edm.String">
231          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
232          <Annotation Term="OData.Description" String="The attribute name that contains the LDAP group name entry."/>
233          <Annotation Term="OData.LongDescription" String="This property shall contain the attribute name that contains the LDAP group name."/>
234        </Property>
235        <Property Name="GroupsAttribute" Type="Edm.String">
236          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
237          <Annotation Term="OData.Description" String="The attribute name that contains the groups for a user on the LDAP user entry."/>
238          <Annotation Term="OData.LongDescription" String="This property shall contain the attribute name that contains the groups for an LDAP user entry."/>
239        </Property>
240      </ComplexType>
241
242      <ComplexType Name="RoleMapping">
243        <Annotation Term="OData.Description" String="The mapping rules that are used to convert the external account providers account information to the local Redfish role."/>
244        <Annotation Term="OData.LongDescription" String="This type shall contain mapping rules that are used to convert the external account providers account information to the local Redfish role."/>
245        <Property Name="RemoteGroup" Type="Edm.String">
246          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
247          <Annotation Term="OData.Description" String="The name of the remote group, or the remote role in the case of a Redfish service, that maps to the local Redfish role to which this entity links."/>
248          <Annotation Term="OData.LongDescription" String="This property shall contain the name of the remote group, or the remote role in the case of a Redfish service, that maps to the local Redfish role to which this entity links."/>
249        </Property>
250        <Property Name="RemoteUser" Type="Edm.String">
251          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
252          <Annotation Term="OData.Description" String="The name of the remote user that maps to the local Redfish role to which this entity links."/>
253          <Annotation Term="OData.LongDescription" String="This property shall contain the name of the remote user that maps to the local Redfish role to which this entity links."/>
254        </Property>
255        <Property Name="LocalRole" Type="Edm.String">
256          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
257          <Annotation Term="OData.Description" String="The name of the local Redfish role to which to map the remote user or group."/>
258          <Annotation Term="OData.LongDescription" String="This property shall contain the `RoleId` property value within a role resource on this Redfish service to which to map the remote user or group."/>
259        </Property>
260        <Property Name="Oem" Type="Resource.Oem" Nullable="false">
261          <Annotation Term="OData.Description" String="The OEM extension property."/>
262          <Annotation Term="OData.LongDescription" String="This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."/>
263        </Property>
264      </ComplexType>
265
266      <ComplexType Name="Links" BaseType="Resource.Links">
267        <Annotation Term="OData.Description" String="The links to other resources that are related to this resource."/>
268        <Annotation Term="OData.LongDescription" String="This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."/>
269      </ComplexType>
270
271      <ComplexType Name="Actions">
272        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
273        <Annotation Term="OData.Description" String="The available actions for this resource."/>
274        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
275        <Property Name="Oem" Type="ExternalAccountProvider.v1_0_0.OemActions" Nullable="false">
276          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
277          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
278        </Property>
279      </ComplexType>
280
281      <ComplexType Name="OemActions">
282        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
283        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
284        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
285      </ComplexType>
286    </Schema>
287
288    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_1">
289      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
290      <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."/>
291      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_0.ExternalAccountProvider"/>
292    </Schema>
293
294    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_2">
295      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
296      <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, clarifies the `LDAPSearchSettings` property descriptions, and adds a missing term to several properties to disallow them from being `null`."/>
297      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_1.ExternalAccountProvider"/>
298    </Schema>
299
300    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_3">
301      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
302      <Annotation Term="OData.Description" String="This version was created to update the descriptions of `Password`, `Token`, and `KerberosKeytab` properties.  It was also created to clarify the usage of the `LDAPService` property."/>
303      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_2.ExternalAccountProvider"/>
304    </Schema>
305
306    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_4">
307      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
308      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
309      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_3.ExternalAccountProvider"/>
310    </Schema>
311
312    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_5">
313      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
314      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
315      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_4.ExternalAccountProvider"/>
316    </Schema>
317
318    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_6">
319      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
320      <Annotation Term="OData.Description" String="This version was created to mark properties with values containing sensitive data as write-only."/>
321      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_5.ExternalAccountProvider"/>
322    </Schema>
323
324    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_7">
325      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
326      <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of `AccountProviderType`.  It was also created to expand the `LDAPService` value for `AccountProviderType` to allow for a scheme and port to be specified."/>
327      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_6.ExternalAccountProvider"/>
328    </Schema>
329
330    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_0_8">
331      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
332      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
333      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_7.ExternalAccountProvider"/>
334    </Schema>
335
336    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_0">
337      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
338      <Annotation Term="Redfish.Release" String="2018.3"/>
339
340      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_0_1.ExternalAccountProvider">
341        <NavigationProperty Name="Certificates" Type="CertificateCollection.CertificateCollection" ContainsTarget="true" Nullable="false">
342          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
343          <Annotation Term="OData.Description" String="The link to a collection of certificates that the external account provider uses."/>
344          <Annotation Term="OData.LongDescription" String="This property shall contain a link to a resource collection of type `CertificateCollection` that contains certificates the external account provider uses."/>
345          <Annotation Term="OData.AutoExpandReferences"/>
346        </NavigationProperty>
347      </EntityType>
348    </Schema>
349
350    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_1">
351      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
352      <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, clarifies the `LDAPSearchSettings` property descriptions, and adds a missing term to several properties to disallow them from being `null`."/>
353      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_0.ExternalAccountProvider"/>
354    </Schema>
355
356    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_2">
357      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
358      <Annotation Term="OData.Description" String="This version was created to update the descriptions of `Password`, `Token`, and `KerberosKeytab` properties.  It was also created to clarify the usage of the `LDAPService` property."/>
359      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_1.ExternalAccountProvider"/>
360    </Schema>
361
362    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_3">
363      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
364      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
365      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_2.ExternalAccountProvider"/>
366    </Schema>
367
368    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_4">
369      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
370      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
371      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_3.ExternalAccountProvider"/>
372    </Schema>
373
374    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_5">
375      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
376      <Annotation Term="OData.Description" String="This version was created to mark properties with values containing sensitive data as write-only."/>
377      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_4.ExternalAccountProvider"/>
378    </Schema>
379
380    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_6">
381      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
382      <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of `AccountProviderType`.  It was also created to expand the `LDAPService` value for `AccountProviderType` to allow for a scheme and port to be specified."/>
383      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_5.ExternalAccountProvider"/>
384    </Schema>
385
386    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_1_7">
387      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
388      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
389      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_6.ExternalAccountProvider"/>
390    </Schema>
391
392    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_2_0">
393      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
394      <Annotation Term="Redfish.Release" String="2020.4"/>
395      <Annotation Term="OData.Description" String="This version was created to add TACACS+ support."/>
396
397      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_1_4.ExternalAccountProvider">
398        <Property Name="TACACSplusService" Type="ExternalAccountProvider.v1_2_0.TACACSplusService">
399          <Annotation Term="OData.Description" String="The additional information needed to parse a TACACS+ services."/>
400          <Annotation Term="OData.LongDescription" String="This property shall contain additional information needed to parse a TACACS+ services.  This property should only be present inside a `TACACSplus` property."/>
401        </Property>
402        <Property Name="Priority" Type="Edm.Int64">
403          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
404          <Annotation Term="OData.Description" String="The authentication priority for the external account provider."/>
405          <Annotation Term="OData.LongDescription" String="This property shall contain the assigned priority for the specified external account provider.  The value `0` shall indicate the highest priority.  Increasing values shall represent decreasing priority.  If an external provider does not have a priority assignment or two or more external providers have the same priority, the behavior shall be determined by the Redfish service.  The priority is used to determine the order of authentication and authorization for each external account provider."/>
406          <Annotation Term="Validation.Minimum" Int="0"/>
407        </Property>
408      </EntityType>
409
410      <ComplexType Name="Authentication" BaseType="ExternalAccountProvider.v1_0_0.Authentication">
411        <Property Name="EncryptionKey" Type="Edm.String">
412          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Write"/>
413          <Annotation Term="OData.Description" String="Specifies the encryption key."/>
414          <Annotation Term="OData.LongDescription" String="This property shall contain the value of a symmetric encryption key for account services that support some form of encryption, obfuscation, or authentication such as TACACS+.  The value shall be `null` in responses.  The property shall accept a hexadecimal string whose length depends on the external account service, such as TACACS+.  A TACACS+ service shall use this property to specify the secret key as defined in RFC8907."/>
415          <Annotation Term="Validation.Pattern" String="^[0-9a-fA-F]+$"/>
416        </Property>
417       <Property Name="EncryptionKeySet" Type="Edm.Boolean">
418          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
419          <Annotation Term="OData.Description" String="Indicates if the `EncryptionKey` property is set."/>
420          <Annotation Term="OData.LongDescription" String="This property shall contain `true` if a valid value was provided for the `EncryptionKey` property.  Otherwise, the property shall contain `false`.  For a TACACS+ service, the value `false` shall indicate data obfuscation, as defined in section 4.5 of RFC8907, is disabled."/>
421        </Property>
422      </ComplexType>
423
424      <ComplexType Name="TACACSplusService">
425        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
426        <Annotation Term="OData.Description" String="Various settings to parse a TACACS+ service."/>
427        <Annotation Term="OData.LongDescription" String="This type shall contain settings for parsing a TACACS+ service."/>
428        <Property Name="PrivilegeLevelArgument" Type="Edm.String">
429          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
430          <Annotation Term="OData.Description" String="Indicates the name of the TACACS+ argument name in an authorization request."/>
431          <Annotation Term="OData.LongDescription" String="This property shall specify the name of the argument in a TACACS+ Authorization REPLY packet body, as defined in RFC8907, that contains the user's privilege level."/>
432        </Property>
433        <Property Name="PasswordExchangeProtocols" Type="Collection(ExternalAccountProvider.v1_2_0.TACACSplusPasswordExchangeProtocol)">
434          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
435          <Annotation Term="OData.Description" String="Indicates the allowed TACACS+ password exchange protocols."/>
436          <Annotation Term="OData.LongDescription" String="This property shall indicate all the allowed TACACS+ password exchange protocol described under section 5.4.2 of RFC8907."/>
437        </Property>
438      </ComplexType>
439
440      <EnumType Name="TACACSplusPasswordExchangeProtocol">
441        <Member Name="ASCII">
442          <Annotation Term="OData.Description" String="The ASCII Login method."/>
443          <Annotation Term="OData.LongDescription" String="This value shall indicate the ASCII Login flow as described under section 5.4.2 of RFC8907."/>
444        </Member>
445        <Member Name="PAP">
446          <Annotation Term="OData.Description" String="The PAP Login method."/>
447          <Annotation Term="OData.LongDescription" String="This value shall indicate the PAP Login flow as described under section 5.4.2 of RFC8907."/>
448        </Member>
449        <Member Name="CHAP">
450          <Annotation Term="OData.Description" String="The CHAP Login method."/>
451          <Annotation Term="OData.LongDescription" String="This value shall indicate the CHAP Login flow as described under section 5.4.2 of RFC8907."/>
452        </Member>
453        <Member Name="MSCHAPv1">
454          <Annotation Term="OData.Description" String="The MS-CHAP v1 Login method."/>
455          <Annotation Term="OData.LongDescription" String="This value shall indicate the MS-CHAP v1 Login flow as described under section 5.4.2 of RFC8907."/>
456        </Member>
457        <Member Name="MSCHAPv2">
458          <Annotation Term="OData.Description" String="The MS-CHAP v2 Login method."/>
459          <Annotation Term="OData.LongDescription" String="This value shall indicate the MS-CHAP v2 Login flow as described under section 5.4.2 of RFC8907."/>
460        </Member>
461      </EnumType>
462    </Schema>
463
464    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_2_1">
465      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
466      <Annotation Term="OData.Description" String="This version was created to mark properties with values containing sensitive data as write-only."/>
467      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_2_0.ExternalAccountProvider"/>
468    </Schema>
469
470    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_2_2">
471      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
472      <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of `AccountProviderType`.  It was also created to expand the `LDAPService` value for `AccountProviderType` to allow for a scheme and port to be specified."/>
473      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_2_1.ExternalAccountProvider"/>
474    </Schema>
475
476    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_2_3">
477      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
478      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
479      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_2_2.ExternalAccountProvider"/>
480    </Schema>
481
482    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_2_4">
483      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
484      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
485      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_2_3.ExternalAccountProvider"/>
486    </Schema>
487
488    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_3_0">
489      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
490      <Annotation Term="Redfish.Release" String="2021.2"/>
491
492      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_2_0.ExternalAccountProvider">
493        <Property Name="OAuth2Service" Type="ExternalAccountProvider.v1_3_0.OAuth2Service">
494          <Annotation Term="OData.Description" String="The additional information needed to parse an OAuth 2.0 service."/>
495          <Annotation Term="OData.LongDescription" String="This property shall contain additional information needed to parse an OAuth 2.0 service.  This property should only be present inside an `OAuth2` property."/>
496        </Property>
497      </EntityType>
498
499      <ComplexType Name="OAuth2Service">
500        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
501        <Annotation Term="OData.Description" String="Various settings to parse an OAuth 2.0 service."/>
502        <Annotation Term="OData.LongDescription" String="This type shall contain settings for parsing an OAuth 2.0 service."/>
503        <Property Name="Mode" Type="ExternalAccountProvider.v1_3_0.OAuth2Mode" Nullable="false">
504          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
505          <Annotation Term="OData.Description" String="The mode of operation for token validation."/>
506          <Annotation Term="OData.LongDescription" String="This property shall contain the mode of operation for token validation."/>
507        </Property>
508        <Property Name="Issuer" Type="Edm.String">
509          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
510          <Annotation Term="OData.Description" String="The issuer string of the OAuth 2.0 service.  Clients should configure this property if `Mode` contains `Offline`."/>
511          <Annotation Term="OData.LongDescription" String="This property shall contain the RFC8414-defined issuer string of the OAuth 2.0 service.  If the `Mode` property contains the value `Discovery`, this property shall contain the value of the `issuer` string from the OAuth 2.0 service's metadata and this property shall be read-only.  Clients should configure this property if `Mode` contains `Offline`."/>
512        </Property>
513        <Property Name="Audience" Type="Collection(Edm.String)" Nullable="false">
514          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
515          <Annotation Term="OData.Description" String="The allowable audience strings of the Redfish service."/>
516          <Annotation Term="OData.LongDescription" String="This property shall contain an array of allowable RFC7519-defined audience strings of the Redfish service.  The values shall uniquely identify the Redfish service.  For example, a MAC address or UUID for the manager can uniquely identify the service."/>
517        </Property>
518        <Property Name="OAuthServiceSigningKeys" Type="Edm.String">
519          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
520          <Annotation Term="OData.Description" String="The Base64-encoded signing keys of the issuer of the OAuth 2.0 service.  Clients should configure this property if `Mode` contains `Offline`."/>
521          <Annotation Term="OData.LongDescription" String="This property shall contain a Base64-encoded string of the RFC7517-defined signing keys of the issuer of the OAuth 2.0 service.  Services shall verify the token provided in the `Authorization` header of the request with the value of this property.  If the `Mode` property contains the value `Discovery`, this property shall contain the keys found at the URI specified by the `jwks_uri` string from the OAuth 2.0 service's metadata and this property shall be read-only.  Clients should configure this property if `Mode` contains `Offline`."/>
522        </Property>
523      </ComplexType>
524
525      <EnumType Name="OAuth2Mode">
526        <Member Name="Discovery">
527          <Annotation Term="OData.Description" String="OAuth 2.0 service information for token validation is downloaded by the service."/>
528          <Annotation Term="OData.LongDescription" String="This value shall indicate the service performs token validation from information found at the URIs specified by the `ServiceAddresses` property.  Services shall implement a caching method of this information so it's not necessary to retrieve metadata and key information for every request containing a token."/>
529        </Member>
530        <Member Name="Offline">
531          <Annotation Term="OData.Description" String="OAuth 2.0 service information for token validation is configured by a client.  Clients should configure the `Issuer` and `OAuthServiceSigningKeys` properties for this mode."/>
532          <Annotation Term="OData.LongDescription" String="This value shall indicate the service performs token validation from properties configured by a client.  Clients should configure the `Issuer` and `OAuthServiceSigningKeys` properties for this mode."/>
533        </Member>
534      </EnumType>
535    </Schema>
536
537    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_3_1">
538      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
539      <Annotation Term="OData.Description" String="This version was created to give guidance to clients to describe which properties should be configured if `Mode` in `OAuth2` contains `Offline`."/>
540      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_3_0.ExternalAccountProvider"/>
541    </Schema>
542
543    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_3_2">
544      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
545      <Annotation Term="OData.Description" String="This version was created to clarify the usage of `OAuthServiceSigningKeys` with token validation."/>
546      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_3_1.ExternalAccountProvider"/>
547    </Schema>
548
549    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_3_3">
550      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
551      <Annotation Term="OData.Description" String="This version was created to mark properties with values containing sensitive data as write-only."/>
552      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_3_2.ExternalAccountProvider"/>
553    </Schema>
554
555    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_3_4">
556      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
557      <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of `AccountProviderType`.  It was also created to expand the `LDAPService` value for `AccountProviderType` to allow for a scheme and port to be specified."/>
558      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_3_3.ExternalAccountProvider"/>
559    </Schema>
560
561    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_3_5">
562      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
563      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
564      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_3_4.ExternalAccountProvider"/>
565    </Schema>
566
567    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_3_6">
568      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
569      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
570      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_3_5.ExternalAccountProvider"/>
571    </Schema>
572
573    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_4_0">
574      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
575      <Annotation Term="Redfish.Release" String="2022.1"/>
576
577      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_3_0.ExternalAccountProvider"/>
578
579      <ComplexType Name="LDAPSearchSettings" BaseType="ExternalAccountProvider.v1_0_0.LDAPSearchSettings">
580        <Property Name="SSHKeyAttribute" Type="Edm.String">
581          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
582          <Annotation Term="OData.Description" String="The attribute name that contains the LDAP user's SSH public key entry."/>
583          <Annotation Term="OData.LongDescription" String="This property shall contain the attribute name that contains the LDAP user's SSH public key."/>
584        </Property>
585      </ComplexType>
586    </Schema>
587
588    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_4_1">
589      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
590      <Annotation Term="OData.Description" String="This version was created to give guidance to clients to describe which properties should be configured if `Mode` in `OAuth2` contains `Offline`."/>
591      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_4_0.ExternalAccountProvider"/>
592    </Schema>
593
594    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_4_2">
595      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
596      <Annotation Term="OData.Description" String="This version was created to clarify the usage of `OAuthServiceSigningKeys` with token validation."/>
597      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_4_1.ExternalAccountProvider"/>
598    </Schema>
599
600    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_4_3">
601      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
602      <Annotation Term="OData.Description" String="This version was created to mark properties with values containing sensitive data as write-only."/>
603      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_4_2.ExternalAccountProvider"/>
604    </Schema>
605
606    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_4_4">
607      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
608      <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of `AccountProviderType`.  It was also created to expand the `LDAPService` value for `AccountProviderType` to allow for a scheme and port to be specified."/>
609      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_4_3.ExternalAccountProvider"/>
610    </Schema>
611
612    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_4_5">
613      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
614      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
615      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_4_4.ExternalAccountProvider"/>
616    </Schema>
617
618    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_4_6">
619      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
620      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
621      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_4_5.ExternalAccountProvider"/>
622    </Schema>
623
624    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_5_0">
625      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
626      <Annotation Term="Redfish.Release" String="2022.3"/>
627
628      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_4_3.ExternalAccountProvider"/>
629
630      <ComplexType Name="RoleMapping" BaseType="ExternalAccountProvider.v1_0_0.RoleMapping">
631        <Property Name="MFABypass" Type="AccountService.MFABypass">
632          <Annotation Term="OData.Description" String="The multi-factor authentication bypass settings."/>
633          <Annotation Term="OData.LongDescription" String="This property shall contain the multi-factor authentication bypass settings."/>
634        </Property>
635      </ComplexType>
636    </Schema>
637
638    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_5_1">
639      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
640      <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of `AccountProviderType`.  It was also created to expand the `LDAPService` value for `AccountProviderType` to allow for a scheme and port to be specified."/>
641      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_5_0.ExternalAccountProvider"/>
642    </Schema>
643
644    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_5_2">
645      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
646      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
647      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_5_1.ExternalAccountProvider"/>
648    </Schema>
649
650    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_5_3">
651      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
652      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
653      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_5_2.ExternalAccountProvider"/>
654    </Schema>
655
656    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_6_0">
657      <Annotation Term="Redfish.Release" String="2023.1"/>
658      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
659
660      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_5_0.ExternalAccountProvider">
661        <Property Name="Retries" Type="Edm.Int64">
662          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
663          <Annotation Term="OData.Description" String="The number of times to retry connecting to an address in the `ServiceAddresses` property before attempting the next address in the array."/>
664          <Annotation Term="OData.LongDescription" String="This property shall contain the number of retries to attempt a connection to an address in the `ServiceAddresses` property before attempting a connection to the next address in the array or giving up.  If this property is not present, the service has internal policies for handling retries."/>
665        </Property>
666        <Property Name="TimeoutSeconds" Type="Edm.Int64">
667          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
668          <Annotation Term="OData.Description" String="The period of time, in seconds, this account service will wait for a response from an address of a user account provider before timing out."/>
669          <Annotation Term="OData.LongDescription" String="This property shall contain the period of time, in seconds, this account service will wait for a response from an address of a user account provider before timing out.  If this property is not present, the service has internal policies for handling timeouts."/>
670        </Property>
671      </EntityType>
672
673      <ComplexType Name="TACACSplusService" BaseType="ExternalAccountProvider.v1_2_0.TACACSplusService">
674        <Property Name="AuthorizationService" Type="Edm.String" Nullable="false">
675          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
676          <Annotation Term="OData.Description" String="The TACACS+ service authorization argument."/>
677          <Annotation Term="OData.LongDescription" String="This property shall contain the TACACS+ service authorization argument as defined by section 8.2 of RFC8907.  If this property is not present, the service defines the value to provide to the TACACS+ server."/>
678        </Property>
679        <Property Name="Oem" Type="Resource.Oem" Nullable="false">
680          <Annotation Term="OData.Description" String="The OEM extension property."/>
681          <Annotation Term="OData.LongDescription" String="This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."/>
682        </Property>
683      </ComplexType>
684
685      <ComplexType Name="OAuth2Service" BaseType="ExternalAccountProvider.v1_3_0.OAuth2Service">
686        <Property Name="Oem" Type="Resource.Oem" Nullable="false">
687          <Annotation Term="OData.Description" String="The OEM extension property."/>
688          <Annotation Term="OData.LongDescription" String="This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."/>
689        </Property>
690      </ComplexType>
691    </Schema>
692
693    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_6_1">
694      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
695      <Annotation Term="OData.Description" String="This version was created to clarify the descriptions for the values of `AccountProviderType`.  It was also created to expand the `LDAPService` value for `AccountProviderType` to allow for a scheme and port to be specified."/>
696      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_6_0.ExternalAccountProvider"/>
697    </Schema>
698
699    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_6_2">
700      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
701      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
702      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_6_1.ExternalAccountProvider"/>
703    </Schema>
704
705    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_6_3">
706      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
707      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
708      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_6_2.ExternalAccountProvider"/>
709    </Schema>
710
711    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_7_0">
712      <Annotation Term="Redfish.Release" String="2023.2"/>
713      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
714
715      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_6_1.ExternalAccountProvider"/>
716
717      <ComplexType Name="LDAPSearchSettings" BaseType="ExternalAccountProvider.v1_4_0.LDAPSearchSettings">
718        <Property Name="EmailAttribute" Type="Edm.String">
719          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
720          <Annotation Term="OData.Description" String="The attribute name that contains the LDAP user's email address."/>
721          <Annotation Term="OData.LongDescription" String="This property shall contain the attribute name that contains the LDAP user's email address.  If this value is not set by the user, or the property is not present, the value shall be `mail`."/>
722        </Property>
723      </ComplexType>
724    </Schema>
725
726    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_7_1">
727      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
728      <Annotation Term="OData.Description" String="This version was created to correct various typographical errors."/>
729      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_7_0.ExternalAccountProvider"/>
730    </Schema>
731
732    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ExternalAccountProvider.v1_7_2">
733      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
734      <Annotation Term="OData.Description" String="This version was created to force the regeneration of OpenAPI schemas to properly express nullable properties with external references.  It was also created to correct various typographical errors."/>
735      <EntityType Name="ExternalAccountProvider" BaseType="ExternalAccountProvider.v1_7_1.ExternalAccountProvider"/>
736    </Schema>
737
738  </edmx:DataServices>
739</edmx:Edmx>
740