summaryrefslogtreecommitdiff
path: root/bkucommon/src/main/resources/at/gv/egiz/bku/accesscontrol/config/AccessControl.xsd
diff options
context:
space:
mode:
Diffstat (limited to 'bkucommon/src/main/resources/at/gv/egiz/bku/accesscontrol/config/AccessControl.xsd')
-rw-r--r--bkucommon/src/main/resources/at/gv/egiz/bku/accesscontrol/config/AccessControl.xsd128
1 files changed, 128 insertions, 0 deletions
diff --git a/bkucommon/src/main/resources/at/gv/egiz/bku/accesscontrol/config/AccessControl.xsd b/bkucommon/src/main/resources/at/gv/egiz/bku/accesscontrol/config/AccessControl.xsd
new file mode 100644
index 00000000..9031ea78
--- /dev/null
+++ b/bkucommon/src/main/resources/at/gv/egiz/bku/accesscontrol/config/AccessControl.xsd
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+* Copyright 2008 Federal Chancellery Austria and
+* Graz University of Technology
+*
+* Licensed 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 xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:element name="AccessControl">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Chains"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="Chains">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="Chain"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="Chain">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="Rules"/>
+ </xs:sequence>
+ <xs:attribute name="Id" type="xs:ID"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="Rules">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="Rule"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="Rule">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="AuthClass"/>
+ <xs:choice minOccurs="0">
+ <xs:element name="DomainName" type="xs:string"/>
+ <xs:element name="IPv4Address" type="xs:string"/>
+ <xs:element name="URL" type="xs:string"/>
+ </xs:choice>
+ <xs:element ref="Command" minOccurs="0"/>
+ <xs:element ref="Action" />
+ <xs:element ref="UserInteraction"/>
+ </xs:sequence>
+ <xs:attribute name="Id" type="xs:ID" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="AuthClass">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="anonymous"/>
+ <xs:enumeration value="pseudoanonymous"/>
+ <xs:enumeration value="certified"/>
+ <xs:enumeration value="certifiedGovAgency"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="Command">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="Param"/>
+ </xs:sequence>
+ <xs:attribute name="Name" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="Param">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="Name" use="required" type="xs:NCName"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="Action">
+ <xs:complexType>
+ <xs:choice>
+ <!--xs:element name="ChainRef" type="xs:IDREF"/-->
+ <xs:element name="ChainRef" type="xs:string"/>
+ <xs:element name="RuleAction">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="allow"/>
+ <xs:enumeration value="deny"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="UserInteraction">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="none"/>
+ <xs:enumeration value="info"/>
+ <xs:enumeration value="confirm"/>
+ <xs:enumeration value="confirmWithSecret"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+</xs:schema>