0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!--
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster The contents of this file are subject to the terms
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster of the Common Development and Distribution License
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster (the License). You may not use this file except in
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster compliance with the License.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster You can obtain a copy of the License at
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster https://opensso.dev.java.net/public/CDDLv1.0.html or
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster opensso/legal/CDDLv1.0.txt
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster See the License for the specific language governing
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster permission and limitations under the License.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster When distributing Covered Code, include this CDDL
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster Header Notice in each file and include the License file
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster at opensso/legal/CDDLv1.0.txt.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster If applicable, add the following below the CDDL Header,
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster with the fields enclosed by brackets [] replaced by
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster your own identifying information:
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster "Portions Copyrighted [year] [name of copyright owner]"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster $Id: Auth_Module_Properties.dtd,v 1.3 2008/06/25 05:45:33 qcheng Exp $
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster-->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!--
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott Portions Copyrighted 2011-14 ForgeRock AS
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster-->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- This DTD defines the data structure that will be used by
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster each authentication module to specify its properties.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster It Provides definitions to initiate, construct and send
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster required callbacks information to the Authentication UI.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster Unique Declaration name for DOCTYPE tag:
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster "Authentication Module Properties XML Interface 1.0 DTD"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster-->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- ModuleProperties element is used to define properties for each
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster authentication module. Attribute "modulename" defines the name of
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster the module. e.g. "LDAP". -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT ModuleProperties ( Callbacks* ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ATTLIST ModuleProperties
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster version NMTOKEN "1.0"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster moduleName CDATA #REQUIRED
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- Callbacks element is used to request module requirements based on
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster module properties. The authentication module constructs the
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster callback objects which contains the information to be collected by
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster the authentication UI/client program. The client program collects the
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster credentials (by prompting the user) and returns the callback objects
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster with the required data. Attribute "length" is the number or length of
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster callbacks and attribute "order" is the sequence of the group of callbacks.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster Attribute 'header' is the text header information to be displayed on the UI.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster Attributes "timeout", "template" and "image" define the UI or page level
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster attributes for the UI customization. Attribute "error" defines the 'error
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster state' i.e. whether authentication framework/module needs to terminate the
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster authentication process (in case it is 'true'). -->
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey<!ELEMENT Callbacks ( NameCallback | HiddenValueCallback | PasswordCallback |
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster ChoiceCallback | ConfirmationCallback |
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott HttpCallback | RedirectCallback |
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott TextOutputCallback )* >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ATTLIST Callbacks
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster length NMTOKEN #REQUIRED
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster order NMTOKEN #REQUIRED
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster timeout CDATA "60"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster template CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster image CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster header CDATA "Authentication"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster error ( true | false ) "false"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- NameCallback element is used to obtain user name or any data which
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster can be entered by the user. The element Prompt will be used by the module
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster to set the prompt to be used by the client to get the name. The attribute
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster "isRequired" tells authentication UI whether the element corresponding to
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster this callback is a required field or not and attribute "attribute" is the
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster corresponding LDAP attribute for this callback value. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT NameCallback ( Prompt ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ATTLIST NameCallback
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster isRequired ( true | false ) "false"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster attribute CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster infoText CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey<!-- HiddenValueCallback element is used to hold any data required in a hidden
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey element. The Id will be the id of the element as it is produced on the page.
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey The attribute "isRequired" tells authentication UI whether the element
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey corresponding to this callback is a required field or not and attribute
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey "attribute" is the corresponding LDAP attribute for this callback value. -->
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey<!ELEMENT HiddenValueCallback ( Id ) >
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey<!ATTLIST HiddenValueCallback
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey isRequired ( true | false ) "false"
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey attribute CDATA ""
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey infoText CDATA ""
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey>
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- PasswordCallback element is used to obtain the password from
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster the user. The module sets the Prompt element along with the attribute
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster "echoPassword" if the password can be echoed by the client. The attribute
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott "isRequired" tells authentication UI whether the element corresponding to
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott this callback is a required field or not and attribute "attribute" is the
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster corresponding LDAP attribute for this callback value. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT PasswordCallback ( Prompt ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ATTLIST PasswordCallback
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster echoPassword ( true | false ) "false"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster isRequired ( true | false ) "false"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster attribute CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster infoText CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- ChoiceCallback element is used by the authentication module
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster to request the user to choose from the choice values where
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster "multipleSelectionsAllowed" attribute defines whether the user can
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster select/choose multiple values or single value from the available choice
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster values. The attribute "isRequired" tells authentication UI whether the
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster element corresponding to this callback is a required field or not and
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster attribute "attribute" is the corresponding LDAP attribute for this callback
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster value. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT ChoiceCallback ( Prompt, ChoiceValues ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ATTLIST ChoiceCallback
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster multipleSelectionsAllowed ( true | false ) "false"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster isRequired ( true | false ) "false"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster attribute CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster infoText CDATA ""
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- ConfirmationCallback element is used by the module to
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster send 'button' information (for multiple buttons) such as the 'button text'
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster which needs to be rendered on the UI page and receive the selected button
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster information from the UI. If there is only one button on the UI page then
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster module is not required to send this callback.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster NOTE : Currently we are supporting the use of this callback only to send
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster and receive 'button' information on the UI page. In future, we are planning
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster to support this callback with all its features. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT ConfirmationCallback ( OptionValues ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- HttpCallback element is used by the authentication module with Http
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster protocol based handshaking negotiation. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT HttpCallback (HttpHeader, Negotiation, HttpErrorCode)>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- RedirectCallback element is used by the authentication module when
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster redirect to a particulat URL is required with specific redirect data. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT RedirectCallback ( RedirectUrl | RedirectData* |
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster RedirectStatusParam |
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster RedirectBackUrlCookie ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ATTLIST RedirectCallback
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster method ( get | post ) "get"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- RedirectUrl element is used in RedirectCallback. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT RedirectUrl ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- RedirectStatusParam element is used in RedirectCallback. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT RedirectStatusParam ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- RedirectBackUrlCookie element is used in RedirectCallback. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT RedirectBackUrlCookie ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- RedirectData element is used in RedirectCallback as
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster Name / Value pair data. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT RedirectData ( Name, Value ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- Name element will be used by the RedirectCallback to send name/value pair
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster as part of the RedirectData element. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT Name ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- Prompt element will be used by the module to request the
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster client to display the prompt. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT Prompt ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey<!-- Prompt element will be used by the module to request the
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Baileyclient to display the prompt. -->
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey<!ELEMENT Id ( #PCDATA ) >
8d703e778adaffe0f9319b3e84f9fe9741466b33Brian Bailey
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- ChoiceValues element provides a list of choice values. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT ChoiceValues ( ChoiceValue+ ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- ChoiceValue element provides a single choice value.
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster The attribute "isDefault" specifies if the value has to be
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster selected by default when displayed. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT ChoiceValue ( Value ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ATTLIST ChoiceValue
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster isDefault ( true | false ) "false"
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster>
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!--OptionValues element provides a list/array of 'button' text information
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster to be rendered on the UI page. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT OptionValues ( OptionValue+ ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- OptionValue element provides a single 'button' text value. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT OptionValue ( Value ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- Value element will be used by the client to return a value
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster provided by the user (or service) back to the server. -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT Value ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- HttpHeader element is used in HttpCallback -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT HttpHeader ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- Negotiation element is used in HttpCallback to set the negotiation header
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster in HttpServletResponse -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT Negotiation ( #PCDATA ) >
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!-- Code element is used in HttpCallback to set the error code in negotiation
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster response -->
0a99555401a033704f1f171baab6db11fb5528f2Allan Foster<!ELEMENT HttpErrorCode ( #PCDATA ) >
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott<!-- Code element is used in TextOutputCallback to determine the text to
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott set -->
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott<!ELEMENT TextOutputCallback ( #PCDATA ) >
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott<!ATTLIST TextOutputCallback
f56a278c148b90f6c2a675e0c1fa8686ca5abed4Robert Wapshott messageType ( error | information | warning | script ) "information" >