Add explicit PreviousSession support
[java-idp.git] / resources / classpath / schema / shibboleth-2.0-idp-profile-handler.xsd
index ef01ecf..c1e0335 100644 (file)
             <xsd:extension base="RequestURIMappedProfileHandlerType" />
         </xsd:complexContent>
     </xsd:complexType>
+    
+    <xsd:complexType name="SAMLMetadata">
+        <xsd:annotation>
+            <xsd:documentation>Basic handler that returns a general status of the IdP.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexContent>
+            <xsd:extension base="RequestURIMappedProfileHandlerType">
+                <xsd:attribute name="metadataFile" type="xsd:string" use="required">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Location of the static IdP metadata file.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
 
     <xsd:complexType name="SAML2SSO">
         <xsd:annotation>
             <xsd:extension base="SAML2ProfileHandler" />
         </xsd:complexContent>
     </xsd:complexType>
+    
+    <xsd:complexType name="SAML2ArtifactResolution">
+        <xsd:annotation>
+            <xsd:documentation>Configuration type for SAML 2 artifact resolution profile handlers.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexContent>
+            <xsd:extension base="SAML2ProfileHandler">
+                <xsd:attribute name="artifactMapRef" type="xsd:string" default="shibboleth.ArtifactMap">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Reference to SAMLArtifactMap used by handler to resolve artifact strings into artifact objects.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
 
     <xsd:complexType name="SAML2ProfileHandler" abstract="true">
         <xsd:annotation>
             <xsd:extension base="SAML1ProfileHandler" />
         </xsd:complexContent>
     </xsd:complexType>
+    
+    <xsd:complexType name="SAML1ArtifactResolution">
+        <xsd:annotation>
+            <xsd:documentation>Configuration type for SAML 1 artifact resolution profile handlers.</xsd:documentation>
+        </xsd:annotation>
+        <xsd:complexContent>
+            <xsd:extension base="SAML1ProfileHandler">
+                <xsd:attribute name="artifactMapRef" type="xsd:string" default="shibboleth.ArtifactMap">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Reference to SAMLArtifactMap used by handler to resolve artifact strings into artifact objects.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
 
     <xsd:complexType name="SAML1ProfileHandler" abstract="true">
         <xsd:annotation>
             <xsd:extension base="ShibbolethProfileHandlerType" />
         </xsd:complexContent>
     </xsd:complexType>
+    
+    <xsd:complexType name="PreviousSession">
+        <xsd:complexContent>
+            <xsd:extension base="LoginHandlerType">
+                <xsd:attribute name="servletPath" type="xsd:string">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Optional servlet path to which the browser may be redirected.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="reportPreviousSessionAuthnMethod" type="xsd:boolean" default="false">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Whether this login handler should report its authentication method as PreviousSession 
+                            or the authentication method requested by the peer.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+                <xsd:attribute name="supportsPassiveAuthentication" type="xsd:boolean" default="false">
+                    <xsd:annotation>
+                        <xsd:documentation>
+                            Whether this login handler, when redirecting to a servlet, support passives authentication.
+                        </xsd:documentation>
+                    </xsd:annotation>
+                </xsd:attribute>
+            </xsd:extension>
+        </xsd:complexContent>
+    </xsd:complexType>
 
     <xsd:complexType name="RemoteUser">
         <xsd:complexContent>