[jboss-cvs] JBossAS SVN: r64291 - in projects/security/security-jboss-sx/trunk/src/resources: schema and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Jul 26 02:24:49 EDT 2007


Author: anil.saldhana at jboss.com
Date: 2007-07-26 02:24:49 -0400 (Thu, 26 Jul 2007)
New Revision: 64291

Added:
   projects/security/security-jboss-sx/trunk/src/resources/schema/
   projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_4_1.xsd
   projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_5_0.xsd
   projects/security/security-jboss-sx/trunk/src/resources/schema/user-roles_1_0.xsd
Log:
add schemas

Added: projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_4_1.xsd
===================================================================
--- projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_4_1.xsd	                        (rev 0)
+++ projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_4_1.xsd	2007-07-26 06:24:49 UTC (rev 64291)
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id: security-config_4_1.xsd 45686 2006-06-20 04:47:48Z asaldhana $ -->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+   elementFormDefault="qualified"
+   xmlns:jaas="urn:jboss:security-config:4.1"
+   xmlns:jbxb="http://www.jboss.org/xml/ns/jbxb"
+   targetNamespace="urn:jboss:security-config:4.1">
+
+   <xsd:annotation>
+      <xsd:documentation><![CDATA[
+         The login-config.xml schema with jbossxb annotations that map conforming
+         documents to the org.jboss.security.auth.login.PolicyConfig.
+     $Id: security-config_4_1.xsd 45686 2006-06-20 04:47:48Z asaldhana $
+    This is the XML Schema for the jboss 4.1 security configuration descriptor.
+    The default version of the descriptor is found in conf/login-config.xml
+     and this version of the schema is indicated using:
+
+        <policy xmlns="urn:jboss:security-config:4.1"
+          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+          version="4.1">
+          ...
+        </policy>
+
+     The outline of a policy/application-policy is:
+     <policy>
+      <application-policy name="security-domain-name">
+       <authentication>
+         <login-module code="login.module1.class.name" flag="control_flag">
+           <module-option name = "option1-name">option1-value</module-option>
+           <module-option name = "option2-name">option2-value</module-option>
+           ...
+         </login-module>
+   
+         <login-module code="login.module2.class.name" flag="control_flag">
+           ...
+         </login-module>
+         ...
+       </authentication>
+      </application-policy>
+     </policy>
+    ]]></xsd:documentation>
+      <xsd:appinfo>
+         <jbxb:schemaBindings>
+            <jbxb:package name="org.jboss.security.config"/>
+            <jbxb:ignoreUnresolvedFieldOrClass>false</jbxb:ignoreUnresolvedFieldOrClass>
+         </jbxb:schemaBindings>
+      </xsd:appinfo>
+   </xsd:annotation>
+
+  <xsd:element name="policy">
+    <xsd:complexType>
+       <xsd:annotation>
+         <xsd:documentation>The policy element is the root of the security
+            configuration descriptor.</xsd:documentation>
+          <xsd:appinfo>
+             <jbxb:class impl="org.jboss.security.config.PolicyConfig"/>
+          </xsd:appinfo>
+       </xsd:annotation>
+
+      <xsd:sequence>
+        <xsd:element maxOccurs="unbounded" ref="jaas:application-policy"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="application-policy">
+    <xsd:complexType>
+       <xsd:annotation>
+          <xsd:documentation>The application-policy lists configuration for a
+             named policy. This currently only consists of the authentication
+             configuration. </xsd:documentation>
+          <xsd:appinfo>
+            <jbxb:class impl="org.jboss.security.config.ApplicationPolicyContainer"/>
+            <jbxb:addMethod name="add" valueType="org.jboss.security.config.ApplicationPolicy"/>
+          </xsd:appinfo>
+       </xsd:annotation>
+
+      <xsd:sequence>
+        <xsd:element ref="jaas:authentication"/>
+      </xsd:sequence>
+      <xsd:attribute name="name" use="required" type="xsd:string"/>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="authentication">
+    <xsd:annotation>
+      <xsd:documentation>The authentication element contains the login module
+         stack configuration. Each login module configuration is specified
+         using a login-module element.</xsd:documentation>
+       <xsd:appinfo>
+          <jbxb:skip/>
+       </xsd:appinfo>
+    </xsd:annotation>
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element maxOccurs="unbounded" ref="jaas:login-module"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="login-module">
+    <xsd:complexType>
+       <xsd:annotation>
+         <xsd:documentation>The login-module element defines a JAAS login module
+            configuration entry. Each entry must have a code and flag attribute
+            along with zero or more login module options specified via the
+            module-option element. </xsd:documentation>
+          <xsd:appinfo>
+             <jbxb:class impl="org.jboss.security.auth.login.AppConfigurationEntryHolder"/>
+          </xsd:appinfo>
+       </xsd:annotation>
+      <xsd:sequence>
+        <xsd:element minOccurs="0" maxOccurs="unbounded" ref="jaas:module-option"/>
+      </xsd:sequence>
+      <xsd:attribute name="code" use="required" type="xsd:string"/>
+      <xsd:attribute name="flag" use="required">
+        <xsd:annotation>
+           <xsd:documentation>The flag attribute controls how a login module
+              participates in the overall authentication proceedure.
+              Required - The LoginModule is required to succeed. If it
+              succeeds or fails, authentication still continues to proceed
+              down the LoginModule list.
+
+              Requisite - The LoginModule is required to succeed. If it succeeds,
+              authentication continues down the LoginModule list. If it fails,
+              control immediately returns to the application (authentication does not proceed
+              down the LoginModule list).
+
+              Sufficient - The LoginModule is  not required to succeed. If it does
+              succeed, control immediately returns to the application (authentication
+              does not proceed down the LoginModule list). If it fails,
+              authentication continues down the LoginModule list.
+                  
+              Optional - The LoginModule is not required to succeed. If it succeeds or
+              fails, authentication still continues to proceed down the
+              LoginModule list.
+                  
+              The overall authentication succeeds only if
+              all required and requisite LoginModules succeed. If a
+              sufficient LoginModule is configured and succeeds, then only
+              the required and requisite LoginModules prior to that
+              sufficient LoginModule need to have succeeded for the overall
+              authentication to succeed. If no required or requisite
+              LoginModules are configured for an application, then at least
+              one sufficient or optional LoginModule must succeed.
+           </xsd:documentation>
+        </xsd:annotation>
+        <xsd:simpleType>
+          <xsd:restriction base="xsd:string">
+            <xsd:enumeration value="required" />
+            <xsd:enumeration value="requisite" />
+            <xsd:enumeration value="sufficient" />
+            <xsd:enumeration value="optional" />
+          </xsd:restriction>
+        </xsd:simpleType>
+      </xsd:attribute>
+    </xsd:complexType>
+  </xsd:element>
+  <xsd:element name="module-option">
+    <xsd:complexType mixed="true">
+       <xsd:annotation>
+            <xsd:documentation>A module option defines a name, value pair that are
+            passed to a LoginModule when it is initialized during the login proceedure.
+            The name attribute defines the option name while the element value is the
+            option value. The type of the value can be anything from a string obtained
+            from the module-option body, to arbitary objects unmarshalled based on
+            the namespace associated with the module-option child element
+            </xsd:documentation>
+          <xsd:appinfo>
+             <!-- ModuleOption declares a constructor that takes name as a parameter
+                  while the value should be set with the setter.
+                  This use-case is not supported out-of-the-box. So, we use this container. -->
+             <jbxb:class impl="org.jboss.security.auth.login.ModuleOptionContainer"/>
+          </xsd:appinfo>
+       </xsd:annotation>
+      <xsd:sequence>
+        <xsd:any minOccurs="0" maxOccurs="1" namespace="##other" />
+      </xsd:sequence>
+      <xsd:attribute name="name" use="required" type="xsd:string"/>
+    </xsd:complexType>
+  </xsd:element>
+</xsd:schema>

Added: projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_5_0.xsd
===================================================================
--- projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_5_0.xsd	                        (rev 0)
+++ projects/security/security-jboss-sx/trunk/src/resources/schema/security-config_5_0.xsd	2007-07-26 06:24:49 UTC (rev 64291)
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id: security-config_5_0.xsd 56360 2006-08-28 20:51:27Z anil.saldhana at jboss.com $ -->
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:jbsx="urn:jboss:security-config:5.0" xmlns:jxb="http://java.sun.com/xml/ns/jaxb:2.0" targetNamespace="urn:jboss:security-config:5.0" elementFormDefault="qualified">
+	
+	<xsd:annotation>  
+      <xsd:appinfo>
+         <jbxb:schemaBindings>
+            <jbxb:package name="org.jboss.security.config"/>
+            <jbxb:ignoreUnresolvedFieldOrClass>
+               false</jbxb:ignoreUnresolvedFieldOrClass>
+         </jbxb:schemaBindings>
+      </xsd:appinfo>
+   </xsd:annotation>
+   
+	
+	<xsd:element name="policy" type="jbsx:PolicyConfig"/>
+	<xsd:complexType name="PolicyConfig">
+	
+         <xsd:annotation>
+            <xsd:appinfo>
+               <jbxb:class
+                  impl="org.jboss.security.config.PolicyConfig"/>
+            </xsd:appinfo>
+         </xsd:annotation>
+         
+		<xsd:sequence>
+			<xsd:element ref="jbsx:application-policy" maxOccurs="unbounded"/>
+		</xsd:sequence>
+	</xsd:complexType>
+	
+	<xsd:element name="application-policy">
+		<xsd:complexType>
+		    <xsd:annotation>
+                <xsd:appinfo> 
+                   <jbxb:class impl="org.jboss.security.config.ApplicationPolicyContainer"/>
+                   <jbxb:addMethod name="add" valueType="org.jboss.security.config.ApplicationPolicy"/>
+                </xsd:appinfo>
+            </xsd:annotation>
+			<xsd:sequence>
+				<xsd:choice>
+					<xsd:element ref="jbsx:authentication"/>
+					<xsd:element ref="jbsx:authentication-jaspi"/>
+				</xsd:choice>
+				<xsd:element ref="jbsx:authorization" minOccurs="0"/>
+				<xsd:element ref="jbsx:rolemapping" minOccurs="0"/>
+				<xsd:element ref="jbsx:audit" minOccurs="0"/>
+				<xsd:element ref="jbsx:identity-trust" minOccurs="0"/>
+			</xsd:sequence>
+			<xsd:attribute name="name" type="xsd:string" use="required"/>
+		</xsd:complexType>
+	</xsd:element>
+	
+	<xsd:element name="authentication" type="jbsx:authenticationInfo"/>
+	<xsd:element name="authentication-jaspi" type="jbsx:authenticationJaspiInfo"/>
+	<xsd:element name="authorization" type="jbsx:authorizationInfo"  />
+	<xsd:element name="rolemapping" type="jbsx:roleMappingInfo"/>
+	<xsd:element name="audit" type="jbsx:auditInfo"/>
+	<xsd:element name="identity-trust" type="jbsx:identityTrustInfo"/>
+	
+	
+	<xsd:complexType name="authenticationInfo">
+	    <xsd:annotation>
+           <xsd:appinfo>
+              <jbxb:skip/>
+           </xsd:appinfo>
+        </xsd:annotation>
+		<xsd:sequence>
+			<xsd:element ref="jbsx:login-module" maxOccurs="unbounded"/>
+		</xsd:sequence>
+	</xsd:complexType>
+	
+	<xsd:complexType name="authenticationJaspiInfo">
+	    <xsd:annotation>
+           <xsd:appinfo>
+              <jbxb:skip/>
+           </xsd:appinfo>
+        </xsd:annotation>
+		<xsd:sequence>
+			<xsd:element ref="jbsx:login-module-stack" maxOccurs="unbounded"/>
+			<xsd:element ref="jbsx:auth-module" maxOccurs="unbounded"/>
+		</xsd:sequence>
+	</xsd:complexType>
+	
+	<xsd:complexType name="authorizationInfo">
+	    <xsd:annotation>
+           <xsd:appinfo>
+             <jbxb:skip/>
+           </xsd:appinfo>
+        </xsd:annotation>
+		<xsd:sequence>
+			<xsd:element ref="jbsx:policy-module"/>
+		</xsd:sequence>
+	</xsd:complexType>
+	
+	<xsd:complexType name="roleMappingInfo">
+	    <xsd:annotation>
+            <xsd:appinfo>
+               <jbxb:class impl="org.jboss.security.mapping.config.RoleMappingConfigContainer"/>  
+               <jbxb:addMethod name="addMappingInfo"/>
+            </xsd:appinfo>
+         </xsd:annotation>
+		<xsd:sequence>
+			<xsd:element ref="jbsx:mapping-module"/>
+		</xsd:sequence>
+	</xsd:complexType>
+	
+	<xsd:complexType name="auditInfo">
+		<xsd:sequence>
+			<xsd:element ref="jbsx:provider-module"/>
+		</xsd:sequence>
+	</xsd:complexType>
+	
+	<xsd:complexType name="identityTrustInfo">
+		<xsd:sequence>
+			<xsd:element ref="jbsx:trust-module"/>
+		</xsd:sequence>
+	</xsd:complexType>
+	
+	<xsd:element name="login-module" type="jbsx:loginModuleInfo"/>
+	<xsd:complexType name="loginModuleInfo">
+	    <xsd:annotation>
+            <xsd:appinfo>
+               <jbxb:class
+                  impl="org.jboss.security.auth.login.AppConfigurationEntryHolder"/>
+            </xsd:appinfo>
+         </xsd:annotation>
+		<xsd:sequence>
+			<xsd:element ref="jbsx:module-option" minOccurs="0" maxOccurs="unbounded"/>
+		</xsd:sequence>
+		<xsd:attribute name="code" type="xsd:string" use="required"/>
+		<xsd:attribute name="flag" use="required">
+			<xsd:simpleType>
+				<xsd:restriction base="xsd:string">
+					<xsd:enumeration value="required"/>
+					<xsd:enumeration value="requisite"/>
+					<xsd:enumeration value="sufficient"/>
+					<xsd:enumeration value="optional"/>
+				</xsd:restriction>
+			</xsd:simpleType>
+		</xsd:attribute>
+	</xsd:complexType>
+	
+	<xsd:element name="module-option">
+		<xsd:complexType mixed="true">
+		   <xsd:annotation>
+             <xsd:appinfo>
+                 <!-- ModuleOption declares a constructor that takes name as a parameter
+                 while the value should be set with the setter.
+               
+                 This use-case is not supported out-of-the-box. So, we use this container. -->
+                 <jbxb:class
+                    impl="org.jboss.security.auth.login.ModuleOptionContainer"/>
+               </xsd:appinfo>
+            </xsd:annotation>
+			<xsd:sequence>
+				<xsd:any namespace="##other" minOccurs="0"/>
+			</xsd:sequence>
+			<xsd:attribute name="name" type="xsd:string" use="required"/>
+		</xsd:complexType>
+	</xsd:element>
+	
+	<xsd:element name="login-module-stack">
+		<xsd:complexType>
+		      <xsd:annotation>
+                 <xsd:appinfo> 
+                 <jbxb:class
+                    impl="org.jboss.security.auth.login.LoginModuleStackContainer"/>
+              </xsd:appinfo>
+            </xsd:annotation>
+			<xsd:sequence>
+				<xsd:element ref="jbsx:login-module" maxOccurs="unbounded"/>
+			</xsd:sequence>
+			<xsd:attribute name="name" type="xsd:string" use="required"/>
+		</xsd:complexType>
+	</xsd:element>
+	
+	<xsd:element name="auth-module" type="jbsx:authModuleInfo"/>
+	<xsd:complexType name="authModuleInfo">
+	     <xsd:annotation>
+            <xsd:appinfo>
+               <jbxb:class
+                  impl="org.jboss.security.auth.container.config.AuthModuleEntryHolder"/>
+            </xsd:appinfo>
+         </xsd:annotation>
+		<xsd:sequence>
+			<xsd:element ref="jbsx:module-option" minOccurs="0" maxOccurs="unbounded"/>
+		</xsd:sequence>
+		<xsd:attribute name="code" type="xsd:string" use="required"/>
+		<xsd:attribute name="login-module-stack-ref" type="xsd:string"/>
+	</xsd:complexType>
+	
+	<xsd:element name="policy-module">
+		<xsd:complexType>
+		   <xsd:annotation>
+              <xsd:appinfo>
+                <jbxb:class
+                  impl="org.jboss.security.authorization.config.AuthorizationConfigEntryHolder"/>
+              </xsd:appinfo>
+            </xsd:annotation>
+         
+			<xsd:sequence>
+				<xsd:element ref="jbsx:module-option" minOccurs="0" maxOccurs="unbounded"/>
+			</xsd:sequence>
+			<xsd:attribute name="code" type="xsd:string" use="required"/>
+			<xsd:attribute name="flag" use="required">
+				<xsd:simpleType>
+					<xsd:restriction base="xsd:string">
+						<xsd:enumeration value="required"/>
+						<xsd:enumeration value="requisite"/>
+						<xsd:enumeration value="sufficient"/>
+						<xsd:enumeration value="optional"/>
+					</xsd:restriction>
+				</xsd:simpleType>
+			</xsd:attribute>
+		</xsd:complexType>
+	</xsd:element>
+	
+	
+	<xsd:element name="mapping-module">
+		<xsd:complexType>
+		    <xsd:annotation>
+              <xsd:appinfo>
+                <jbxb:class impl="org.jboss.security.mapping.config.MappingConfigEntryHolder"/>
+              </xsd:appinfo>
+            </xsd:annotation>
+			<xsd:sequence>
+				<xsd:element ref="jbsx:module-option" minOccurs="0" maxOccurs="unbounded"/>
+			</xsd:sequence>
+			<xsd:attribute name="code" type="xsd:string" use="required"/>
+		</xsd:complexType>
+	</xsd:element>
+	
+	<xsd:element name="provider-module">
+		<xsd:complexType>
+		    <xsd:annotation>
+              <xsd:appinfo>
+                <jbxb:class impl="org.jboss.security.audit.config.AuditConfigEntryHolder"/>
+              </xsd:appinfo>
+            </xsd:annotation>
+			<xsd:sequence>
+				<xsd:element ref="jbsx:module-option" minOccurs="0" maxOccurs="unbounded"/>
+			</xsd:sequence>
+			<xsd:attribute name="code" type="xsd:string" use="required"/> 
+		</xsd:complexType>
+	</xsd:element>
+	
+	<xsd:element name="trust-module">
+		<xsd:complexType>
+		    <xsd:annotation>
+              <xsd:appinfo>
+                <jbxb:class impl="org.jboss.security.trust.config.TrustConfigEntryHolder"/>
+              </xsd:appinfo>
+            </xsd:annotation>
+			<xsd:sequence>
+				<xsd:element ref="jbsx:module-option" minOccurs="0" maxOccurs="unbounded"/>
+			</xsd:sequence>
+			<xsd:attribute name="code" type="xsd:string" use="required"/>
+		</xsd:complexType>
+	</xsd:element>
+	
+</xsd:schema>

Added: projects/security/security-jboss-sx/trunk/src/resources/schema/user-roles_1_0.xsd
===================================================================
--- projects/security/security-jboss-sx/trunk/src/resources/schema/user-roles_1_0.xsd	                        (rev 0)
+++ projects/security/security-jboss-sx/trunk/src/resources/schema/user-roles_1_0.xsd	2007-07-26 06:24:49 UTC (rev 64291)
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id: user-roles_1_0.xsd 34316 2005-07-31 23:13:44Z starksm $ -->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+   elementFormDefault="qualified"
+   targetNamespace="urn:jboss:user-roles"
+   xmlns:jbxb="http://www.jboss.org/xml/ns/jbxb"
+   xmlns:ur="urn:jboss:user-roles">
+
+   <xsd:element name="users">
+      <xsd:annotation>
+         <xsd:appinfo>
+            <jbxb:class impl="org.jboss.security.auth.spi.Users"/>
+         </xsd:appinfo>
+      </xsd:annotation>
+      <xsd:complexType>
+         <xsd:sequence>
+            <xsd:element minOccurs="1" maxOccurs="unbounded" ref="ur:user"/>
+         </xsd:sequence>
+      </xsd:complexType>
+   </xsd:element>
+   <xsd:element name="user">
+      <xsd:annotation>
+         <xsd:appinfo>
+            <jbxb:class impl="org.jboss.security.auth.spi.Users$User"/>
+            <jbxb:addMethod name="addUser" valueType="child"/>
+         </xsd:appinfo>
+      </xsd:annotation>
+      <xsd:complexType>
+         <xsd:sequence>
+            <xsd:element minOccurs="0" maxOccurs="unbounded" ref="ur:role"/>
+         </xsd:sequence>
+         <xsd:attribute name="name" use="required" type="xsd:NCName"/>
+         <xsd:attribute name="password" use="required" type="xsd:NCName"/>
+      </xsd:complexType>
+   </xsd:element>
+   <xsd:element name="role">
+      <xsd:annotation>
+         <xsd:appinfo>
+            <jbxb:mapEntry/>
+            <jbxb:putMethod name="addRole"
+               keyType="java.lang.String" valueType="java.lang.String" />
+         </xsd:appinfo>
+      </xsd:annotation>
+
+      <xsd:complexType>
+         <xsd:attribute name="group" use="optional" type="xsd:NCName" default="Roles">
+            <xsd:annotation>
+               <xsd:appinfo>
+                  <jbxb:mapEntryValue/>
+               </xsd:appinfo>
+            </xsd:annotation>
+         </xsd:attribute>
+         <xsd:attribute name="name" use="required" type="xsd:NCName">
+            <xsd:annotation>
+               <xsd:appinfo>
+                  <jbxb:mapEntryKey/>
+               </xsd:appinfo>
+            </xsd:annotation>
+         </xsd:attribute> 
+      </xsd:complexType>
+   </xsd:element>
+</xsd:schema>




More information about the jboss-cvs-commits mailing list