rubynas 0.1.0.pre.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. data/.gitignore +23 -0
  2. data/.gitmodules +3 -0
  3. data/.rspec +2 -0
  4. data/.ruby-version +1 -0
  5. data/Gemfile +4 -0
  6. data/Gemfile.lock +196 -0
  7. data/Guardfile +8 -0
  8. data/LICENSE.txt +7 -0
  9. data/Procfile +2 -0
  10. data/README.md +151 -0
  11. data/Rakefile +14 -0
  12. data/Vagrantfile +99 -0
  13. data/bin/rubynas +63 -0
  14. data/config.ru +5 -0
  15. data/doc/README_FOR_APP +2 -0
  16. data/doc/macosx_shares.png +0 -0
  17. data/doc/shares_overview.png +0 -0
  18. data/lib/rubynas.rb +35 -0
  19. data/lib/rubynas/apis/group_api.rb +51 -0
  20. data/lib/rubynas/apis/system_information_api.rb +13 -0
  21. data/lib/rubynas/apis/user_api.rb +85 -0
  22. data/lib/rubynas/apis/volume_api.rb +50 -0
  23. data/lib/rubynas/config.rb +63 -0
  24. data/lib/rubynas/db/migrate/20130302164415_devise_create_users.rb +46 -0
  25. data/lib/rubynas/db/migrate/20130322143040_create_volumes.rb +10 -0
  26. data/lib/rubynas/db/migrate/20130331102556_create_shared_folders.rb +10 -0
  27. data/lib/rubynas/db/migrate/20130331103034_create_shared_folder_services.rb +11 -0
  28. data/lib/rubynas/installers/base_installer.rb +70 -0
  29. data/lib/rubynas/installers/debian_installer.rb +199 -0
  30. data/lib/rubynas/installers/ubuntu_installer.rb +2 -0
  31. data/lib/rubynas/installers/ubuntu_precise_installer.rb +2 -0
  32. data/lib/rubynas/models/.gitkeep +0 -0
  33. data/lib/rubynas/models/ldap_group.rb +21 -0
  34. data/lib/rubynas/models/ldap_org_unit.rb +13 -0
  35. data/lib/rubynas/models/ldap_user.rb +31 -0
  36. data/lib/rubynas/models/shared_folder.rb +32 -0
  37. data/lib/rubynas/models/shared_folder_service.rb +15 -0
  38. data/lib/rubynas/models/volume.rb +16 -0
  39. data/lib/rubynas/services/afp_share_service.rb +9 -0
  40. data/lib/rubynas/services/service.rb +4 -0
  41. data/lib/rubynas/services/share_service.rb +3 -0
  42. data/lib/rubynas/version.rb +3 -0
  43. data/rubynas.gemspec +69 -0
  44. data/rubynas.ini +24 -0
  45. data/sandbox/ldap/base.ldif +50 -0
  46. data/sandbox/ldap/data/.gitkeep +0 -0
  47. data/sandbox/ldap/data/dc=rubynas,dc=com.ldif +14 -0
  48. data/sandbox/ldap/local.schema +6 -0
  49. data/sandbox/ldap/schema/README +80 -0
  50. data/sandbox/ldap/schema/apple.schema +1727 -0
  51. data/sandbox/ldap/schema/apple_auxillary.schema +20 -0
  52. data/sandbox/ldap/schema/collective.ldif +48 -0
  53. data/sandbox/ldap/schema/collective.schema +190 -0
  54. data/sandbox/ldap/schema/corba.ldif +42 -0
  55. data/sandbox/ldap/schema/corba.schema +239 -0
  56. data/sandbox/ldap/schema/core.ldif +591 -0
  57. data/sandbox/ldap/schema/core.schema +610 -0
  58. data/sandbox/ldap/schema/cosine.ldif +200 -0
  59. data/sandbox/ldap/schema/cosine.schema +2571 -0
  60. data/sandbox/ldap/schema/duaconf.ldif +83 -0
  61. data/sandbox/ldap/schema/duaconf.schema +261 -0
  62. data/sandbox/ldap/schema/dyngroup.ldif +71 -0
  63. data/sandbox/ldap/schema/dyngroup.schema +91 -0
  64. data/sandbox/ldap/schema/fmserver.schema +60 -0
  65. data/sandbox/ldap/schema/inetorgperson.ldif +69 -0
  66. data/sandbox/ldap/schema/inetorgperson.schema +155 -0
  67. data/sandbox/ldap/schema/java.ldif +59 -0
  68. data/sandbox/ldap/schema/java.schema +403 -0
  69. data/sandbox/ldap/schema/krb5-kdc.schema +134 -0
  70. data/sandbox/ldap/schema/microsoft.ext.schema +5383 -0
  71. data/sandbox/ldap/schema/microsoft.schema +4835 -0
  72. data/sandbox/ldap/schema/microsoft.std.schema +480 -0
  73. data/sandbox/ldap/schema/misc.ldif +45 -0
  74. data/sandbox/ldap/schema/misc.schema +75 -0
  75. data/sandbox/ldap/schema/netinfo.schema +240 -0
  76. data/sandbox/ldap/schema/nis.ldif +120 -0
  77. data/sandbox/ldap/schema/nis.schema +241 -0
  78. data/sandbox/ldap/schema/openldap.ldif +88 -0
  79. data/sandbox/ldap/schema/openldap.schema +54 -0
  80. data/sandbox/ldap/schema/pmi.ldif +123 -0
  81. data/sandbox/ldap/schema/pmi.schema +464 -0
  82. data/sandbox/ldap/schema/ppolicy.ldif +75 -0
  83. data/sandbox/ldap/schema/ppolicy.schema +531 -0
  84. data/sandbox/ldap/schema/samba.schema +179 -0
  85. data/sandbox/ldap/slapd.conf +99 -0
  86. data/spec/apis/group_api_spec.rb +97 -0
  87. data/spec/apis/system_information_api_spec.rb +27 -0
  88. data/spec/apis/user_api_spec.rb +113 -0
  89. data/spec/apis/volume_api_spec.rb +98 -0
  90. data/spec/factories/ldap_group.rb +16 -0
  91. data/spec/factories/ldap_users.rb +24 -0
  92. data/spec/factories/shared_folder_services.rb +9 -0
  93. data/spec/factories/shared_folders.rb +15 -0
  94. data/spec/factories/users.rb +8 -0
  95. data/spec/factories/volumes.rb +10 -0
  96. data/spec/installer/base_installer_spec.rb +35 -0
  97. data/spec/installer/debian_installer_spec.rb +86 -0
  98. data/spec/models/ldap_group_spec.rb +21 -0
  99. data/spec/models/ldap_org_unit_spec.rb +19 -0
  100. data/spec/models/ldap_user_spec.rb +19 -0
  101. data/spec/models/shared_folder_service_spec.rb +25 -0
  102. data/spec/models/shared_folder_spec.rb +27 -0
  103. data/spec/models/volume_spec.rb +5 -0
  104. data/spec/services/afp_share_service_spec.rb +5 -0
  105. data/spec/services/service_spec.rb +5 -0
  106. data/spec/services/share_service_spec.rb +5 -0
  107. data/spec/spec_helper.rb +30 -0
  108. data/spec/support/db_cleaner.rb +16 -0
  109. data/spec/support/factory_girl.rb +7 -0
  110. data/spec/support/logger.rb +1 -0
  111. data/spec/support/rack-test.rb +6 -0
  112. metadata +633 -0
@@ -0,0 +1,241 @@
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
+ # Definitions from RFC2307 (Experimental)
16
+ # An Approach for Using LDAP as a Network Information Service
17
+
18
+ # Depends upon core.schema and cosine.schema
19
+
20
+ # Note: The definitions in RFC2307 are given in syntaxes closely related
21
+ # to those in RFC2252, however, some liberties are taken that are not
22
+ # supported by RFC2252. This file has been written following RFC2252
23
+ # strictly.
24
+
25
+ # OID Base is iso(1) org(3) dod(6) internet(1) directory(1) nisSchema(1).
26
+ # i.e. nisSchema in RFC2307 is 1.3.6.1.1.1
27
+ #
28
+ # Syntaxes are under 1.3.6.1.1.1.0 (two new syntaxes are defined)
29
+ # validaters for these syntaxes are incomplete, they only
30
+ # implement printable string validation (which is good as the
31
+ # common use of these syntaxes violates the specification).
32
+ # Attribute types are under 1.3.6.1.1.1.1
33
+ # Object classes are under 1.3.6.1.1.1.2
34
+
35
+ # Attribute Type Definitions
36
+
37
+ # builtin
38
+ #attributetype ( 1.3.6.1.1.1.1.0 NAME 'uidNumber'
39
+ # DESC 'An integer uniquely identifying a user in an administrative domain'
40
+ # EQUALITY integerMatch
41
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
42
+
43
+ # builtin
44
+ #attributetype ( 1.3.6.1.1.1.1.1 NAME 'gidNumber'
45
+ # DESC 'An integer uniquely identifying a group in an administrative domain'
46
+ # EQUALITY integerMatch
47
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
48
+
49
+ attributetype ( 1.3.6.1.1.1.1.2 NAME 'gecos'
50
+ DESC 'The GECOS field; the common name'
51
+ EQUALITY caseIgnoreIA5Match
52
+ SUBSTR caseIgnoreIA5SubstringsMatch
53
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
54
+
55
+ #attributetype ( 1.3.6.1.1.1.1.3 NAME 'homeDirectory'
56
+ # DESC 'The absolute path to the home directory'
57
+ # EQUALITY caseExactIA5Match
58
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
59
+ attributetype ( 1.3.6.1.4.1.63.1000.1.1.1.1.99 NAME 'homeDirectory'
60
+ DESC 'The absolute path to the home directory'
61
+ EQUALITY caseExactMatch
62
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
63
+
64
+ attributetype ( 1.3.6.1.1.1.1.4 NAME 'loginShell'
65
+ DESC 'The path to the login shell'
66
+ EQUALITY caseExactIA5Match
67
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
68
+
69
+ attributetype ( 1.3.6.1.1.1.1.5 NAME 'shadowLastChange'
70
+ EQUALITY integerMatch
71
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
72
+
73
+ attributetype ( 1.3.6.1.1.1.1.6 NAME 'shadowMin'
74
+ EQUALITY integerMatch
75
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
76
+
77
+ attributetype ( 1.3.6.1.1.1.1.7 NAME 'shadowMax'
78
+ EQUALITY integerMatch
79
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
80
+
81
+ attributetype ( 1.3.6.1.1.1.1.8 NAME 'shadowWarning'
82
+ EQUALITY integerMatch
83
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
84
+
85
+ attributetype ( 1.3.6.1.1.1.1.9 NAME 'shadowInactive'
86
+ EQUALITY integerMatch
87
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
88
+
89
+ attributetype ( 1.3.6.1.1.1.1.10 NAME 'shadowExpire'
90
+ EQUALITY integerMatch
91
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
92
+
93
+ attributetype ( 1.3.6.1.1.1.1.11 NAME 'shadowFlag'
94
+ EQUALITY integerMatch
95
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
96
+
97
+ attributetype ( 1.3.6.1.1.1.1.12 NAME 'memberUid'
98
+ EQUALITY caseIgnoreIA5Match
99
+ SUBSTR caseIgnoreIA5SubstringsMatch
100
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
101
+
102
+ attributetype ( 1.3.6.1.1.1.1.13 NAME 'memberNisNetgroup'
103
+ EQUALITY caseExactIA5Match
104
+ SUBSTR caseExactIA5SubstringsMatch
105
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
106
+
107
+ attributetype ( 1.3.6.1.1.1.1.14 NAME 'nisNetgroupTriple'
108
+ DESC 'Netgroup triple'
109
+ SYNTAX 1.3.6.1.1.1.0.0 )
110
+
111
+ attributetype ( 1.3.6.1.1.1.1.15 NAME 'ipServicePort'
112
+ EQUALITY integerMatch
113
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
114
+
115
+ attributetype ( 1.3.6.1.1.1.1.16 NAME 'ipServiceProtocol'
116
+ SUP name )
117
+
118
+ attributetype ( 1.3.6.1.1.1.1.17 NAME 'ipProtocolNumber'
119
+ EQUALITY integerMatch
120
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
121
+
122
+ attributetype ( 1.3.6.1.1.1.1.18 NAME 'oncRpcNumber'
123
+ EQUALITY integerMatch
124
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
125
+
126
+ attributetype ( 1.3.6.1.1.1.1.19 NAME 'ipHostNumber'
127
+ DESC 'IP address'
128
+ EQUALITY caseIgnoreIA5Match
129
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
130
+
131
+ attributetype ( 1.3.6.1.1.1.1.20 NAME 'ipNetworkNumber'
132
+ DESC 'IP network'
133
+ EQUALITY caseIgnoreIA5Match
134
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} SINGLE-VALUE )
135
+
136
+ attributetype ( 1.3.6.1.1.1.1.21 NAME 'ipNetmaskNumber'
137
+ DESC 'IP netmask'
138
+ EQUALITY caseIgnoreIA5Match
139
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} SINGLE-VALUE )
140
+
141
+ attributetype ( 1.3.6.1.1.1.1.22 NAME 'macAddress'
142
+ DESC 'MAC address'
143
+ EQUALITY caseIgnoreIA5Match
144
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{128} )
145
+
146
+ attributetype ( 1.3.6.1.1.1.1.23 NAME 'bootParameter'
147
+ DESC 'rpc.bootparamd parameter'
148
+ SYNTAX 1.3.6.1.1.1.0.1 )
149
+
150
+ attributetype ( 1.3.6.1.1.1.1.24 NAME 'bootFile'
151
+ DESC 'Boot image name'
152
+ EQUALITY caseExactIA5Match
153
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
154
+
155
+ attributetype ( 1.3.6.1.1.1.1.26 NAME 'nisMapName'
156
+ SUP name )
157
+
158
+ attributetype ( 1.3.6.1.1.1.1.27 NAME 'nisMapEntry'
159
+ EQUALITY caseExactIA5Match
160
+ SUBSTR caseExactIA5SubstringsMatch
161
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{1024} SINGLE-VALUE )
162
+
163
+ # Object Class Definitions
164
+
165
+ objectclass ( 1.3.6.1.1.1.2.0 NAME 'posixAccount'
166
+ DESC 'Abstraction of an account with POSIX attributes'
167
+ SUP top AUXILIARY
168
+ MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory )
169
+ MAY ( userPassword $ loginShell $ gecos $ description ) )
170
+
171
+ objectclass ( 1.3.6.1.1.1.2.1 NAME 'shadowAccount'
172
+ DESC 'Additional attributes for shadow passwords'
173
+ SUP top AUXILIARY
174
+ MUST uid
175
+ MAY ( userPassword $ shadowLastChange $ shadowMin $
176
+ shadowMax $ shadowWarning $ shadowInactive $
177
+ shadowExpire $ shadowFlag $ description ) )
178
+
179
+ objectclass ( 1.3.6.1.1.1.2.2 NAME 'posixGroup'
180
+ DESC 'Abstraction of a group of accounts'
181
+ SUP top STRUCTURAL
182
+ MUST ( cn $ gidNumber )
183
+ MAY ( userPassword $ memberUid $ description ) )
184
+
185
+ objectclass ( 1.3.6.1.1.1.2.3 NAME 'ipService'
186
+ DESC 'Abstraction an Internet Protocol service'
187
+ SUP top STRUCTURAL
188
+ MUST ( cn $ ipServicePort $ ipServiceProtocol )
189
+ MAY ( description ) )
190
+
191
+ objectclass ( 1.3.6.1.1.1.2.4 NAME 'ipProtocol'
192
+ DESC 'Abstraction of an IP protocol'
193
+ SUP top STRUCTURAL
194
+ MUST ( cn $ ipProtocolNumber $ description )
195
+ MAY description )
196
+
197
+ objectclass ( 1.3.6.1.1.1.2.5 NAME 'oncRpc'
198
+ DESC 'Abstraction of an ONC/RPC binding'
199
+ SUP top STRUCTURAL
200
+ MUST ( cn $ oncRpcNumber $ description )
201
+ MAY description )
202
+
203
+ objectclass ( 1.3.6.1.1.1.2.6 NAME 'ipHost'
204
+ DESC 'Abstraction of a host, an IP device'
205
+ SUP top AUXILIARY
206
+ MUST ( cn $ ipHostNumber )
207
+ MAY ( l $ description $ manager ) )
208
+
209
+ objectclass ( 1.3.6.1.1.1.2.7 NAME 'ipNetwork'
210
+ DESC 'Abstraction of an IP network'
211
+ SUP top STRUCTURAL
212
+ MUST ( cn $ ipNetworkNumber )
213
+ MAY ( ipNetmaskNumber $ l $ description $ manager ) )
214
+
215
+ objectclass ( 1.3.6.1.1.1.2.8 NAME 'nisNetgroup'
216
+ DESC 'Abstraction of a netgroup'
217
+ SUP top STRUCTURAL
218
+ MUST cn
219
+ MAY ( nisNetgroupTriple $ memberNisNetgroup $ description ) )
220
+
221
+ objectclass ( 1.3.6.1.1.1.2.9 NAME 'nisMap'
222
+ DESC 'A generic abstraction of a NIS map'
223
+ SUP top STRUCTURAL
224
+ MUST nisMapName
225
+ MAY description )
226
+
227
+ objectclass ( 1.3.6.1.1.1.2.10 NAME 'nisObject'
228
+ DESC 'An entry in a NIS map'
229
+ SUP top STRUCTURAL
230
+ MUST ( cn $ nisMapEntry $ nisMapName )
231
+ MAY description )
232
+
233
+ objectclass ( 1.3.6.1.1.1.2.11 NAME 'ieee802Device'
234
+ DESC 'A device with a MAC address'
235
+ SUP top AUXILIARY
236
+ MAY macAddress )
237
+
238
+ objectclass ( 1.3.6.1.1.1.2.12 NAME 'bootableDevice'
239
+ DESC 'A device with boot parameters'
240
+ SUP top AUXILIARY
241
+ MAY ( bootFile $ bootParameter ) )
@@ -0,0 +1,88 @@
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
+ #
16
+ # OpenLDAP Project's directory schema items
17
+ #
18
+ # depends upon:
19
+ # core.schema
20
+ # cosine.schema
21
+ # inetorgperson.schema
22
+ #
23
+ # These are provided for informational purposes only.
24
+ #
25
+ # This openldap.ldif file is provided as a demonstration of how to
26
+ # convert a *.schema file into *.ldif format. The key points:
27
+ # In LDIF, a blank line terminates an entry. Blank lines in a *.schema
28
+ # file should be replaced with a single '#' to turn them into
29
+ # comments, or they should just be removed.
30
+ # In addition to the actual schema directives, the file needs a small
31
+ # header to make it a valid LDAP entry. This header must provide the
32
+ # dn of the entry, the objectClass, and the cn, as shown here:
33
+ #
34
+ dn: cn=openldap,cn=schema,cn=config
35
+ objectClass: olcSchemaConfig
36
+ cn: openldap
37
+ #
38
+ # The schema directives need to be changed to LDAP Attributes.
39
+ # First a basic string substitution can be done on each of the keywords:
40
+ # objectIdentifier -> olcObjectIdentifier:
41
+ # objectClass -> olcObjectClasses:
42
+ # attributeType -> olcAttributeTypes:
43
+ # Then leading whitespace must be fixed. The slapd.conf format allows
44
+ # tabs or spaces to denote line continuation, while LDIF only allows
45
+ # the space character.
46
+ # Also slapd.conf preserves the continuation character, while LDIF strips
47
+ # it out. So a single TAB/SPACE in slapd.conf must be replaced with
48
+ # two SPACEs in LDIF, otherwise the continued text may get joined as
49
+ # a single word.
50
+ # The directives must be listed in a proper sequence:
51
+ # All olcObjectIdentifiers must be first, so they may be referenced by
52
+ # any following definitions.
53
+ # All olcAttributeTypes must be next, so they may be referenced by any
54
+ # following objectClass definitions.
55
+ # All olcObjectClasses must be after the olcAttributeTypes.
56
+ # And of course, any superior must occur before anything that inherits
57
+ # from it.
58
+ #
59
+ olcObjectIdentifier: OpenLDAProot 1.3.6.1.4.1.4203
60
+ #
61
+ olcObjectIdentifier: OpenLDAP OpenLDAProot:1
62
+ olcObjectIdentifier: OpenLDAPattributeType OpenLDAP:3
63
+ olcObjectIdentifier: OpenLDAPobjectClass OpenLDAP:4
64
+ #
65
+ olcObjectClasses: ( OpenLDAPobjectClass:3
66
+ NAME 'OpenLDAPorg'
67
+ DESC 'OpenLDAP Organizational Object'
68
+ SUP organization
69
+ MAY ( buildingName $ displayName $ labeledURI ) )
70
+ #
71
+ olcObjectClasses: ( OpenLDAPobjectClass:4
72
+ NAME 'OpenLDAPou'
73
+ DESC 'OpenLDAP Organizational Unit Object'
74
+ SUP organizationalUnit
75
+ MAY ( buildingName $ displayName $ labeledURI $ o ) )
76
+ #
77
+ olcObjectClasses: ( OpenLDAPobjectClass:5
78
+ NAME 'OpenLDAPperson'
79
+ DESC 'OpenLDAP Person'
80
+ SUP ( pilotPerson $ inetOrgPerson )
81
+ MUST ( uid $ cn )
82
+ MAY ( givenName $ labeledURI $ o ) )
83
+ #
84
+ olcObjectClasses: ( OpenLDAPobjectClass:6
85
+ NAME 'OpenLDAPdisplayableObject'
86
+ DESC 'OpenLDAP Displayable Object'
87
+ AUXILIARY
88
+ MAY displayName )
@@ -0,0 +1,54 @@
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
+ #
16
+ # OpenLDAP Project's directory schema items
17
+ #
18
+ # depends upon:
19
+ # core.schema
20
+ # cosine.schema
21
+ # inetorgperson.schema
22
+ #
23
+ # These are provided for informational purposes only.
24
+
25
+ objectIdentifier OpenLDAProot 1.3.6.1.4.1.4203
26
+
27
+ objectIdentifier OpenLDAP OpenLDAProot:1
28
+ objectIdentifier OpenLDAPattributeType OpenLDAP:3
29
+ objectIdentifier OpenLDAPobjectClass OpenLDAP:4
30
+
31
+ objectClass ( OpenLDAPobjectClass:3
32
+ NAME 'OpenLDAPorg'
33
+ DESC 'OpenLDAP Organizational Object'
34
+ SUP organization
35
+ MAY ( buildingName $ displayName $ labeledURI ) )
36
+
37
+ objectClass ( OpenLDAPobjectClass:4
38
+ NAME 'OpenLDAPou'
39
+ DESC 'OpenLDAP Organizational Unit Object'
40
+ SUP organizationalUnit
41
+ MAY ( buildingName $ displayName $ labeledURI $ o ) )
42
+
43
+ objectClass ( OpenLDAPobjectClass:5
44
+ NAME 'OpenLDAPperson'
45
+ DESC 'OpenLDAP Person'
46
+ SUP ( pilotPerson $ inetOrgPerson )
47
+ MUST ( uid $ cn )
48
+ MAY ( givenName $ labeledURI $ o ) )
49
+
50
+ objectClass ( OpenLDAPobjectClass:6
51
+ NAME 'OpenLDAPdisplayableObject'
52
+ DESC 'OpenLDAP Displayable Object'
53
+ AUXILIARY
54
+ MAY displayName )
@@ -0,0 +1,123 @@
1
+ # OpenLDAP X.509 PMI 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
+ ## Portions Copyright (C) The Internet Society (1997-2006).
17
+ ## All Rights Reserved.
18
+ #
19
+ # Includes LDAPv3 schema items from:
20
+ # ITU X.509 (08/2005)
21
+ #
22
+ # This file was automatically generated from pmi.schema; see that file
23
+ # for complete references.
24
+ #
25
+ dn: cn=pmi,cn=schema,cn=config
26
+ objectClass: olcSchemaConfig
27
+ cn: pmi
28
+ olcObjectIdentifier: {0}id-oc-pmiUser 2.5.6.24
29
+ olcObjectIdentifier: {1}id-oc-pmiAA 2.5.6.25
30
+ olcObjectIdentifier: {2}id-oc-pmiSOA 2.5.6.26
31
+ olcObjectIdentifier: {3}id-oc-attCertCRLDistributionPts 2.5.6.27
32
+ olcObjectIdentifier: {4}id-oc-privilegePolicy 2.5.6.32
33
+ olcObjectIdentifier: {5}id-oc-pmiDelegationPath 2.5.6.33
34
+ olcObjectIdentifier: {6}id-oc-protectedPrivilegePolicy 2.5.6.34
35
+ olcObjectIdentifier: {7}id-at-attributeCertificate 2.5.4.58
36
+ olcObjectIdentifier: {8}id-at-attributeCertificateRevocationList 2.5.4.59
37
+ olcObjectIdentifier: {9}id-at-aACertificate 2.5.4.61
38
+ olcObjectIdentifier: {10}id-at-attributeDescriptorCertificate 2.5.4.62
39
+ olcObjectIdentifier: {11}id-at-attributeAuthorityRevocationList 2.5.4.63
40
+ olcObjectIdentifier: {12}id-at-privPolicy 2.5.4.71
41
+ olcObjectIdentifier: {13}id-at-role 2.5.4.72
42
+ olcObjectIdentifier: {14}id-at-delegationPath 2.5.4.73
43
+ olcObjectIdentifier: {15}id-at-protPrivPolicy 2.5.4.74
44
+ olcObjectIdentifier: {16}id-at-xMLPrivilegeInfo 2.5.4.75
45
+ olcObjectIdentifier: {17}id-at-xMLPprotPrivPolicy 2.5.4.76
46
+ olcObjectIdentifier: {18}id-mr 2.5.13
47
+ olcObjectIdentifier: {19}id-mr-attributeCertificateMatch id-mr:42
48
+ olcObjectIdentifier: {20}id-mr-attributeCertificateExactMatch id-mr:45
49
+ olcObjectIdentifier: {21}id-mr-holderIssuerMatch id-mr:46
50
+ olcObjectIdentifier: {22}id-mr-authAttIdMatch id-mr:53
51
+ olcObjectIdentifier: {23}id-mr-roleSpecCertIdMatch id-mr:54
52
+ olcObjectIdentifier: {24}id-mr-basicAttConstraintsMatch id-mr:55
53
+ olcObjectIdentifier: {25}id-mr-delegatedNameConstraintsMatch id-mr:56
54
+ olcObjectIdentifier: {26}id-mr-timeSpecMatch id-mr:57
55
+ olcObjectIdentifier: {27}id-mr-attDescriptorMatch id-mr:58
56
+ olcObjectIdentifier: {28}id-mr-acceptableCertPoliciesMatch id-mr:59
57
+ olcObjectIdentifier: {29}id-mr-delegationPathMatch id-mr:61
58
+ olcObjectIdentifier: {30}id-mr-sOAIdentifierMatch id-mr:66
59
+ olcObjectIdentifier: {31}id-mr-indirectIssuerMatch id-mr:67
60
+ olcObjectIdentifier: {32}AttributeCertificate 1.3.6.1.4.1.4203.666.11.10.2.1
61
+ olcObjectIdentifier: {33}CertificateList 1.3.6.1.4.1.1466.115.121.1.9
62
+ olcObjectIdentifier: {34}AttCertPath 1.3.6.1.4.1.4203.666.11.10.2.4
63
+ olcObjectIdentifier: {35}PolicySyntax 1.3.6.1.4.1.4203.666.11.10.2.5
64
+ olcObjectIdentifier: {36}RoleSyntax 1.3.6.1.4.1.4203.666.11.10.2.6
65
+ olcLdapSyntaxes: {0}( 1.3.6.1.4.1.4203.666.11.10.2.4 DESC 'X.509 PMI attribute
66
+ cartificate path: SEQUENCE OF AttributeCertificate' X-SUBST '1.3.6.1.4.1.146
67
+ 6.115.121.1.15' )
68
+ olcLdapSyntaxes: {1}( 1.3.6.1.4.1.4203.666.11.10.2.5 DESC 'X.509 PMI policy sy
69
+ ntax' X-SUBST '1.3.6.1.4.1.1466.115.121.1.15' )
70
+ olcLdapSyntaxes: {2}( 1.3.6.1.4.1.4203.666.11.10.2.6 DESC 'X.509 PMI role synt
71
+ ax' X-SUBST '1.3.6.1.4.1.1466.115.121.1.15' )
72
+ olcAttributeTypes: {0}( id-at-role NAME 'role' DESC 'X.509 Role attribute, use
73
+ ;binary' SYNTAX RoleSyntax )
74
+ olcAttributeTypes: {1}( id-at-xMLPrivilegeInfo NAME 'xmlPrivilegeInfo' DESC 'X
75
+ .509 XML privilege information attribute' SYNTAX 1.3.6.1.4.1.1466.115.121.1.1
76
+ 5 )
77
+ olcAttributeTypes: {2}( id-at-attributeCertificate NAME 'attributeCertificateA
78
+ ttribute' DESC 'X.509 Attribute certificate attribute, use ;binary' EQUALITY
79
+ attributeCertificateExactMatch SYNTAX AttributeCertificate )
80
+ olcAttributeTypes: {3}( id-at-aACertificate NAME 'aACertificate' DESC 'X.509 A
81
+ A certificate attribute, use ;binary' EQUALITY attributeCertificateExactMatch
82
+ SYNTAX AttributeCertificate )
83
+ olcAttributeTypes: {4}( id-at-attributeDescriptorCertificate NAME 'attributeDe
84
+ scriptorCertificate' DESC 'X.509 Attribute descriptor certificate attribute,
85
+ use ;binary' EQUALITY attributeCertificateExactMatch SYNTAX AttributeCertific
86
+ ate )
87
+ olcAttributeTypes: {5}( id-at-attributeCertificateRevocationList NAME 'attribu
88
+ teCertificateRevocationList' DESC 'X.509 Attribute certificate revocation lis
89
+ t attribute, use ;binary' SYNTAX CertificateList X-EQUALITY 'certificateListE
90
+ xactMatch, not implemented yet' )
91
+ olcAttributeTypes: {6}( id-at-attributeAuthorityRevocationList NAME 'attribute
92
+ AuthorityRevocationList' DESC 'X.509 AA certificate revocation list attribute
93
+ , use ;binary' SYNTAX CertificateList X-EQUALITY 'certificateListExactMatch,
94
+ not implemented yet' )
95
+ olcAttributeTypes: {7}( id-at-delegationPath NAME 'delegationPath' DESC 'X.509
96
+ Delegation path attribute, use ;binary' SYNTAX AttCertPath )
97
+ olcAttributeTypes: {8}( id-at-privPolicy NAME 'privPolicy' DESC 'X.509 Privile
98
+ ge policy attribute, use ;binary' SYNTAX PolicySyntax )
99
+ olcAttributeTypes: {9}( id-at-protPrivPolicy NAME 'protPrivPolicy' DESC 'X.509
100
+ Protected privilege policy attribute, use ;binary' EQUALITY attributeCertifi
101
+ cateExactMatch SYNTAX AttributeCertificate )
102
+ olcAttributeTypes: {10}( id-at-xMLPprotPrivPolicy NAME 'xmlPrivPolicy' DESC 'X
103
+ .509 XML Protected privilege policy attribute' SYNTAX 1.3.6.1.4.1.1466.115.12
104
+ 1.1.15 )
105
+ olcObjectClasses: {0}( id-oc-pmiUser NAME 'pmiUser' DESC 'X.509 PMI user objec
106
+ t class' SUP top AUXILIARY MAY attributeCertificateAttribute )
107
+ olcObjectClasses: {1}( id-oc-pmiAA NAME 'pmiAA' DESC 'X.509 PMI AA object clas
108
+ s' SUP top AUXILIARY MAY ( aACertificate $ attributeCertificateRevocationList
109
+ $ attributeAuthorityRevocationList ) )
110
+ olcObjectClasses: {2}( id-oc-pmiSOA NAME 'pmiSOA' DESC 'X.509 PMI SOA object c
111
+ lass' SUP top AUXILIARY MAY ( attributeCertificateRevocationList $ attributeA
112
+ uthorityRevocationList $ attributeDescriptorCertificate ) )
113
+ olcObjectClasses: {3}( id-oc-attCertCRLDistributionPts NAME 'attCertCRLDistrib
114
+ utionPt' DESC 'X.509 Attribute certificate CRL distribution point object clas
115
+ s' SUP top AUXILIARY MAY ( attributeCertificateRevocationList $ attributeAuth
116
+ orityRevocationList ) )
117
+ olcObjectClasses: {4}( id-oc-pmiDelegationPath NAME 'pmiDelegationPath' DESC '
118
+ X.509 PMI delegation path' SUP top AUXILIARY MAY delegationPath )
119
+ olcObjectClasses: {5}( id-oc-privilegePolicy NAME 'privilegePolicy' DESC 'X.50
120
+ 9 Privilege policy object class' SUP top AUXILIARY MAY privPolicy )
121
+ olcObjectClasses: {6}( id-oc-protectedPrivilegePolicy NAME 'protectedPrivilege
122
+ Policy' DESC 'X.509 Protected privilege policy object class' SUP top AUXILIAR
123
+ Y MAY protPrivPolicy )