rubynas 0.1.0.pre.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +23 -0
- data/.gitmodules +3 -0
- data/.rspec +2 -0
- data/.ruby-version +1 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +196 -0
- data/Guardfile +8 -0
- data/LICENSE.txt +7 -0
- data/Procfile +2 -0
- data/README.md +151 -0
- data/Rakefile +14 -0
- data/Vagrantfile +99 -0
- data/bin/rubynas +63 -0
- data/config.ru +5 -0
- data/doc/README_FOR_APP +2 -0
- data/doc/macosx_shares.png +0 -0
- data/doc/shares_overview.png +0 -0
- data/lib/rubynas.rb +35 -0
- data/lib/rubynas/apis/group_api.rb +51 -0
- data/lib/rubynas/apis/system_information_api.rb +13 -0
- data/lib/rubynas/apis/user_api.rb +85 -0
- data/lib/rubynas/apis/volume_api.rb +50 -0
- data/lib/rubynas/config.rb +63 -0
- data/lib/rubynas/db/migrate/20130302164415_devise_create_users.rb +46 -0
- data/lib/rubynas/db/migrate/20130322143040_create_volumes.rb +10 -0
- data/lib/rubynas/db/migrate/20130331102556_create_shared_folders.rb +10 -0
- data/lib/rubynas/db/migrate/20130331103034_create_shared_folder_services.rb +11 -0
- data/lib/rubynas/installers/base_installer.rb +70 -0
- data/lib/rubynas/installers/debian_installer.rb +199 -0
- data/lib/rubynas/installers/ubuntu_installer.rb +2 -0
- data/lib/rubynas/installers/ubuntu_precise_installer.rb +2 -0
- data/lib/rubynas/models/.gitkeep +0 -0
- data/lib/rubynas/models/ldap_group.rb +21 -0
- data/lib/rubynas/models/ldap_org_unit.rb +13 -0
- data/lib/rubynas/models/ldap_user.rb +31 -0
- data/lib/rubynas/models/shared_folder.rb +32 -0
- data/lib/rubynas/models/shared_folder_service.rb +15 -0
- data/lib/rubynas/models/volume.rb +16 -0
- data/lib/rubynas/services/afp_share_service.rb +9 -0
- data/lib/rubynas/services/service.rb +4 -0
- data/lib/rubynas/services/share_service.rb +3 -0
- data/lib/rubynas/version.rb +3 -0
- data/rubynas.gemspec +69 -0
- data/rubynas.ini +24 -0
- data/sandbox/ldap/base.ldif +50 -0
- data/sandbox/ldap/data/.gitkeep +0 -0
- data/sandbox/ldap/data/dc=rubynas,dc=com.ldif +14 -0
- data/sandbox/ldap/local.schema +6 -0
- data/sandbox/ldap/schema/README +80 -0
- data/sandbox/ldap/schema/apple.schema +1727 -0
- data/sandbox/ldap/schema/apple_auxillary.schema +20 -0
- data/sandbox/ldap/schema/collective.ldif +48 -0
- data/sandbox/ldap/schema/collective.schema +190 -0
- data/sandbox/ldap/schema/corba.ldif +42 -0
- data/sandbox/ldap/schema/corba.schema +239 -0
- data/sandbox/ldap/schema/core.ldif +591 -0
- data/sandbox/ldap/schema/core.schema +610 -0
- data/sandbox/ldap/schema/cosine.ldif +200 -0
- data/sandbox/ldap/schema/cosine.schema +2571 -0
- data/sandbox/ldap/schema/duaconf.ldif +83 -0
- data/sandbox/ldap/schema/duaconf.schema +261 -0
- data/sandbox/ldap/schema/dyngroup.ldif +71 -0
- data/sandbox/ldap/schema/dyngroup.schema +91 -0
- data/sandbox/ldap/schema/fmserver.schema +60 -0
- data/sandbox/ldap/schema/inetorgperson.ldif +69 -0
- data/sandbox/ldap/schema/inetorgperson.schema +155 -0
- data/sandbox/ldap/schema/java.ldif +59 -0
- data/sandbox/ldap/schema/java.schema +403 -0
- data/sandbox/ldap/schema/krb5-kdc.schema +134 -0
- data/sandbox/ldap/schema/microsoft.ext.schema +5383 -0
- data/sandbox/ldap/schema/microsoft.schema +4835 -0
- data/sandbox/ldap/schema/microsoft.std.schema +480 -0
- data/sandbox/ldap/schema/misc.ldif +45 -0
- data/sandbox/ldap/schema/misc.schema +75 -0
- data/sandbox/ldap/schema/netinfo.schema +240 -0
- data/sandbox/ldap/schema/nis.ldif +120 -0
- data/sandbox/ldap/schema/nis.schema +241 -0
- data/sandbox/ldap/schema/openldap.ldif +88 -0
- data/sandbox/ldap/schema/openldap.schema +54 -0
- data/sandbox/ldap/schema/pmi.ldif +123 -0
- data/sandbox/ldap/schema/pmi.schema +464 -0
- data/sandbox/ldap/schema/ppolicy.ldif +75 -0
- data/sandbox/ldap/schema/ppolicy.schema +531 -0
- data/sandbox/ldap/schema/samba.schema +179 -0
- data/sandbox/ldap/slapd.conf +99 -0
- data/spec/apis/group_api_spec.rb +97 -0
- data/spec/apis/system_information_api_spec.rb +27 -0
- data/spec/apis/user_api_spec.rb +113 -0
- data/spec/apis/volume_api_spec.rb +98 -0
- data/spec/factories/ldap_group.rb +16 -0
- data/spec/factories/ldap_users.rb +24 -0
- data/spec/factories/shared_folder_services.rb +9 -0
- data/spec/factories/shared_folders.rb +15 -0
- data/spec/factories/users.rb +8 -0
- data/spec/factories/volumes.rb +10 -0
- data/spec/installer/base_installer_spec.rb +35 -0
- data/spec/installer/debian_installer_spec.rb +86 -0
- data/spec/models/ldap_group_spec.rb +21 -0
- data/spec/models/ldap_org_unit_spec.rb +19 -0
- data/spec/models/ldap_user_spec.rb +19 -0
- data/spec/models/shared_folder_service_spec.rb +25 -0
- data/spec/models/shared_folder_spec.rb +27 -0
- data/spec/models/volume_spec.rb +5 -0
- data/spec/services/afp_share_service_spec.rb +5 -0
- data/spec/services/service_spec.rb +5 -0
- data/spec/services/share_service_spec.rb +5 -0
- data/spec/spec_helper.rb +30 -0
- data/spec/support/db_cleaner.rb +16 -0
- data/spec/support/factory_girl.rb +7 -0
- data/spec/support/logger.rb +1 -0
- data/spec/support/rack-test.rb +6 -0
- metadata +633 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# $OpenLDAP$
|
|
2
|
+
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
|
3
|
+
##
|
|
4
|
+
## Copyright 1998-2011 The OpenLDAP Foundation.
|
|
5
|
+
## All rights reserved.
|
|
6
|
+
##
|
|
7
|
+
## Redistribution and use in source and binary forms, with or without
|
|
8
|
+
## modification, are permitted only as authorized by the OpenLDAP
|
|
9
|
+
## Public License.
|
|
10
|
+
##
|
|
11
|
+
## A copy of this license is available in the file LICENSE in the
|
|
12
|
+
## top-level directory of the distribution or, alternatively, at
|
|
13
|
+
## <http://www.OpenLDAP.org/license.html>.
|
|
14
|
+
#
|
|
15
|
+
# DUA schema from draft-joslin-config-schema (a work in progress)
|
|
16
|
+
#
|
|
17
|
+
# This file was automatically generated from duaconf.schema; see that file
|
|
18
|
+
# for complete references.
|
|
19
|
+
#
|
|
20
|
+
dn: cn=duaconf,cn=schema,cn=config
|
|
21
|
+
objectClass: olcSchemaConfig
|
|
22
|
+
cn: duaconf
|
|
23
|
+
olcObjectIdentifier: {0}DUAConfSchemaOID 1.3.6.1.4.1.11.1.3.1
|
|
24
|
+
olcAttributeTypes: {0}( DUAConfSchemaOID:1.0 NAME 'defaultServerList' DESC 'De
|
|
25
|
+
fault LDAP server host address used by a DUA' EQUALITY caseIgnoreMatch SYNTAX
|
|
26
|
+
1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
|
|
27
|
+
olcAttributeTypes: {1}( DUAConfSchemaOID:1.1 NAME 'defaultSearchBase' DESC 'De
|
|
28
|
+
fault LDAP base DN used by a DUA' EQUALITY distinguishedNameMatch SYNTAX 1.3.
|
|
29
|
+
6.1.4.1.1466.115.121.1.12 SINGLE-VALUE )
|
|
30
|
+
olcAttributeTypes: {2}( DUAConfSchemaOID:1.2 NAME 'preferredServerList' DESC '
|
|
31
|
+
Preferred LDAP server host addresses to be used by a DUA' EQUALITY
|
|
32
|
+
caseIgnoreMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
|
|
33
|
+
olcAttributeTypes: {3}( DUAConfSchemaOID:1.3 NAME 'searchTimeLimit' DESC 'Maxi
|
|
34
|
+
mum time in seconds a DUA should allow for a search to complete' E
|
|
35
|
+
QUALITY integerMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
|
|
36
|
+
olcAttributeTypes: {4}( DUAConfSchemaOID:1.4 NAME 'bindTimeLimit' DESC 'Maximu
|
|
37
|
+
m time in seconds a DUA should allow for the bind operation to com
|
|
38
|
+
plete' EQUALITY integerMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALU
|
|
39
|
+
E )
|
|
40
|
+
olcAttributeTypes: {5}( DUAConfSchemaOID:1.5 NAME 'followReferrals' DESC 'Tell
|
|
41
|
+
s DUA if it should follow referrals returned by a DSA search resul
|
|
42
|
+
t' EQUALITY booleanMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
|
|
43
|
+
olcAttributeTypes: {6}( DUAConfSchemaOID:1.16 NAME 'dereferenceAliases' DESC '
|
|
44
|
+
Tells DUA if it should dereference aliases' EQUALITY booleanMatch SYNTAX 1.3.
|
|
45
|
+
6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
|
|
46
|
+
olcAttributeTypes: {7}( DUAConfSchemaOID:1.6 NAME 'authenticationMethod' DESC
|
|
47
|
+
'A keystring which identifies the type of authentication method us
|
|
48
|
+
ed to contact the DSA' EQUALITY caseIgnoreMatch SYNTAX 1.3.6.1.4.1.1466.115.1
|
|
49
|
+
21.1.15 SINGLE-VALUE )
|
|
50
|
+
olcAttributeTypes: {8}( DUAConfSchemaOID:1.7 NAME 'profileTTL' DESC 'Time to l
|
|
51
|
+
ive, in seconds, before a client DUA should re-read this configura
|
|
52
|
+
tion profile' EQUALITY integerMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SING
|
|
53
|
+
LE-VALUE )
|
|
54
|
+
olcAttributeTypes: {9}( DUAConfSchemaOID:1.14 NAME 'serviceSearchDescriptor' D
|
|
55
|
+
ESC 'LDAP search descriptor list used by a DUA' EQUALITY caseExactMatch SYNTA
|
|
56
|
+
X 1.3.6.1.4.1.1466.115.121.1.15 )
|
|
57
|
+
olcAttributeTypes: {10}( DUAConfSchemaOID:1.9 NAME 'attributeMap' DESC 'Attrib
|
|
58
|
+
ute mappings used by a DUA' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.14
|
|
59
|
+
66.115.121.1.26 )
|
|
60
|
+
olcAttributeTypes: {11}( DUAConfSchemaOID:1.10 NAME 'credentialLevel' DESC 'Id
|
|
61
|
+
entifies type of credentials a DUA should use when binding to the
|
|
62
|
+
LDAP server' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
|
|
63
|
+
SINGLE-VALUE )
|
|
64
|
+
olcAttributeTypes: {12}( DUAConfSchemaOID:1.11 NAME 'objectclassMap' DESC 'Obj
|
|
65
|
+
ectclass mappings used by a DUA' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4
|
|
66
|
+
.1.1466.115.121.1.26 )
|
|
67
|
+
olcAttributeTypes: {13}( DUAConfSchemaOID:1.12 NAME 'defaultSearchScope' DESC
|
|
68
|
+
'Default search scope used by a DUA' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6
|
|
69
|
+
.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
|
|
70
|
+
olcAttributeTypes: {14}( DUAConfSchemaOID:1.13 NAME 'serviceCredentialLevel' D
|
|
71
|
+
ESC 'Identifies type of credentials a DUA should use when binding
|
|
72
|
+
to the LDAP server for a specific service' EQUALITY caseIgnoreIA5M
|
|
73
|
+
atch SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
|
|
74
|
+
olcAttributeTypes: {15}( DUAConfSchemaOID:1.15 NAME 'serviceAuthenticationMeth
|
|
75
|
+
od' DESC 'Authentication method used by a service of the DUA' EQUALITY caseIg
|
|
76
|
+
noreMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
|
|
77
|
+
olcObjectClasses: {0}( DUAConfSchemaOID:2.5 NAME 'DUAConfigProfile' DESC 'Abst
|
|
78
|
+
raction of a base configuration for a DUA' SUP top STRUCTURAL MUST cn MAY ( d
|
|
79
|
+
efaultServerList $ preferredServerList $ defaultSearchBase $ defaultSearchSco
|
|
80
|
+
pe $ searchTimeLimit $ bindTimeLimit $ credentialLevel $ authenticationMethod
|
|
81
|
+
$ followReferrals $ dereferenceAliases $ serviceSearchDescriptor $ serviceCr
|
|
82
|
+
edentialLevel $ serviceAuthenticationMethod $ objectclassMap $ attributeMap $
|
|
83
|
+
profileTTL ) )
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
# $OpenLDAP$
|
|
2
|
+
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
|
3
|
+
##
|
|
4
|
+
## Copyright 1998-2011 The OpenLDAP Foundation.
|
|
5
|
+
## All rights reserved.
|
|
6
|
+
##
|
|
7
|
+
## Redistribution and use in source and binary forms, with or without
|
|
8
|
+
## modification, are permitted only as authorized by the OpenLDAP
|
|
9
|
+
## Public License.
|
|
10
|
+
##
|
|
11
|
+
## A copy of this license is available in the file LICENSE in the
|
|
12
|
+
## top-level directory of the distribution or, alternatively, at
|
|
13
|
+
## <http://www.OpenLDAP.org/license.html>.
|
|
14
|
+
|
|
15
|
+
# DUA schema from draft-joslin-config-schema (a work in progress)
|
|
16
|
+
|
|
17
|
+
# Contents of this file are subject to change (including deletion)
|
|
18
|
+
# without notice.
|
|
19
|
+
#
|
|
20
|
+
# Not recommended for production use!
|
|
21
|
+
# Use with extreme caution!
|
|
22
|
+
|
|
23
|
+
## Notes:
|
|
24
|
+
## - The matching rule for attributes followReferrals and dereferenceAliases
|
|
25
|
+
## has been changed to booleanMatch since their syntax is boolean
|
|
26
|
+
## - There was a typo in the name of the dereferenceAliases attributeType
|
|
27
|
+
## in the DUAConfigProfile objectClass definition
|
|
28
|
+
## - Credit goes to the original Authors
|
|
29
|
+
|
|
30
|
+
#
|
|
31
|
+
# Application Working Group M. Ansari
|
|
32
|
+
# INTERNET-DRAFT Sun Microsystems, Inc.
|
|
33
|
+
# Expires Febuary 2003 L. Howard
|
|
34
|
+
# PADL Software Pty. Ltd.
|
|
35
|
+
# B. Joslin [ed.]
|
|
36
|
+
# Hewlett-Packard Company
|
|
37
|
+
#
|
|
38
|
+
# September 15th, 2003
|
|
39
|
+
# Intended Category: Informational
|
|
40
|
+
#
|
|
41
|
+
#
|
|
42
|
+
# A Configuration Schema for LDAP Based
|
|
43
|
+
# Directory User Agents
|
|
44
|
+
# <draft-joslin-config-schema-07.txt>
|
|
45
|
+
#
|
|
46
|
+
#Status of this Memo
|
|
47
|
+
#
|
|
48
|
+
# This memo provides information for the Internet community. This
|
|
49
|
+
# memo does not specify an Internet standard of any kind. Distribu-
|
|
50
|
+
# tion of this memo is unlimited.
|
|
51
|
+
#
|
|
52
|
+
# This document is an Internet-Draft and is in full conformance with
|
|
53
|
+
# all provisions of Section 10 of RFC2026.
|
|
54
|
+
#
|
|
55
|
+
# This document is an Internet-Draft. Internet-Drafts are working
|
|
56
|
+
# documents of the Internet Engineering Task Force (IETF), its areas,
|
|
57
|
+
# and its working groups. Note that other groups may also distribute
|
|
58
|
+
# working documents as Internet-Drafts.
|
|
59
|
+
#
|
|
60
|
+
# Internet-Drafts are draft documents valid for a maximum of six
|
|
61
|
+
# months. Internet-Drafts may be updated, replaced, or made obsolete
|
|
62
|
+
# by other documents at any time. It is not appropriate to use
|
|
63
|
+
# Internet-Drafts as reference material or to cite them other than as
|
|
64
|
+
# a "working draft" or "work in progress".
|
|
65
|
+
#
|
|
66
|
+
# To learn the current status of any Internet-Draft, please check the
|
|
67
|
+
# 1id-abstracts.txt listing contained in the Internet-Drafts Shadow
|
|
68
|
+
# Directories on ds.internic.net (US East Coast), nic.nordu.net
|
|
69
|
+
# (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
|
|
70
|
+
# Rim).
|
|
71
|
+
#
|
|
72
|
+
# Distribution of this document is unlimited.
|
|
73
|
+
#
|
|
74
|
+
#
|
|
75
|
+
# Abstract
|
|
76
|
+
#
|
|
77
|
+
# This document describes a mechanism for global configuration of
|
|
78
|
+
# similar directory user agents. This document defines a schema for
|
|
79
|
+
# configuration of these DUAs that may be discovered using the Light-
|
|
80
|
+
# weight Directory Access Protocol in RFC 2251[17]. A set of attri-
|
|
81
|
+
# bute types and an objectclass are proposed, along with specific
|
|
82
|
+
# guidelines for interpreting them. A significant feature of the
|
|
83
|
+
# global configuration policy for DUAs is a mechanism that allows
|
|
84
|
+
# DUAs to re-configure their schema to that of the end user's
|
|
85
|
+
# environment. This configuration is achieved through attribute and
|
|
86
|
+
# objectclass mapping. This document is intended to be a skeleton
|
|
87
|
+
# for future documents that describe configuration of specific DUA
|
|
88
|
+
# services.
|
|
89
|
+
#
|
|
90
|
+
#
|
|
91
|
+
# [trimmed]
|
|
92
|
+
#
|
|
93
|
+
#
|
|
94
|
+
# 2. General Issues
|
|
95
|
+
#
|
|
96
|
+
# The schema defined by this document is defined under the "DUA Con-
|
|
97
|
+
# figuration Schema." This schema is derived from the OID: iso (1)
|
|
98
|
+
# org (3) dod (6) internet (1) private (4) enterprises (1) Hewlett-
|
|
99
|
+
# Packard Company (11) directory (1) LDAP-UX Integration Project (3)
|
|
100
|
+
# DUA Configuration Schema (1). This OID is represented in this
|
|
101
|
+
# document by the keystring "DUAConfSchemaOID"
|
|
102
|
+
# (1.3.6.1.4.1.11.1.3.1).
|
|
103
|
+
objectidentifier DUAConfSchemaOID 1.3.6.1.4.1.11.1.3.1
|
|
104
|
+
#
|
|
105
|
+
# 2.2 Attributes
|
|
106
|
+
#
|
|
107
|
+
# The attributes and classes defined in this document are summarized
|
|
108
|
+
# below.
|
|
109
|
+
#
|
|
110
|
+
# The following attributes are defined in this document:
|
|
111
|
+
#
|
|
112
|
+
# preferredServerList
|
|
113
|
+
# defaultServerList
|
|
114
|
+
# defaultSearchBase
|
|
115
|
+
# defaultSearchScope
|
|
116
|
+
# authenticationMethod
|
|
117
|
+
# credentialLevel
|
|
118
|
+
# serviceSearchDescriptor
|
|
119
|
+
#
|
|
120
|
+
#
|
|
121
|
+
#
|
|
122
|
+
# Joslin [Page 3]
|
|
123
|
+
# Internet-Draft DUA Configuration Schema October 2002
|
|
124
|
+
#
|
|
125
|
+
#
|
|
126
|
+
# serviceCredentialLevel
|
|
127
|
+
# serviceAuthenticationMethod
|
|
128
|
+
# attributeMap
|
|
129
|
+
# objectclassMap
|
|
130
|
+
# searchTimeLimit
|
|
131
|
+
# bindTimeLimit
|
|
132
|
+
# followReferrals
|
|
133
|
+
# dereferenceAliases
|
|
134
|
+
# profileTTL
|
|
135
|
+
#
|
|
136
|
+
# 2.3 Object Classes
|
|
137
|
+
#
|
|
138
|
+
# The following object class is defined in this document:
|
|
139
|
+
#
|
|
140
|
+
# DUAConfigProfile
|
|
141
|
+
#
|
|
142
|
+
#
|
|
143
|
+
attributeType ( DUAConfSchemaOID:1.0 NAME 'defaultServerList'
|
|
144
|
+
DESC 'Default LDAP server host address used by a DUA'
|
|
145
|
+
EQUALITY caseIgnoreMatch
|
|
146
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
|
|
147
|
+
SINGLE-VALUE )
|
|
148
|
+
|
|
149
|
+
attributeType ( DUAConfSchemaOID:1.1 NAME 'defaultSearchBase'
|
|
150
|
+
DESC 'Default LDAP base DN used by a DUA'
|
|
151
|
+
EQUALITY distinguishedNameMatch
|
|
152
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
|
|
153
|
+
SINGLE-VALUE )
|
|
154
|
+
|
|
155
|
+
attributeType ( DUAConfSchemaOID:1.2 NAME 'preferredServerList'
|
|
156
|
+
DESC 'Preferred LDAP server host addresses to be used by a
|
|
157
|
+
DUA'
|
|
158
|
+
EQUALITY caseIgnoreMatch
|
|
159
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
|
|
160
|
+
SINGLE-VALUE )
|
|
161
|
+
|
|
162
|
+
attributeType ( DUAConfSchemaOID:1.3 NAME 'searchTimeLimit'
|
|
163
|
+
DESC 'Maximum time in seconds a DUA should allow for a
|
|
164
|
+
search to complete'
|
|
165
|
+
EQUALITY integerMatch
|
|
166
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
|
|
167
|
+
SINGLE-VALUE )
|
|
168
|
+
|
|
169
|
+
attributeType ( DUAConfSchemaOID:1.4 NAME 'bindTimeLimit'
|
|
170
|
+
DESC 'Maximum time in seconds a DUA should allow for the
|
|
171
|
+
bind operation to complete'
|
|
172
|
+
EQUALITY integerMatch
|
|
173
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
|
|
174
|
+
SINGLE-VALUE )
|
|
175
|
+
|
|
176
|
+
attributeType ( DUAConfSchemaOID:1.5 NAME 'followReferrals'
|
|
177
|
+
DESC 'Tells DUA if it should follow referrals
|
|
178
|
+
returned by a DSA search result'
|
|
179
|
+
EQUALITY booleanMatch
|
|
180
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
|
|
181
|
+
SINGLE-VALUE )
|
|
182
|
+
|
|
183
|
+
attributeType ( DUAConfSchemaOID:1.16 NAME 'dereferenceAliases'
|
|
184
|
+
DESC 'Tells DUA if it should dereference aliases'
|
|
185
|
+
EQUALITY booleanMatch
|
|
186
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
|
|
187
|
+
SINGLE-VALUE )
|
|
188
|
+
|
|
189
|
+
attributeType ( DUAConfSchemaOID:1.6 NAME 'authenticationMethod'
|
|
190
|
+
DESC 'A keystring which identifies the type of
|
|
191
|
+
authentication method used to contact the DSA'
|
|
192
|
+
EQUALITY caseIgnoreMatch
|
|
193
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
|
|
194
|
+
SINGLE-VALUE )
|
|
195
|
+
|
|
196
|
+
attributeType ( DUAConfSchemaOID:1.7 NAME 'profileTTL'
|
|
197
|
+
DESC 'Time to live, in seconds, before a client DUA
|
|
198
|
+
should re-read this configuration profile'
|
|
199
|
+
EQUALITY integerMatch
|
|
200
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
|
|
201
|
+
SINGLE-VALUE )
|
|
202
|
+
|
|
203
|
+
attributeType ( DUAConfSchemaOID:1.14 NAME 'serviceSearchDescriptor'
|
|
204
|
+
DESC 'LDAP search descriptor list used by a DUA'
|
|
205
|
+
EQUALITY caseExactMatch
|
|
206
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
|
|
207
|
+
|
|
208
|
+
attributeType ( DUAConfSchemaOID:1.9 NAME 'attributeMap'
|
|
209
|
+
DESC 'Attribute mappings used by a DUA'
|
|
210
|
+
EQUALITY caseIgnoreIA5Match
|
|
211
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
|
|
212
|
+
|
|
213
|
+
attributeType ( DUAConfSchemaOID:1.10 NAME 'credentialLevel'
|
|
214
|
+
DESC 'Identifies type of credentials a DUA should
|
|
215
|
+
use when binding to the LDAP server'
|
|
216
|
+
EQUALITY caseIgnoreIA5Match
|
|
217
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
|
|
218
|
+
SINGLE-VALUE )
|
|
219
|
+
|
|
220
|
+
attributeType ( DUAConfSchemaOID:1.11 NAME 'objectclassMap'
|
|
221
|
+
DESC 'Objectclass mappings used by a DUA'
|
|
222
|
+
EQUALITY caseIgnoreIA5Match
|
|
223
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
|
|
224
|
+
|
|
225
|
+
attributeType ( DUAConfSchemaOID:1.12 NAME 'defaultSearchScope'
|
|
226
|
+
DESC 'Default search scope used by a DUA'
|
|
227
|
+
EQUALITY caseIgnoreIA5Match
|
|
228
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
|
|
229
|
+
SINGLE-VALUE )
|
|
230
|
+
|
|
231
|
+
attributeType ( DUAConfSchemaOID:1.13 NAME 'serviceCredentialLevel'
|
|
232
|
+
DESC 'Identifies type of credentials a DUA
|
|
233
|
+
should use when binding to the LDAP server for a
|
|
234
|
+
specific service'
|
|
235
|
+
EQUALITY caseIgnoreIA5Match
|
|
236
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
|
|
237
|
+
|
|
238
|
+
attributeType ( DUAConfSchemaOID:1.15 NAME 'serviceAuthenticationMethod'
|
|
239
|
+
DESC 'Authentication method used by a service of the DUA'
|
|
240
|
+
EQUALITY caseIgnoreMatch
|
|
241
|
+
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
|
|
242
|
+
#
|
|
243
|
+
# 4. Class Definition
|
|
244
|
+
#
|
|
245
|
+
# The objectclass below is constructed from the attributes defined in
|
|
246
|
+
# 3, with the exception of the cn attribute, which is defined in RFC
|
|
247
|
+
# 2256 [8]. cn is used to represent the name of the DUA configura-
|
|
248
|
+
# tion profile.
|
|
249
|
+
#
|
|
250
|
+
objectClass ( DUAConfSchemaOID:2.5 NAME 'DUAConfigProfile'
|
|
251
|
+
SUP top STRUCTURAL
|
|
252
|
+
DESC 'Abstraction of a base configuration for a DUA'
|
|
253
|
+
MUST ( cn )
|
|
254
|
+
MAY ( defaultServerList $ preferredServerList $
|
|
255
|
+
defaultSearchBase $ defaultSearchScope $
|
|
256
|
+
searchTimeLimit $ bindTimeLimit $
|
|
257
|
+
credentialLevel $ authenticationMethod $
|
|
258
|
+
followReferrals $ dereferenceAliases $
|
|
259
|
+
serviceSearchDescriptor $ serviceCredentialLevel $
|
|
260
|
+
serviceAuthenticationMethod $ objectclassMap $
|
|
261
|
+
attributeMap $ profileTTL ) )
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# dyngroup.schema -- Dynamic Group schema
|
|
2
|
+
# $OpenLDAP$
|
|
3
|
+
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
|
4
|
+
##
|
|
5
|
+
## Copyright 1998-2011 The OpenLDAP Foundation.
|
|
6
|
+
## All rights reserved.
|
|
7
|
+
##
|
|
8
|
+
## Redistribution and use in source and binary forms, with or without
|
|
9
|
+
## modification, are permitted only as authorized by the OpenLDAP
|
|
10
|
+
## Public License.
|
|
11
|
+
##
|
|
12
|
+
## A copy of this license is available in the file LICENSE in the
|
|
13
|
+
## top-level directory of the distribution or, alternatively, at
|
|
14
|
+
## <http://www.OpenLDAP.org/license.html>.
|
|
15
|
+
#
|
|
16
|
+
# Dynamic Group schema (experimental), as defined by Netscape. See
|
|
17
|
+
# http://www.redhat.com/docs/manuals/ent-server/pdf/esadmin611.pdf
|
|
18
|
+
# page 70 for details on how these groups were used.
|
|
19
|
+
#
|
|
20
|
+
# A description of the objectclass definition is available here:
|
|
21
|
+
# http://www.redhat.com/docs/manuals/dir-server/schema/7.1/oc_dir.html#1303745
|
|
22
|
+
#
|
|
23
|
+
# depends upon:
|
|
24
|
+
# core.schema
|
|
25
|
+
#
|
|
26
|
+
# These definitions are considered experimental due to the lack of
|
|
27
|
+
# a formal specification (e.g., RFC).
|
|
28
|
+
#
|
|
29
|
+
# NOT RECOMMENDED FOR PRODUCTION USE! USE WITH CAUTION!
|
|
30
|
+
#
|
|
31
|
+
# The Netscape documentation describes this as an auxiliary objectclass
|
|
32
|
+
# but their implementations have always defined it as a structural class.
|
|
33
|
+
# The sloppiness here is because Netscape-derived servers don't actually
|
|
34
|
+
# implement the X.500 data model, and they don't honor the distinction
|
|
35
|
+
# between structural and auxiliary classes. This fact is noted here:
|
|
36
|
+
# http://forum.java.sun.com/thread.jspa?threadID=5016864&messageID=9034636
|
|
37
|
+
#
|
|
38
|
+
# In accordance with other existing implementations, we define it as a
|
|
39
|
+
# structural class.
|
|
40
|
+
#
|
|
41
|
+
# Our definition of memberURL also does not match theirs but again
|
|
42
|
+
# their published definition and what works in practice do not agree.
|
|
43
|
+
# In other words, the Netscape definitions are broken and interoperability
|
|
44
|
+
# is not guaranteed.
|
|
45
|
+
#
|
|
46
|
+
# Also see the new DynGroup proposed spec at
|
|
47
|
+
# http://tools.ietf.org/html/draft-haripriya-dynamicgroup-02
|
|
48
|
+
dn: cn=dyngroup,cn=schema,cn=config
|
|
49
|
+
objectClass: olcSchemaConfig
|
|
50
|
+
cn: dyngroup
|
|
51
|
+
olcObjectIdentifier: {0}NetscapeRoot 2.16.840.1.113730
|
|
52
|
+
olcObjectIdentifier: {1}NetscapeLDAP NetscapeRoot:3
|
|
53
|
+
olcObjectIdentifier: {2}NetscapeLDAPattributeType NetscapeLDAP:1
|
|
54
|
+
olcObjectIdentifier: {3}NetscapeLDAPobjectClass NetscapeLDAP:2
|
|
55
|
+
olcObjectIdentifier: {4}OpenLDAPExp11 1.3.6.1.4.1.4203.666.11
|
|
56
|
+
olcObjectIdentifier: {5}DynGroupBase OpenLDAPExp11:8
|
|
57
|
+
olcObjectIdentifier: {6}DynGroupAttr DynGroupBase:1
|
|
58
|
+
olcObjectIdentifier: {7}DynGroupOC DynGroupBase:2
|
|
59
|
+
olcAttributeTypes: {0}( NetscapeLDAPattributeType:198 NAME 'memberURL' DESC 'I
|
|
60
|
+
dentifies an URL associated with each member of a group. Any type of labeled
|
|
61
|
+
URL can be used.' SUP labeledURI )
|
|
62
|
+
olcAttributeTypes: {1}( DynGroupAttr:1 NAME 'dgIdentity' DESC 'Identity to use
|
|
63
|
+
when processing the memberURL' SUP distinguishedName SINGLE-VALUE )
|
|
64
|
+
olcAttributeTypes: {2}( DynGroupAttr:2 NAME 'dgAuthz' DESC 'Optional authoriza
|
|
65
|
+
tion rules that determine who is allowed to assume the dgIdentity' EQUALITY a
|
|
66
|
+
uthzMatch SYNTAX 1.3.6.1.4.1.4203.666.2.7 X-ORDERED 'VALUES' )
|
|
67
|
+
olcObjectClasses: {0}( NetscapeLDAPobjectClass:33 NAME 'groupOfURLs' SUP top S
|
|
68
|
+
TRUCTURAL MUST cn MAY ( memberURL $ businessCategory $ description $ o $ ou $
|
|
69
|
+
owner $ seeAlso ) )
|
|
70
|
+
olcObjectClasses: {1}( DynGroupOC:1 NAME 'dgIdentityAux' SUP top AUXILIARY MAY
|
|
71
|
+
( dgIdentity $ dgAuthz ) )
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# dyngroup.schema -- Dynamic Group schema
|
|
2
|
+
# $OpenLDAP$
|
|
3
|
+
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
|
4
|
+
##
|
|
5
|
+
## Copyright 1998-2011 The OpenLDAP Foundation.
|
|
6
|
+
## All rights reserved.
|
|
7
|
+
##
|
|
8
|
+
## Redistribution and use in source and binary forms, with or without
|
|
9
|
+
## modification, are permitted only as authorized by the OpenLDAP
|
|
10
|
+
## Public License.
|
|
11
|
+
##
|
|
12
|
+
## A copy of this license is available in the file LICENSE in the
|
|
13
|
+
## top-level directory of the distribution or, alternatively, at
|
|
14
|
+
## <http://www.OpenLDAP.org/license.html>.
|
|
15
|
+
#
|
|
16
|
+
# Dynamic Group schema (experimental), as defined by Netscape. See
|
|
17
|
+
# http://www.redhat.com/docs/manuals/ent-server/pdf/esadmin611.pdf
|
|
18
|
+
# page 70 for details on how these groups were used.
|
|
19
|
+
#
|
|
20
|
+
# A description of the objectclass definition is available here:
|
|
21
|
+
# http://www.redhat.com/docs/manuals/dir-server/schema/7.1/oc_dir.html#1303745
|
|
22
|
+
#
|
|
23
|
+
# depends upon:
|
|
24
|
+
# core.schema
|
|
25
|
+
#
|
|
26
|
+
# These definitions are considered experimental due to the lack of
|
|
27
|
+
# a formal specification (e.g., RFC).
|
|
28
|
+
#
|
|
29
|
+
# NOT RECOMMENDED FOR PRODUCTION USE! USE WITH CAUTION!
|
|
30
|
+
#
|
|
31
|
+
# The Netscape documentation describes this as an auxiliary objectclass
|
|
32
|
+
# but their implementations have always defined it as a structural class.
|
|
33
|
+
# The sloppiness here is because Netscape-derived servers don't actually
|
|
34
|
+
# implement the X.500 data model, and they don't honor the distinction
|
|
35
|
+
# between structural and auxiliary classes. This fact is noted here:
|
|
36
|
+
# http://forum.java.sun.com/thread.jspa?threadID=5016864&messageID=9034636
|
|
37
|
+
#
|
|
38
|
+
# In accordance with other existing implementations, we define it as a
|
|
39
|
+
# structural class.
|
|
40
|
+
#
|
|
41
|
+
# Our definition of memberURL also does not match theirs but again
|
|
42
|
+
# their published definition and what works in practice do not agree.
|
|
43
|
+
# In other words, the Netscape definitions are broken and interoperability
|
|
44
|
+
# is not guaranteed.
|
|
45
|
+
#
|
|
46
|
+
# Also see the new DynGroup proposed spec at
|
|
47
|
+
# http://tools.ietf.org/html/draft-haripriya-dynamicgroup-02
|
|
48
|
+
|
|
49
|
+
objectIdentifier NetscapeRoot 2.16.840.1.113730
|
|
50
|
+
|
|
51
|
+
objectIdentifier NetscapeLDAP NetscapeRoot:3
|
|
52
|
+
objectIdentifier NetscapeLDAPattributeType NetscapeLDAP:1
|
|
53
|
+
objectIdentifier NetscapeLDAPobjectClass NetscapeLDAP:2
|
|
54
|
+
|
|
55
|
+
objectIdentifier OpenLDAPExp11 1.3.6.1.4.1.4203.666.11
|
|
56
|
+
objectIdentifier DynGroupBase OpenLDAPExp11:8
|
|
57
|
+
objectIdentifier DynGroupAttr DynGroupBase:1
|
|
58
|
+
objectIdentifier DynGroupOC DynGroupBase:2
|
|
59
|
+
|
|
60
|
+
attributetype ( NetscapeLDAPattributeType:198
|
|
61
|
+
NAME 'memberURL'
|
|
62
|
+
DESC 'Identifies an URL associated with each member of a group. Any type of labeled URL can be used.'
|
|
63
|
+
SUP labeledURI )
|
|
64
|
+
|
|
65
|
+
attributetype ( DynGroupAttr:1
|
|
66
|
+
NAME 'dgIdentity'
|
|
67
|
+
DESC 'Identity to use when processing the memberURL'
|
|
68
|
+
SUP distinguishedName SINGLE-VALUE )
|
|
69
|
+
|
|
70
|
+
attributeType ( DynGroupAttr:2
|
|
71
|
+
NAME 'dgAuthz'
|
|
72
|
+
DESC 'Optional authorization rules that determine who is allowed to assume the dgIdentity'
|
|
73
|
+
EQUALITY authzMatch
|
|
74
|
+
SYNTAX 1.3.6.1.4.1.4203.666.2.7
|
|
75
|
+
X-ORDERED 'VALUES' )
|
|
76
|
+
|
|
77
|
+
objectClass ( NetscapeLDAPobjectClass:33
|
|
78
|
+
NAME 'groupOfURLs'
|
|
79
|
+
SUP top STRUCTURAL
|
|
80
|
+
MUST cn
|
|
81
|
+
MAY ( memberURL $ businessCategory $ description $ o $ ou $
|
|
82
|
+
owner $ seeAlso ) )
|
|
83
|
+
|
|
84
|
+
# The Haripriya dyngroup schema still needs a lot of work.
|
|
85
|
+
# We're just adding support for the dgIdentity attribute for now...
|
|
86
|
+
objectClass ( DynGroupOC:1
|
|
87
|
+
NAME 'dgIdentityAux'
|
|
88
|
+
SUP top AUXILIARY
|
|
89
|
+
MAY ( dgIdentity $ dgAuthz ) )
|
|
90
|
+
|
|
91
|
+
|