1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by Walter F Hoehn, Jr (Columbia University in the City of New York) -->
3 <xs:schema targetNamespace="urn:mace:shibboleth:credentials:1.0" xmlns:credentials="urn:mace:shibboleth:credentials:1.0" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" elementFormDefault="qualified" attributeFormDefault="unqualified">
4 <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
5 <xs:element name="Credentials">
7 <xs:choice maxOccurs="unbounded">
8 <xs:element name="KeyStoreResolver">
10 <xs:documentation>Pulls credentials from a Java keystore.</xs:documentation>
14 <xs:extension base="credentials:BaseCredentialFinder">
16 <xs:element name="Path" type="xs:string"/>
17 <xs:element name="KeyAlias" type="xs:string"/>
18 <xs:element name="CertAlias" type="xs:string" minOccurs="0"/>
19 <xs:element name="StorePassword" type="xs:string"/>
20 <xs:element name="KeyPassword" type="xs:string" minOccurs="0"/>
22 <xs:attribute name="storeType" type="xs:string" use="optional" default="JKS"/>
27 <xs:element name="FileResolver">
29 <xs:documentation>Pulls credentials from files.</xs:documentation>
33 <xs:extension base="credentials:BaseCredentialFinder">
35 <xs:element name="Key">
38 <xs:element name="Path" type="xs:string"/>
40 <xs:attribute name="format" type="credentials:FormatType" use="optional" default="PEM"/>
41 <xs:attribute name="password" type="xs:string" use="optional"/>
44 <xs:element name="Certificate" minOccurs="0">
47 <xs:element name="Path" type="xs:string"/>
48 <xs:element name="CAPath" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
50 <xs:attribute name="format" type="credentials:FormatType" use="optional" default="PEM"/>
51 <xs:attribute name="password" type="xs:string" use="optional"/>
59 <xs:element name="CustomResolver">
61 <xs:documentation>Allows for specification of a Java class that loads credentials from a custom storage mechanism. </xs:documentation>
65 <xs:extension base="credentials:BaseCredentialFinder">
67 <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
69 <xs:attribute name="class" type="xs:string" use="required"/>
70 <xs:anyAttribute namespace="##any"/>
76 <xs:anyAttribute namespace="##any" processContents="lax"/>
79 <xs:simpleType name="FormatType">
80 <xs:restriction base="xs:string">
81 <xs:enumeration value="PEM"/>
82 <xs:enumeration value="DER"/>
83 <xs:enumeration value="PKCS12"/>
86 <xs:complexType name="BaseCredentialFinder">
87 <xs:attribute name="Id" type="xs:string" use="required"/>