geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From djen...@apache.org
Subject svn commit: r774466 - in /geronimo/server/trunk/plugins/j2ee: geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd geronimo-security-builder/src/main/xsdconfig/xmlconfig.xml geronimo-web-2.5-builder/src/main/xsd/geronimo-web-2.0.1.xsd
Date Wed, 13 May 2009 18:18:30 GMT
Author: djencks
Date: Wed May 13 18:18:23 2009
New Revision: 774466

URL: http://svn.apache.org/viewvc?rev=774466&view=rev
Log:
GERONIMO-4249 some schema updates for jaspi support

Added:
    geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd
  (with props)
Modified:
    geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsdconfig/xmlconfig.xml
    geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/xsd/geronimo-web-2.0.1.xsd

Added: geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd?rev=774466&view=auto
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd
(added)
+++ geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd
Wed May 13 18:18:23 2009
@@ -0,0 +1,435 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+<xs:schema targetNamespace="http://geronimo.apache.org/xml/ns/geronimo-jaspi"
+           xmlns:jaspi="http://geronimo.apache.org/xml/ns/geronimo-jaspi"
+           xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
+           xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
+           elementFormDefault="qualified"
+           attributeFormDefault="unqualified"
+           jaxb:extensionBindingPrefixes="xjc"
+           jaxb:version="2.0">
+
+
+    <xs:annotation>
+        <xs:appinfo>
+            <jaxb:globalBindings>
+                <xjc:serializable uid="12343"/>
+            </jaxb:globalBindings>
+        </xs:appinfo>
+    </xs:annotation>
+
+    <xs:annotation>
+        <xs:documentation>
+            This is an XML Schema Definition for Geronimo JASPI implementation configurations.
+        </xs:documentation>
+    </xs:annotation>
+
+    <xs:element name="jaspi" type="jaspi:jaspiType">
+        <xs:annotation>
+            <xs:documentation>
+                The jaspi element is the root element of the jaspi configuration file.
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:element name="configProvider" type="jaspi:configProviderType">
+        <xs:annotation>
+            <xs:documentation>
+                Configuration of a single configProvider element
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="clientAuthConfig" type="jaspi:clientAuthConfigType">
+        <xs:annotation>
+            <xs:documentation>
+                Configuration of a single clientAuthConfig element
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="clientAuthContext" type="jaspi:clientAuthContextType">
+        <xs:annotation>
+            <xs:documentation>
+                Configuration of a single clientAuthContext element
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="clientAuthModule" type="jaspi:authModuleType">
+        <xs:annotation>
+            <xs:documentation>
+                Configuration of a single clientAuthModule element
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="serverAuthConfig" type="jaspi:serverAuthConfigType">
+        <xs:annotation>
+            <xs:documentation>
+                Configuration of a single serverAuthConfig element
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="serverAuthContext" type="jaspi:serverAuthContextType">
+        <xs:annotation>
+            <xs:documentation>
+                Configuration of a single serverAuthContext element
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+    <xs:element name="serverAuthModule" type="jaspi:authModuleType">
+        <xs:annotation>
+            <xs:documentation>
+                Configuration of a single serverAuthModule element
+            </xs:documentation>
+        </xs:annotation>
+    </xs:element>
+
+    <xs:complexType name="jaspiType">
+        <xs:sequence>
+            <xs:element name="configProvider" type="jaspi:configProviderType" minOccurs="0"
maxOccurs="unbounded">
+                <xs:annotation>
+                    <xs:documentation>
+                        Reference to configProvider element defined later in this xsd.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <!--<xs:complexType name="emptyType"/>-->
+
+
+    <xs:complexType name="configProviderType">
+        <xs:sequence>
+            <xs:annotation>
+                <xs:documentation>
+                    configProviderType configures a AuthConfigProvider
+                </xs:documentation>
+            </xs:annotation>
+
+            <xs:element name="messageLayer" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        messageLayer specifies the type of message this configProvider works
with, e.g Http
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="appContext" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        appContext is the name of the application in some profile-specified
format
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="description" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        description of the config provider
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:choice>
+                <xs:sequence>
+                    <xs:element name="className" type="xs:string">
+                        <xs:annotation>
+                            <xs:documentation>
+                                class name of the config provider implementation
+                            </xs:documentation>
+                        </xs:annotation>
+                    </xs:element>
+                    <xs:element name="properties"
+                                type="xs:string" minOccurs="0">
+                        <xs:annotation>
+                            <xs:documentation>
+                                The standard ConfigProviders take a Map(String, String) as
a single constructor argument.
+                            </xs:documentation>
+                        </xs:annotation>
+                    </xs:element>
+                </xs:sequence>
+
+                <xs:sequence>
+                    <xs:element name="clientAuthConfig" type="jaspi:clientAuthConfigType"
minOccurs="0" maxOccurs="unbounded">
+                        <xs:annotation>
+                            <xs:documentation>
+                                configures a ClientAuthConfig
+                            </xs:documentation>
+                        </xs:annotation>
+                    </xs:element>
+                    <xs:element name="serverAuthConfig" type="jaspi:serverAuthConfigType"
minOccurs="0" maxOccurs="unbounded">
+                        <xs:annotation>
+                            <xs:documentation>
+                                configures a ServerAuthConfig
+                            </xs:documentation>
+                        </xs:annotation>
+                    </xs:element>
+                </xs:sequence>
+            </xs:choice>
+
+            <xs:element name="persistent" type="xs:boolean" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        whether the configprovider is "persistent". so far it's not clear
what this might mean.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="classLoaderName" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        name of classloader to load any needed classes (e.g. custom config
providers, modules, policy stuff)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="clientAuthConfigType">
+        <xs:sequence>
+            <xs:element name="messageLayer" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        messageLayer specifies the type of message this configProvider works
with, e.g Http
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="appContext" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        appContext is the name of the application in some profile-specified
format
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="authenticationContextID" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        the constant value to be returned from getAuthContextID(MessageInfo
messageInfo)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="protected" type="xs:boolean">
+                <xs:annotation>
+                    <xs:documentation>
+                        value to be returned from isProtected.  Meaning unknown.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="clientAuthContext" type="jaspi:clientAuthContextType" minOccurs="0"
maxOccurs="unbounded">
+                <xs:annotation>
+                    <xs:documentation>
+                        configuration of a client auth context
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="clientAuthContextType">
+        <xs:sequence>
+            <xs:element name="messageLayer" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        messageLayer specifies the type of message this configProvider works
with, e.g Http
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="appContext" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        appContext is the name of the application in some profile-specified
format
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="authenticationContextID" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        the constant value to be returned from getAuthContextID(MessageInfo
messageInfo)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="clientAuthModule" type="jaspi:authModuleType" minOccurs="0"
maxOccurs="unbounded">
+                <xs:annotation>
+                    <xs:documentation>
+                        client auth module in this auth context
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="serverAuthConfigType">
+        <xs:sequence>
+            <xs:element name="messageLayer" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        messageLayer specifies the type of message this configProvider works
with, e.g Http
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="appContext" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        appContext is the name of the application in some profile-specified
format
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="authenticationContextID" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        the constant value to be returned from getAuthContextID(MessageInfo
messageInfo)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="protected" type="xs:boolean">
+                <xs:annotation>
+                    <xs:documentation>
+                        value to be returned from isProtected.  Meaning unknown.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="serverAuthContext" type="jaspi:serverAuthContextType" minOccurs="0"
maxOccurs="unbounded">
+                <xs:annotation>
+                    <xs:documentation>
+                        configuration of a server auth context
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="serverAuthContextType">
+        <xs:sequence>
+            <xs:element name="messageLayer" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        messageLayer specifies the type of message this configProvider works
with, e.g Http
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="appContext" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        appContext is the name of the application in some profile-specified
format
+                        defaults to parents value if missing
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="authenticationContextID" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        the constant value to be returned from getAuthContextID(MessageInfo
messageInfo)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="serverAuthModule" type="jaspi:authModuleType" minOccurs="0"
maxOccurs="unbounded">
+                <xs:annotation>
+                    <xs:documentation>
+                        server auth module in this auth context
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+
+    <xs:complexType name="authModuleType">
+        <xs:sequence>
+            <xs:element name="className" type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>
+                        class name of auth module
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="classLoaderName" type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        name of classloader to load any needed classes (e.g. custom config
providers, modules, policy stuff)
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="requestPolicy" type="jaspi:messagePolicyType" minOccurs="0">
+
+            </xs:element>
+            <xs:element name="responsePolicy" type="jaspi:messagePolicyType" minOccurs="0">
+
+            </xs:element>
+            <xs:element name="options"
+                        type="xs:string" minOccurs="0">
+                <xs:annotation>
+                    <xs:documentation>
+                        initialization options as a string-string map
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="messagePolicyType">
+         <xs:sequence>
+              <xs:element name="targetPolicy" type="jaspi:targetPolicyType" minOccurs="0"
maxOccurs="unbounded">
+                  <xs:annotation>
+                      <xs:documentation>
+                          target policy for the message policy
+                      </xs:documentation>
+                  </xs:annotation>
+              </xs:element>
+         </xs:sequence>
+        <xs:attribute name="mandatory" type="xs:boolean">
+            <xs:annotation>
+                <xs:documentation>
+                    supplies the isMandatory value of the policy
+                </xs:documentation>
+            </xs:annotation>
+
+        </xs:attribute>
+    </xs:complexType>
+
+    <xs:complexType name="targetPolicyType">
+        <xs:sequence>
+            <xs:element name="protectionPolicy" type="jaspi:protectionPolicyType">
+
+            </xs:element>
+            <xs:element name="target" type="jaspi:targetType" minOccurs="0" maxOccurs="unbounded">
+
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+    <xs:complexType name="protectionPolicyType">
+        <xs:sequence>
+            <xs:element name="className" type="xs:string">
+
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+    <xs:complexType name="targetType">
+        <xs:sequence>
+            <xs:element name="className" type="xs:string">
+
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+</xs:schema>

Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsd/geronimo-jaspi.xsd
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsdconfig/xmlconfig.xml
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsdconfig/xmlconfig.xml?rev=774466&r1=774465&r2=774466&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsdconfig/xmlconfig.xml
(original)
+++ geronimo/server/trunk/plugins/j2ee/geronimo-security-builder/src/main/xsdconfig/xmlconfig.xml
Wed May 13 18:18:23 2009
@@ -40,4 +40,9 @@
         <xb:package>org.apache.geronimo.xbeans.geronimo.credentialstore</xb:package>
     </xb:namespace>
 
+    <xb:namespace uri="http://geronimo.apache.org/xml/ns/geronimo-jaspi">
+        <xb:package>org.apache.geronimo.xbeans.geronimo.jaspi</xb:package>
+        <xb:prefix>Jaspi</xb:prefix>
+    </xb:namespace>
+
 </xb:config>

Modified: geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/xsd/geronimo-web-2.0.1.xsd
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/xsd/geronimo-web-2.0.1.xsd?rev=774466&r1=774465&r2=774466&view=diff
==============================================================================
--- geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/xsd/geronimo-web-2.0.1.xsd
(original)
+++ geronimo/server/trunk/plugins/j2ee/geronimo-web-2.5-builder/src/main/xsd/geronimo-web-2.0.1.xsd
Wed May 13 18:18:23 2009
@@ -25,6 +25,7 @@
     xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.2"
     xmlns:app="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
     xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2"
+    xmlns:jaspi="http://geronimo.apache.org/xml/ns/geronimo-jaspi"
     xmlns:ee="http://java.sun.com/xml/ns/persistence"
     xmlns:xs="http://www.w3.org/2001/XMLSchema"
     elementFormDefault="qualified"
@@ -35,7 +36,8 @@
     <xs:import namespace="http://geronimo.apache.org/xml/ns/j2ee/application-2.0" schemaLocation="geronimo-application-2.0.xsd"/>
     <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.2" schemaLocation="geronimo-module-1.2.xsd"/>
     <xs:import namespace="http://java.sun.com/xml/ns/persistence" schemaLocation="http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"/>
-
+    <xs:import namespace="http://geronimo.apache.org/xml/ns/geronimo-jaspi" schemaLocation="geronimo-jaspi.xsd"/>
+ 
     <xs:element name="web-app" type="web:web-appType"/>
     <xs:annotation>
         <xs:documentation>
@@ -94,6 +96,16 @@
 
             <xs:sequence minOccurs="0">
                 <xs:element name="security-realm-name" type="xs:string"/>
+                <xs:element name="authentication" type="web:authenticationType" minOccurs="0">
+                    <xs:annotation>
+                        <xs:documentation>
+                            The authentication element provides configuration for a specific
+                            jaspi AuthConfigProvider, ServerAuthConfig, ServerAuthContext,
or ServerAuthModule
+                            to be used for authentication rather than a standard authentication
method configured
+                            in web.xml.
+                        </xs:documentation>
+                    </xs:annotation>
+                </xs:element>
                 <xs:element ref="app:security" minOccurs="0"/>
             </xs:sequence>
 
@@ -113,6 +125,15 @@
         </xs:sequence>
     </xs:complexType>
 
+    <xs:complexType name="authenticationType">
+        <xs:choice minOccurs="0">
+            <xs:element ref="jaspi:configProvider"/>
+            <xs:element ref="jaspi:serverAuthConfig"/>
+            <xs:element ref="jaspi:serverAuthContext"/>
+            <xs:element ref="jaspi:serverAuthModule"/>
+        </xs:choice>
+    </xs:complexType>
+
     <xs:complexType name="container-configType">
         <xs:sequence>
             <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>



Mime
View raw message