Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F236988
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
15 KB
Referenced Files
None
Subscribers
None
View Options
diff --git a/kolab2.schema b/kolab2.schema
index 441da42..b8f0d32 100644
--- a/kolab2.schema
+++ b/kolab2.schema
@@ -1,454 +1,462 @@
# $Id$
# (c) 2003, 2004 Tassilo Erlewein <tassilo.erlewein@erfrakon.de>
# (c) 2003, 2004 Martin Konold <martin.konold@erfrakon.de>
# (c) 2003 Achim Frank <achim.frank@erfrakon.de>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# Redistributions of source code must retain the above copyright notice, this
# list of conditions and the following disclaimer.
#
# Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# The name of the author may not be used to endorse or promote products derived
# from this software without specific prior written permission.
#
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# This schema highly depends on the core.schema, cosine.schema and the inetorgperson.schema
# as provided by 3rd parties like OpenLDAP.
#
# slapd.conf then looks like
# include /kolab/etc/openldap/schema/core.schema
# include /kolab/etc/openldap/schema/cosine.schema
# include /kolab/local/etc/openldap/schema/inetorgperson.schema
# include /kolab/local/etc/openldap/schema/kolab2.schema
#
####################
# kolab attributes #
####################
# helper attribute to make the kolab root easily findable in
# a big ldap directory
attributetype ( 1.3.6.1.4.1.19414.2.1.1
NAME ( 'k' 'kolab' )
DESC 'Kolab attribute'
SUP name )
# kolabDeleteflag used to be a boolean but describes with Kolab 2
# the fqdn of the server which is requested to delete this objects
# in its local store
attributetype ( 1.3.6.1.4.1.19414.2.1.2
NAME 'kolabDeleteflag'
DESC 'Per host deletion status'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# alias used to provide alternative rfc822 email addresses for kolab users
attributetype ( 1.3.6.1.4.1.19414.2.1.3
NAME 'alias'
DESC 'RFC1274: RFC822 Mailbox'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# kolabEncryptedPassword is an asymmetrically (RSA) encrypted copy of the
# cleartext password. This is required in order to pass the password from
# the maintainance/administration application to the kolabHomeServer running the
# resource handler application in a secure maner
attributetype ( 1.3.6.1.4.1.19419.2.1.4
NAME 'kolabEncryptedPassword'
DESC 'base64 encoded public key encrypted Password'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
# hostname including the domain name like kolab-master.bsi.de
attributetype ( 1.3.6.1.4.1.19414.2.1.5
NAME ( 'fqhostname' 'fqdnhostname' )
DESC 'Fully qualified Hostname including full domain component'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# fqdn of all hosts in a multi-location setup
attributetype ( 1.3.6.1.4.1.19414.2.1.6
NAME 'kolabHost'
DESC 'Multivalued -- list of hostnames in a Kolab setup'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# fqdn of the server containg the actual user data
attributetype ( 1.3.6.1.4.1.19419.1.1.1.1
NAME 'kolabHomeServer'
DESC 'server which keeps the users mailbox'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# flag for allowing unrestriced length of mails
attributetype ( 1.3.6.1.4.1.19419.1.1.1.2
NAME 'unrestrictedMailSize'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# Specifies the email delegates.
# An email delegate can send email on behalf of the account
# which means using the "from" of the account.
# Delegates are specified by the syntax of rfc822 email addresses.
attributetype ( 1.3.6.1.4.1.19419.1.1.1.3
NAME 'kolabDelegate'
DESC 'Kolab user allowed to act as delegates - RFC822 Mailbox/Alias'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# For user, group and resource Kolab accounts
# Describes how to respond to invitations
# We keep the attribute as a string, but actually it can only have one
# of the following values:
#
# ACT_ALWAYS_ACCEPT
# ACT_ALWAYS_REJECT
# ACT_REJECT_IF_CONFLICTS
# ACT_MANUAL_IF_CONFLICTS
# ACT_MANUAL
# In addition one of these values may be prefixed with a primary email
# address followed by a colon like
# user@domain.tld: ACT_ALWAYS_ACCEPT
attributetype ( 1.3.6.1.4.1.19419.1.1.1.4
NAME ( 'kolabInvitationPolicy' 'kolabResourceAction' )
DESC 'Used by user, group and resource accounts to determine how to respond to invitations'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# time span from now to the future used for the free busy data
# measured in days
attributetype ( 1.3.6.1.4.1.19419.1.1.1.5
NAME 'kolabFreeBusyFuture'
DESC 'time in days for fb data towards the future'
EQUALITY integerMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
# time span from now to the past used for the free busy data
# measured in days
attributetype ( 1.3.6.1.4.1.19419.1.1.1.6
NAME 'kolabFreeBusyPast'
DESC 'time in days for fb data towards the past'
EQUALITY integerMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
# fqdn of the server as the default SMTP MTA
# not used in Kolab 2 currently as in Kolab 2 the
# default MTA is equivalent to the kolabHomeServer
attributetype ( 1.3.6.1.4.1.19419.1.1.1.7
NAME 'kolabHomeMTA'
DESC 'fqdn of default MTA'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
######################
# postfix attributes #
######################
attributetype ( 1.3.6.1.4.1.19414.2.1.501
NAME 'postfix-mydomain'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
attributetype ( 1.3.6.1.4.1.19414.2.1.502
NAME 'postfix-relaydomains'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
attributetype ( 1.3.6.1.4.1.19414.2.1.503
NAME 'postfix-mydestination'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
attributetype ( 1.3.6.1.4.1.19414.2.1.504
NAME 'postfix-mynetworks'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
attributetype ( 1.3.6.1.4.1.19414.2.1.505
NAME 'postfix-relayhost'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
attributetype ( 1.3.6.1.4.1.19414.2.1.506
NAME 'postfix-transport'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
attributetype ( 1.3.6.1.4.1.19414.2.1.507
NAME 'postfix-enable-virus-scan'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
attributetype ( 1.3.6.1.4.1.19414.2.1.508
NAME 'postfix-allow-unauthenticated'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
attributetype ( 1.3.6.1.4.1.19414.2.1.509
NAME 'postfix-virtual'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
##########################
# cyrus imapd attributes #
##########################
attributetype ( 1.3.6.1.4.1.19414.2.1.601
NAME 'cyrus-autocreatequota'
EQUALITY integerMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
attributetype ( 1.3.6.1.4.1.19414.2.1.602
NAME 'cyrus-admins'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# enable plain imap without ssl
attributetype ( 1.3.6.1.4.1.19414.2.1.603
NAME 'cyrus-imap'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# enable legacy pop3
attributetype ( 1.3.6.1.4.1.19414.2.1.604
NAME 'cyrus-pop3'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# user specific quota on the cyrus imap server
attributetype ( 1.3.6.1.4.1.19414.2.1.605
NAME 'cyrus-userquota'
DESC 'Mailbox hard quota limit in MB'
EQUALITY integerMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
# cyrus imapd access control list
# acls work with users and groups
attributetype ( 1.3.6.1.4.1.19414.2.1.651
NAME 'acl'
EQUALITY caseIgnoreIA5Match
SUBSTR caseIgnoreIA5SubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
# enable secure imap
attributetype ( 1.3.6.1.4.1.19414.2.1.606
NAME 'cyrus-imaps'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# enable secure pop3
attributetype ( 1.3.6.1.4.1.19414.2.1.607
NAME 'cyrus-pop3s'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# enable sieve support (required for forward and vacation services)
attributetype ( 1.3.6.1.4.1.19414.2.1.608
NAME 'cyrus-sieve'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# installation wide percentage which determines when to send a
# warning to the user
attributetype ( 1.3.6.1.4.1.19414.2.1.609
NAME 'cyrus-quotawarn'
EQUALITY integerMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
#############################
# apache and php attributes #
#############################
# enable plain http (no ssl)
attributetype ( 1.3.6.1.4.1.19414.2.1.701
NAME 'apache-http'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# Allow freebusy download without authenticating first
attributetype ( 1.3.6.1.4.1.19414.2.1.702
NAME 'apache-allow-unauthenticated-fb'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
##########################
# kolabfilter attributes #
##########################
# enable trustable From:
attributetype ( 1.3.6.1.4.1.19414.2.1.750
NAME 'kolabfilter-verify-from-header'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
# should Sender header be allowed instead of From
# when present?
attributetype ( 1.3.6.1.4.1.19414.2.1.751
NAME 'kolabfilter-allow-sender-header'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
+# Should reject messages with From headers that dont match
+# the envelope? Default is to rewrite the header
+attributetype ( 1.3.6.1.4.1.19414.2.1.752
+ NAME 'kolabfilter-reject-forged-from-header'
+ EQUALITY booleanMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
+
######################
# proftpd attributes #
######################
attributetype ( 1.3.6.1.4.1.19414.2.1.901
NAME 'proftpd-defaultquota'
EQUALITY integerMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
attributetype ( 1.3.6.1.4.1.19414.2.1.902
NAME 'proftpd-ftp'
EQUALITY booleanMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 )
attributetype ( 1.3.6.1.4.1.19414.2.1.903
NAME 'proftpd-userPassword'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
########################
# kolab object classes #
########################
# main kolab server configuration
# storing global values and user specific default values
# like kolabFreeBusyFuture and kolabFreeBusyPast
objectclass ( 1.3.6.1.4.1.19414.2.2.1
NAME 'kolab'
DESC 'Kolab server configuration'
SUP top STRUCTURAL
MUST k
MAY ( kolabHost $
postfix-mydomain $
postfix-relaydomains $
postfix-mydestination $
postfix-mynetworks $
postfix-relayhost $
postfix-transport $
postfix-virtual $
postfix-enable-virus-scan $
postfix-allow-unauthenticated $
cyrus-autocreatequota $
cyrus-quotawarn $
cyrus-autocreatequota $
cyrus-admins $
cyrus-imap $
cyrus-pop3 $
cyrus-imaps $
cyrus-pop3s $
cyrus-sieve $
apache-http $
apache-allow-unauthenticated-fb $
kolabfilter-verify-from-header $
kolabfilter-allow-sender-header $
+ kolabfilter-reject-forged-from-header $
proftpd-ftp $
proftpd-defaultquota $
kolabFreeBusyFuture $
kolabFreeBusyPast $
uid $
userPassword ) )
# shared folders are typically visible to everyone subscribed to
# the server without the need for an extra login
objectclass ( 1.3.6.1.4.1.19414.2.2.9
NAME 'kolabSharedFolder'
DESC 'Kolab public shared folder'
SUP top STRUCTURAL
MUST cn
MAY ( acl $
cyrus-userquota $
kolabHomeServer $
kolabDeleteflag ) )
# used as a plain node for the LDAP tree. In contrast to unix filesystem directories
# LDAP nodes can and often do also have contents/attributes. We use kolabNamedObject
# in order to put more structure in the directory tree.
objectclass ( 1.3.6.1.4.1.5322.13.1.1
NAME 'kolabNamedObject'
SUP top STRUCTURAL
MAY (cn $ ou) )
# kolab account
# we use an auxiliary in order to ease integration
# with existing inetOrgPerson objects
# Please note that userPassword is a may
# attribute in the schema but is mandatory for
# Kolab
objectclass ( 1.3.6.1.4.1.19414.3.2.2
NAME 'kolabInetOrgPerson'
DESC 'Kolab Internet Organizational Person'
SUP top AUXILIARY
MAY ( c $
alias $
kolabHomeServer $
kolabHomeMTA $
unrestrictedMailSize $
kolabDelegate $
kolabEncryptedPassword $
cyrus-userquota $
kolabInvitationPolicy $
kolabFreeBusyFuture $
calFBURL $
kolabDeleteflag ) )
# kolab organization with country support
objectclass ( 1.3.6.1.4.1.19414.3.2.3
NAME 'kolabOrganization'
DESC 'RFC2256: a Kolab organization'
SUP organization STRUCTURAL
MAY ( c $
mail $
kolabDeleteflag $
alias ) )
# kolab organizational unit with country support
objectclass ( 1.3.6.1.4.1.19414.3.2.4
NAME 'kolabOrganizationalUnit'
DESC 'a Kolab organizational unit'
SUP organizationalUnit STRUCTURAL
MAY ( c $
mail $
kolabDeleteflag $
alias ) )
# kolab groupOfNames with extra kolabDeleteflag and the required attribute mail.
# The mail attribute for kolab objects of the type kolabGroupOfNames is not arbitrary but
# MUST be a single attribute of the form cn@kolabdomain (e.g. employees@mydomain.com). The
# mail attribute MUST be worldwide unique.
objectclass ( 1.3.6.1.4.1.19414.3.2.5
NAME 'kolabGroupOfNames'
DESC 'Kolab group of names (DNs) derived from RFC2256'
SUP groupOfNames STRUCTURAL
MAY ( mail $
- kolabDeleteflag ) )
\ No newline at end of file
+ kolabDeleteflag ) )
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Fri, May 16, 11:13 AM (17 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
178359
Default Alt Text
(15 KB)
Attached To
Mode
R4 syncroton
Attached
Detach File
Event Timeline
Log In to Comment