123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- ~ JBoss, Home of Professional Open Source.
- ~ Copyright 2011, Red Hat, Inc., and individual contributors
- ~ as indicated by the @author tags. See the copyright.txt file in the
- ~ distribution for a full listing of individual contributors.
- ~
- ~ This is free software; you can redistribute it and/or modify it
- ~ under the terms of the GNU Lesser General Public License as
- ~ published by the Free Software Foundation; either version 2.1 of
- ~ the License, or (at your option) any later version.
- ~
- ~ This software is distributed in the hope that it will be useful,
- ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
- ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ~ Lesser General Public License for more details.
- ~
- ~ You should have received a copy of the GNU Lesser General Public
- ~ License along with this software; if not, write to the Free
- ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- -->
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- targetNamespace="urn:jboss:domain:remoting:1.1"
- xmlns="urn:jboss:domain:remoting:1.1"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- version="1.0">
- <!-- The remoting subsystem root element -->
- <xs:element name="subsystem" type="subsystem"/>
- <xs:complexType name="subsystem">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The configuration of the Remoting subsystem.
- The 'worker-thread-pool' element configures the worker thread pool.
- The nested "connector" element(s) define connectors for this subsystem.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="worker-thread-pool" type="workerThreadsType" minOccurs="0"/>
- <xs:element name="connector" type="connector" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="outbound-connections" minOccurs="0" type="outbound-connectionsType" />
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="workerThreadsType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The configuration of the worker thread pool.
- The attributes correspond to the following xnio options:
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="read-threads" type="xs:integer" use="optional"/>
- <xs:attribute name="write-threads" type="xs:integer" use="optional"/>
- <xs:attribute name="task-core-threads" type="xs:integer" use="optional"/>
- <xs:attribute name="task-max-threads" type="xs:integer" use="optional"/>
- <xs:attribute name="task-keepalive" type="xs:integer" use="optional"/>
- <xs:attribute name="task-limit" type="xs:integer" use="optional"/>
- </xs:complexType>
-
- <xs:complexType name="connector">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The configuration of a Remoting connector.
- The "name" attribute specifies the unique name of this connector.
- The "socket-binding" attribute specifies the name (or names) of the socket binding(s) to attach to.
- The optional nested "sasl" element contains the SASL authentication configuration for this connector.
- The optional nested "authentication-provider" element contains the name of the authentication provider to
- use for incoming connections.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:all>
- <xs:element name="sasl" type="sasl" minOccurs="0"/>
- <xs:element name="authentication-provider" type="ref" minOccurs="0"/>
- <xs:element name="properties" type="properties" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="socket-binding" type="name-list" use="required"/>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="security-realm" type="xs:string" use="optional"/>
- </xs:complexType>
- <xs:complexType name="sasl">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The configuration of the SASL authentication layer for this server.
- The optional nested "include-mechanisms" element contains a whitelist of allowed SASL mechanism names.
- No mechanisms will be allowed which are not present in this list.
- The optional nested "qop" element contains a list of quality-of-protection values, in decreasing order
- of preference.
- The optional nested "strength" element contains a list of cipher strength values, in decreasing order
- of preference.
- The optional nested "reuse-session" boolean element specifies whether or not the server should attempt
- to reuse previously authenticated session information. The mechanism may or may not support such reuse,
- and other factors may also prevent it.
- The optional nested "server-auth" boolean element specifies whether the server should authenticate to the
- client. Not all mechanisms may support this setting.
- The optional nested "policy" boolean element specifies a policy to use to narrow down the available set
- of mechanisms.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:all>
- <xs:element name="include-mechanisms" type="name-listType" minOccurs="0"/>
- <xs:element name="qop" type="qop-listType" minOccurs="0"/>
- <xs:element name="strength" type="strength" minOccurs="0"/>
- <xs:element name="reuse-session" type="boolean-element" minOccurs="0"/>
- <xs:element name="server-auth" type="boolean-element" minOccurs="0"/>
- <xs:element name="policy" type="policy" minOccurs="0"/>
- <xs:element name="properties" type="properties" minOccurs="0"/>
- </xs:all>
- </xs:complexType>
- <xs:complexType name="policy">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Policy criteria items to use in order to choose a SASL mechanism.
- The optional nested "forward-secrecy" element contains a boolean value which specifies whether mechanisms
- that implement forward secrecy between sessions are required. Forward secrecy means that breaking into
- one session will not automatically provide information for breaking into future sessions.
- The optional nested "no-active" element contains a boolean value which specifies whether mechanisms
- susceptible to active (non-dictionary) attacks are not permitted. "false" to permit, "true" to deny.
- The optional nested "no-anonymous" element contains a boolean value which specifies whether mechanisms
- that accept anonymous login are permitted. "false" to permit, "true" to deny.
- The optional nested "no-dictionary" element contains a boolean value which specifies whether mechanisms
- susceptible to passive dictionary attacks are permitted. "false" to permit, "true" to deny.
- The optional nested "no-plain-text" element contains a boolean value which specifies whether mechanisms
- susceptible to simple plain passive attacks (e.g., "PLAIN") are not permitted. "false" to permit, "true" to deny.
- The optional nested "pass-credentials" element contains a boolean value which specifies whether
- mechanisms that pass client credentials are required.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:all>
- <xs:element name="forward-secrecy" type="boolean-element" minOccurs="0"/>
- <xs:element name="no-active" type="boolean-element" minOccurs="0"/>
- <xs:element name="no-anonymous" type="boolean-element" minOccurs="0"/>
- <xs:element name="no-dictionary" type="boolean-element" minOccurs="0"/>
- <xs:element name="no-plain-text" type="boolean-element" minOccurs="0"/>
- <xs:element name="pass-credentials" type="boolean-element" minOccurs="0"/>
- </xs:all>
- </xs:complexType>
- <xs:complexType name="boolean-element">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- An element specifying a boolean value.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="value" type="xs:boolean" use="required"/>
- </xs:complexType>
- <xs:complexType name="name-listType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- An element specifying a string list.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="value" type="name-list" use="required"/>
- </xs:complexType>
- <xs:simpleType name="name-list">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- A set of string items.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:list itemType="xs:string"/>
- </xs:simpleType>
- <xs:complexType name="qop-listType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- An element specifying a qop list.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="value" type="qop-list" use="required"/>
- </xs:complexType>
- <xs:simpleType name="qop-list">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The SASL quality-of-protection value list. See http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/javax/security/sasl/Sasl.html#QOP
- for more information.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:list>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="auth"/>
- <xs:enumeration value="auth-int"/>
- <xs:enumeration value="auth-conf"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:list>
- </xs:simpleType>
- <xs:simpleType name="strength">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The SASL strength value list. See http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/javax/security/sasl/Sasl.html#STRENGTH
- for more information.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:list>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="low"/>
- <xs:enumeration value="medium"/>
- <xs:enumeration value="high"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:list>
- </xs:simpleType>
- <xs:complexType name="properties">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- A set of free-form properties.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element name="property" type="property"/>
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="property">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- A free-form property. The name is required; the value is optional.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="value" type="xs:string" use="optional"/>
- </xs:complexType>
- <xs:complexType name="ref">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- A reference to another named service.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="outbound-connectionsType">
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element name="local-outbound-connection" type="local-outbound-connectionType" />
- <xs:element name="remote-outbound-connection" type="remote-outbound-connectionType" />
- <xs:element name="outbound-connection" type="outbound-connectionType" />
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="base-outbound-connectionType">
- <xs:all>
- <xs:element name="properties" type="properties" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="outbound-connectionType">
- <xs:complexContent>
- <xs:extension base="base-outbound-connectionType">
- <xs:attribute name="uri" type="xs:anyURI" use="required"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="local-outbound-connectionType">
- <xs:complexContent>
- <xs:extension base="base-outbound-connectionType">
- <xs:attribute name="outbound-socket-binding-ref" type="xs:string" use="required"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="remote-outbound-connectionType">
- <xs:complexContent>
- <xs:extension base="base-outbound-connectionType">
- <xs:attribute name="outbound-socket-binding-ref" type="xs:string" use="required"/>
- <xs:attribute name="username" type="xs:string" use="optional"/>
- <xs:attribute name="security-realm" type="xs:string" use="optional"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:schema>
|