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.
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,3 @@
1
+ module Rubynas
2
+ VERSION = '0.1.0.pre.1'
3
+ end
@@ -0,0 +1,69 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'rubynas/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "rubynas"
8
+ spec.version = Rubynas::VERSION
9
+ spec.authors = ["Vincent Landgraf"]
10
+ spec.email = ["setcool@gmx.de"]
11
+ spec.description = %q{The ruby based nas system}
12
+ spec.summary = "Offers an api to configure, install and manage " +
13
+ "essential services for a nas system"
14
+ spec.homepage = "https://github.com/rubynas/rubynas"
15
+ spec.license = "MIT"
16
+ spec.required_ruby_version = '>= 1.9.0'
17
+
18
+ spec.files = `git ls-files`.split($/)
19
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
20
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
21
+ spec.require_paths = ["lib"]
22
+
23
+ spec.add_development_dependency 'bundler', '~> 1.3'
24
+ spec.add_development_dependency 'rake'
25
+ spec.add_development_dependency 'rspec'
26
+ spec.add_development_dependency 'factory_girl', '~> 4.0'
27
+ spec.add_development_dependency 'bundler-audit'
28
+ spec.add_development_dependency 'guard-rspec'
29
+ spec.add_development_dependency 'cane'
30
+ spec.add_development_dependency 'brakeman'
31
+ spec.add_development_dependency 'rb-fsevent', '~> 0.9'
32
+ spec.add_development_dependency 'shoulda-matchers'
33
+ spec.add_development_dependency 'simplecov'
34
+ spec.add_development_dependency 'simplecov-rcov-text'
35
+ spec.add_development_dependency 'rack-test'
36
+ spec.add_development_dependency 'database_cleaner'
37
+
38
+ # Configuration
39
+ spec.add_runtime_dependency 'inifile'
40
+
41
+ # ORM DB
42
+ spec.add_runtime_dependency 'activerecord', '3.2.13'
43
+
44
+ # DB
45
+ spec.add_runtime_dependency 'sqlite3'
46
+
47
+ # Ldap access layer
48
+ spec.add_runtime_dependency 'net-ldap'
49
+ spec.add_runtime_dependency 'activeldap', '~> 3.2.2'
50
+
51
+ # AFP / Netatalk
52
+ spec.add_runtime_dependency 'netatalk-config'
53
+
54
+ # Service management
55
+ spec.add_runtime_dependency 'foreman'
56
+ spec.add_runtime_dependency 'dnssd'
57
+ spec.add_runtime_dependency 'puma'
58
+
59
+ # Middleware API
60
+ spec.add_runtime_dependency 'grape'
61
+ spec.add_runtime_dependency 'grape-entity'
62
+
63
+ # System logging
64
+ spec.add_runtime_dependency 'lumberjack'
65
+ spec.add_runtime_dependency 'lumberjack_syslog_device'
66
+
67
+ # System information
68
+ spec.add_runtime_dependency 'vmstat'
69
+ end
@@ -0,0 +1,24 @@
1
+ ;
2
+ ; This is the configuration file for local development and testing.
3
+ ;
4
+
5
+ ; Configuration for the sqlite3 database
6
+ [Database]
7
+ path = rubynas.sqlite3
8
+ timeout = 5000
9
+ pool = 5
10
+
11
+ ; Configuration for the ldap server that is used for authentication, user
12
+ ; and group management
13
+ [Ldap]
14
+ host = 127.0.0.1
15
+ port = 10389
16
+ base = "dc=rubynas,dc=com"
17
+ bind_dn = "cn=admin,dc=rubynas,dc=com"
18
+ password = secret
19
+
20
+ ; Server related configuration
21
+ [Server]
22
+ ; if syslog set to false it will be logged to stdout
23
+ syslog = true
24
+ ; NOTHING HERE YET
@@ -0,0 +1,50 @@
1
+ # Based on: https://github.com/cschiewek/devise_ldap_authenticatable/blob/master/spec/ldap/base.ldif
2
+ # ldapadd -x -h localhost -p 10389 -D "cn=admin,dc=rubynas,dc=com" -w secret -f base.ldif
3
+
4
+ dn: dc=rubynas,dc=com
5
+ objectClass: dcObject
6
+ objectClass: organizationalUnit
7
+ dc: rubynas
8
+ ou: RubyNAS
9
+
10
+ dn: ou=users,dc=rubynas,dc=com
11
+ objectClass: organizationalUnit
12
+ ou: Users
13
+
14
+ dn: ou=groups,dc=rubynas,dc=com
15
+ objectClass: organizationalUnit
16
+ ou: Groups
17
+
18
+ # user@rubynas.com, users, rubynas.com
19
+ dn: cn=user@rubynas.com,ou=users,dc=rubynas,dc=com
20
+ objectClass: inetOrgPerson
21
+ sn: User
22
+ uid: example_user
23
+ mail: user@rubynas.com
24
+ cn: user@rubynas.com
25
+ userPassword:: e1NIQX01ZW42RzZNZXpScm9UM1hLcWtkUE9tWS9CZlE9
26
+
27
+ # admin@rubynas.com, users, rubynas.com
28
+ dn: cn=admin@rubynas.com,ou=users,dc=rubynas,dc=com
29
+ objectClass: inetOrgPerson
30
+ objectClass: organizationalPerson
31
+ objectClass: person
32
+ objectClass: top
33
+ sn: Admin
34
+ uid: example_admin
35
+ cn: admin@rubynas.com
36
+ userPassword:: e1NIQX01ZW42RzZNZXpScm9UM1hLcWtkUE9tWS9CZlE9
37
+
38
+ # users, groups, rubynas.com
39
+ dn: cn=users,ou=groups,dc=rubynas,dc=com
40
+ objectClass: groupOfUniqueNames
41
+ objectClass: top
42
+ uniqueMember: cn=user@rubynas.com,ou=users,dc=rubynas,dc=com
43
+ cn: users
44
+
45
+ # users, groups, rubynas.com
46
+ dn: cn=admins,ou=groups,dc=rubynas,dc=com
47
+ objectClass: groupOfUniqueNames
48
+ objectClass: top
49
+ uniqueMember: cn=admin@rubynas.com,ou=users,dc=rubynas,dc=com
50
+ cn: admins
File without changes
@@ -0,0 +1,14 @@
1
+ # AUTO-GENERATED FILE - DO NOT EDIT!! Use ldapmodify.
2
+ # CRC32 a8b827f4
3
+ dn: dc=rubynas
4
+ objectClass: dcObject
5
+ objectClass: organizationalUnit
6
+ dc: rubynas
7
+ ou: RubyNAS
8
+ structuralObjectClass: organizationalUnit
9
+ entryUUID: 8b7e538c-e33b-43b9-a7f9-09e167ddc29c
10
+ creatorsName: cn=admin,dc=rubynas,dc=com
11
+ createTimestamp: 20130302174143Z
12
+ entryCSN: 20130302174143.742365Z#000000#000#000000
13
+ modifiersName: cn=admin,dc=rubynas,dc=com
14
+ modifyTimestamp: 20130302174143Z
@@ -0,0 +1,6 @@
1
+ attributetype ( 1.1.2.2.5 NAME 'authorizationRole' SUP name )
2
+
3
+ objectclass ( 1.1.2.2.1 NAME 'authorizations'
4
+ DESC 'mixin authorizations'
5
+ AUXILIARY
6
+ MAY authorizationRole )
@@ -0,0 +1,80 @@
1
+ This directory contains user application schema definitions for use
2
+ with slapd(8).
3
+
4
+ File Description
5
+ ---- -----------
6
+ collective.schema Collective attributes (experimental)
7
+ corba.schema Corba Object
8
+ core.schema OpenLDAP "core"
9
+ cosine.schema COSINE Pilot
10
+ duaconf.schema Client Configuration (work in progress)
11
+ dyngroup.schema Dynamic Group (experimental)
12
+ inetorgperson.schema InetOrgPerson
13
+ java.schema Java Object
14
+ misc.schema Miscellaneous Schema (experimental)
15
+ nadf.schema North American Directory Forum (obsolete)
16
+ nis.schema Network Information Service (experimental)
17
+ openldap.schema OpenLDAP Project (FYI)
18
+ ppolicy.schema Password Policy Schema (work in progress)
19
+
20
+ Additional "generally useful" schema definitions can be submitted
21
+ using the OpenLDAP Issue Tracking System <http://www.openldap.org/its/>.
22
+ Submissions should include a stable reference to a mature, open
23
+ technical specification (e.g., an RFC) for the schema.
24
+
25
+ The core.ldif and openldap.ldif files are equivalent to their
26
+ corresponding .schema files. They have been provided as examples
27
+ for use with the dynamic configuration backend. These example files
28
+ are not actually necessary since slapd will automatically convert any
29
+ included *.schema files into LDIF when converting a slapd.conf file
30
+ to a configuration database, but they serve as a model of how to
31
+ convert schema files in general.
32
+
33
+ ---
34
+
35
+ This notice applies to all files in this directory.
36
+
37
+ Copyright 1998-2011 The OpenLDAP Foundation, Redwood City, California, USA
38
+ All rights reserved.
39
+
40
+ Redistribution and use in source and binary forms, with or without
41
+ modification, are permitted only as authorized by the OpenLDAP
42
+ Public License. A copy of this license is available at
43
+ http://www.OpenLDAP.org/license.html or in file LICENSE in the
44
+ top-level directory of the distribution.
45
+
46
+ ---
47
+
48
+ This notice applies to all schema in this directory which are derived
49
+ from RFCs and other IETF documents.
50
+
51
+ Portions Copyright 1991-2004, The Internet Society. All Rights Reserved.
52
+
53
+ This document and translations of it may be copied and furnished
54
+ to others, and derivative works that comment on or otherwise explain
55
+ it or assist in its implementation may be prepared, copied, published
56
+ and distributed, in whole or in part, without restriction of any
57
+ kind, provided that the above copyright notice and this paragraph
58
+ are included on all such copies and derivative works. However,
59
+ this document itself may not be modified in any way, such as by
60
+ removing the copyright notice or references to the Internet Society
61
+ or other Internet organizations, except as needed for the purpose
62
+ of developing Internet standards in which case the procedures for
63
+ copyrights defined in the Internet Standards process must be
64
+ followed, or as required to translate it into languages other than
65
+ English.
66
+
67
+ The limited permissions granted above are perpetual and will not
68
+ be revoked by the Internet Society or its successors or assigns.
69
+
70
+ This document and the information contained herein is provided on
71
+ an "AS IS" basis and THE AUTHORS, THE INTERNET SOCIETY, AND THE
72
+ INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS
73
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE
74
+ OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY
75
+ IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
76
+ PURPOSE.
77
+
78
+
79
+ ---
80
+ $OpenLDAP$
@@ -0,0 +1,1727 @@
1
+ #
2
+ # Preliminary Apple OS X Native LDAP Schema
3
+ # This file is subject to change.
4
+ #
5
+
6
+ #
7
+ # Container structural object class.
8
+ #
9
+ #objectclass (
10
+ # 1.2.840.113556.1.3.23
11
+ # NAME 'container'
12
+ # SUP top
13
+ # STRUCTURAL
14
+ # MUST ( cn ) )
15
+
16
+ #
17
+ # Time to live
18
+ #
19
+ attributetype (
20
+ 1.3.6.1.4.1.250.1.60
21
+ NAME 'ttl'
22
+ EQUALITY integerMatch
23
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27' SINGLE-VALUE )
24
+
25
+ objectclass (
26
+ 1.3.6.1.4.1.250.3.18
27
+ NAME 'cacheObject'
28
+ AUXILIARY
29
+ SUP top
30
+ DESC 'Auxiliary object class to hold TTL caching information'
31
+ MAY ( ttl ) )
32
+
33
+ #
34
+ # User attributes 1.3.6.1.4.1.63.1000.1.1.1.1
35
+ #
36
+ attributetype (
37
+ 1.3.6.1.4.1.63.1000.1.1.1.1.6
38
+ NAME 'apple-user-homeurl'
39
+ DESC 'home directory URL'
40
+ EQUALITY caseExactIA5Match
41
+ SUBSTR caseExactIA5SubstringsMatch
42
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
43
+
44
+ attributetype (
45
+ 1.3.6.1.4.1.63.1000.1.1.1.1.7
46
+ NAME 'apple-user-class'
47
+ DESC 'user class'
48
+ EQUALITY caseExactIA5Match
49
+ SUBSTR caseExactIA5SubstringsMatch
50
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
51
+
52
+ attributetype (
53
+ 1.3.6.1.4.1.63.1000.1.1.1.1.8
54
+ NAME 'apple-user-homequota'
55
+ DESC 'home directory quota'
56
+ EQUALITY caseExactIA5Match
57
+ SUBSTR caseExactIA5SubstringsMatch
58
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
59
+
60
+ attributetype (
61
+ 1.3.6.1.4.1.63.1000.1.1.1.1.9
62
+ NAME 'apple-user-mailattribute'
63
+ DESC 'mail attribute'
64
+ EQUALITY caseExactMatch
65
+ SUBSTR caseExactSubstringsMatch
66
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
67
+
68
+ attributetype (
69
+ 1.3.6.1.4.1.63.1000.1.1.1.1.10
70
+ NAME 'apple-mcxflags'
71
+ DESC 'mcx flags'
72
+ EQUALITY caseExactMatch
73
+ SUBSTR caseExactSubstringsMatch
74
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
75
+
76
+ #attributetype (
77
+ # 1.3.6.1.4.1.63.1000.1.1.1.1.11
78
+ # NAME 'apple-mcxsettings'
79
+ # DESC 'mcx settings'
80
+ # EQUALITY caseExactMatch
81
+ # SUBSTR caseExactSubstringsMatch
82
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
83
+ attributetype (
84
+ 1.3.6.1.4.1.63.1000.1.1.1.1.16
85
+ NAME ( 'apple-mcxsettings' 'apple-mcxsettings2' )
86
+ DESC 'mcx settings'
87
+ EQUALITY caseExactMatch
88
+ SUBSTR caseExactSubstringsMatch
89
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
90
+
91
+ attributetype (
92
+ 1.3.6.1.4.1.63.1000.1.1.1.1.12
93
+ NAME 'apple-user-picture'
94
+ DESC 'picture'
95
+ EQUALITY caseExactMatch
96
+ SUBSTR caseExactSubstringsMatch
97
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
98
+
99
+ attributetype (
100
+ 1.3.6.1.4.1.63.1000.1.1.1.1.13
101
+ NAME 'apple-user-printattribute'
102
+ DESC 'print attribute'
103
+ EQUALITY caseExactMatch
104
+ SUBSTR caseExactSubstringsMatch
105
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
106
+
107
+ attributetype (
108
+ 1.3.6.1.4.1.63.1000.1.1.1.1.14
109
+ NAME 'apple-user-adminlimits'
110
+ DESC 'admin limits'
111
+ EQUALITY caseExactMatch
112
+ SUBSTR caseExactSubstringsMatch
113
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
114
+
115
+ attributetype (
116
+ 1.3.6.1.4.1.63.1000.1.1.1.1.15
117
+ NAME 'apple-user-authenticationhint'
118
+ DESC 'password hint'
119
+ EQUALITY caseExactMatch
120
+ SUBSTR caseExactSubstringsMatch
121
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
122
+
123
+ attributetype (
124
+ 1.3.6.1.4.1.63.1000.1.1.1.1.17
125
+ NAME 'apple-user-homesoftquota'
126
+ DESC 'home directory soft quota'
127
+ EQUALITY caseExactIA5Match
128
+ SUBSTR caseExactIA5SubstringsMatch
129
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
130
+
131
+ attributetype (
132
+ 1.3.6.1.4.1.63.1000.1.1.1.1.18
133
+ NAME 'apple-user-passwordpolicy'
134
+ DESC 'password policy options'
135
+ EQUALITY caseExactMatch
136
+ SUBSTR caseExactSubstringsMatch
137
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
138
+
139
+ attributetype (
140
+ 1.3.6.1.4.1.63.1000.1.1.1.1.19
141
+ NAME ( 'apple-keyword' )
142
+ DESC 'keywords'
143
+ EQUALITY caseExactMatch
144
+ SUBSTR caseExactSubstringsMatch
145
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
146
+
147
+ attributetype (
148
+ 1.3.6.1.4.1.63.1000.1.1.1.1.20
149
+ NAME ( 'apple-generateduid' )
150
+ DESC 'generated unique ID'
151
+ EQUALITY caseExactMatch
152
+ SUBSTR caseExactSubstringsMatch
153
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
154
+
155
+ attributetype (
156
+ 1.3.6.1.4.1.63.1000.1.1.1.1.21
157
+ NAME ( 'apple-imhandle' )
158
+ DESC 'IM handle (service:account name)'
159
+ EQUALITY caseExactMatch
160
+ SUBSTR caseExactSubstringsMatch
161
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
162
+
163
+ attributetype (
164
+ 1.3.6.1.4.1.63.1000.1.1.1.1.22
165
+ NAME ( 'apple-webloguri' )
166
+ DESC 'Weblog URI'
167
+ EQUALITY caseIgnoreMatch
168
+ SUBSTR caseExactSubstringsMatch
169
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE)
170
+
171
+ attributetype (
172
+ 1.3.6.1.4.1.63.1000.1.1.1.1.23
173
+ NAME ( 'apple-mapcoordinates' )
174
+ DESC 'Map Coordinates'
175
+ EQUALITY caseExactIA5Match
176
+ SUBSTR caseExactIA5SubstringsMatch
177
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
178
+
179
+ attributetype (
180
+ 1.3.6.1.4.1.63.1000.1.1.1.1.24
181
+ NAME ( 'apple-postaladdresses' )
182
+ DESC 'Postal Addresses'
183
+ EQUALITY caseExactIA5Match
184
+ SUBSTR caseExactIA5SubstringsMatch
185
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
186
+
187
+ attributetype (
188
+ 1.3.6.1.4.1.63.1000.1.1.1.1.25
189
+ NAME ( 'apple-phonecontacts' )
190
+ DESC 'Phone Contacts'
191
+ EQUALITY caseExactIA5Match
192
+ SUBSTR caseExactIA5SubstringsMatch
193
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
194
+
195
+ attributetype (
196
+ 1.3.6.1.4.1.63.1000.1.1.1.1.26
197
+ NAME ( 'apple-emailcontacts' )
198
+ DESC 'EMail Contacts'
199
+ EQUALITY caseExactIA5Match
200
+ SUBSTR caseExactIA5SubstringsMatch
201
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
202
+
203
+ attributetype (
204
+ 1.3.6.1.4.1.63.1000.1.1.1.1.27
205
+ NAME ( 'apple-birthday' )
206
+ DESC 'Birthday'
207
+ EQUALITY generalizedTimeMatch
208
+ SUBSTR caseExactIA5SubstringsMatch
209
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE )
210
+
211
+ attributetype (
212
+ 1.3.6.1.4.1.63.1000.1.1.1.1.28
213
+ NAME ( 'apple-relationships' )
214
+ DESC 'Relationships'
215
+ EQUALITY caseExactMatch
216
+ SUBSTR caseExactSubstringsMatch
217
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
218
+
219
+ attributetype (
220
+ 1.3.6.1.4.1.63.1000.1.1.1.1.29
221
+ NAME ( 'apple-company' )
222
+ DESC 'company'
223
+ EQUALITY caseIgnoreMatch
224
+ SUBSTR caseExactSubstringsMatch
225
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
226
+
227
+ attributetype (
228
+ 1.3.6.1.4.1.63.1000.1.1.1.1.30
229
+ NAME ( 'apple-nickname' )
230
+ DESC 'nickname'
231
+ EQUALITY caseExactMatch
232
+ SUBSTR caseExactSubstringsMatch
233
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
234
+
235
+ attributetype (
236
+ 1.3.6.1.4.1.63.1000.1.1.1.1.31
237
+ NAME ( 'apple-mapuri' )
238
+ DESC 'Map URI'
239
+ EQUALITY caseExactIA5Match
240
+ SUBSTR caseExactIA5SubstringsMatch
241
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
242
+
243
+ attributetype (
244
+ 1.3.6.1.4.1.63.1000.1.1.1.1.32
245
+ NAME ( 'apple-mapguid' )
246
+ DESC 'map GUID'
247
+ EQUALITY caseExactMatch
248
+ SUBSTR caseExactSubstringsMatch
249
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
250
+
251
+ attributetype (
252
+ 1.3.6.1.4.1.63.1000.1.1.1.1.33
253
+ NAME ( 'apple-serviceslocator' )
254
+ DESC 'Calendar Principal URI'
255
+ EQUALITY caseExactMatch
256
+ SUBSTR caseExactSubstringsMatch
257
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
258
+
259
+ attributetype (
260
+ 1.3.6.1.4.1.63.1000.1.1.1.1.34
261
+ NAME 'apple-organizationinfo'
262
+ DESC 'Originization Info data'
263
+ EQUALITY caseExactMatch
264
+ SUBSTR caseExactSubstringsMatch
265
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
266
+
267
+ attributetype (
268
+ 1.3.6.1.4.1.63.1000.1.1.1.1.35
269
+ NAME ( 'apple-namesuffix' )
270
+ DESC 'namesuffix'
271
+ EQUALITY caseExactMatch
272
+ SUBSTR caseExactSubstringsMatch
273
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
274
+
275
+ attributetype (
276
+ 1.3.6.1.4.1.63.1000.1.1.1.1.36
277
+ NAME ( 'apple-primarycomputerlist' )
278
+ DESC 'primary computer list'
279
+ EQUALITY caseExactMatch
280
+ SUBSTR caseExactSubstringsMatch
281
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
282
+
283
+ attributetype (
284
+ 1.3.6.1.4.1.63.1000.1.1.1.1.37
285
+ NAME 'apple-user-passwordpolicy-effective'
286
+ DESC 'password effective policy options'
287
+ EQUALITY caseExactMatch
288
+ SUBSTR caseExactSubstringsMatch
289
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
290
+
291
+ # Alternative to using homeDirectory from RFC 2307.
292
+ #attributetype (
293
+ # 1.3.6.1.4.1.63.1000.1.1.1.1.100
294
+ # NAME 'apple-user-homeDirectory'
295
+ # DESC 'The absolute path to the home directory'
296
+ # EQUALITY caseExactIA5Match
297
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
298
+
299
+ #
300
+ # User object class.
301
+ #
302
+ objectclass (
303
+ 1.3.6.1.4.1.63.1000.1.1.2.1
304
+ NAME 'apple-user'
305
+ SUP top
306
+ AUXILIARY
307
+ DESC 'apple user account'
308
+ MAY ( apple-user-homeurl $ apple-user-class $
309
+ apple-user-homequota $ apple-user-mailattribute $
310
+ apple-user-printattribute $ apple-mcxflags $
311
+ apple-mcxsettings $ apple-user-adminlimits $
312
+ apple-user-picture $ apple-user-authenticationhint $
313
+ apple-user-homesoftquota $ apple-user-passwordpolicy $
314
+ apple-keyword $ apple-generateduid $ apple-imhandle $ apple-webloguri $
315
+ authAuthority $ acctFlags $ pwdLastSet $ logonTime $
316
+ logoffTime $ kickoffTime $ homeDrive $ scriptPath $
317
+ profilePath $ userWorkstations $ smbHome $ rid $
318
+ primaryGroupID $ sambaSID $ sambaPrimaryGroupSID $
319
+ userCertificate $ userPKCS12 $ jpegPhoto $ apple-nickname $ apple-namesuffix $
320
+ apple-birthday $ apple-relationships $ apple-organizationinfo $
321
+ apple-phonecontacts $ apple-emailcontacts $ apple-postaladdresses $
322
+ apple-mapcoordinates $ apple-mapuri $ apple-mapguid $ apple-serviceslocator $
323
+ altSecurityIdentities ) )
324
+
325
+ #
326
+ # Group attributes 1.3.6.1.4.1.63.1000.1.1.1.14
327
+ #
328
+ attributetype (
329
+ 1.3.6.1.4.1.63.1000.1.1.1.14.1
330
+ NAME 'apple-group-homeurl'
331
+ DESC 'group home url'
332
+ EQUALITY caseExactIA5Match
333
+ SUBSTR caseExactIA5SubstringsMatch
334
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
335
+
336
+ attributetype (
337
+ 1.3.6.1.4.1.63.1000.1.1.1.14.2
338
+ NAME 'apple-group-homeowner'
339
+ DESC 'group home owner settings'
340
+ EQUALITY caseExactIA5Match
341
+ SUBSTR caseExactIA5SubstringsMatch
342
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
343
+
344
+ attributetype (
345
+ 1.3.6.1.4.1.63.1000.1.1.1.14.5
346
+ NAME 'apple-group-realname'
347
+ DESC 'group real name'
348
+ EQUALITY caseIgnoreMatch
349
+ SUBSTR caseIgnoreSubstringsMatch
350
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
351
+
352
+ attributetype (
353
+ 1.3.6.1.4.1.63.1000.1.1.1.14.6
354
+ NAME 'apple-group-nestedgroup'
355
+ DESC 'group real name'
356
+ EQUALITY caseExactMatch
357
+ SUBSTR caseExactSubstringsMatch
358
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
359
+
360
+ attributetype (
361
+ 1.3.6.1.4.1.63.1000.1.1.1.14.7
362
+ NAME 'apple-group-memberguid'
363
+ DESC 'group real name'
364
+ EQUALITY caseExactMatch
365
+ SUBSTR caseExactSubstringsMatch
366
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
367
+
368
+ attributetype (
369
+ 1.3.6.1.4.1.63.1000.1.1.1.14.8
370
+ NAME 'apple-group-services'
371
+ DESC 'group services'
372
+ EQUALITY caseExactMatch
373
+ SUBSTR caseExactSubstringsMatch
374
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
375
+
376
+ # Alternative to using memberUid from RFC 2307.
377
+ #attributetype (
378
+ # 1.3.6.1.4.1.63.1000.1.1.1.14.1000
379
+ # NAME 'apple-group-memberUid'
380
+ # DESC 'group member list'
381
+ # EQUALITY caseExactIA5Match
382
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
383
+ # can also use OID 1.3.6.1.4.1.63.1000.1.1.2.1000
384
+
385
+ attributetype (
386
+ 1.3.6.1.4.1.63.1000.1.1.1.14.9
387
+ NAME ( 'apple-contactguid' )
388
+ DESC 'contact GUID'
389
+ EQUALITY caseExactMatch
390
+ SUBSTR caseExactSubstringsMatch
391
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
392
+
393
+ attributetype (
394
+ 1.3.6.1.4.1.63.1000.1.1.1.14.10
395
+ NAME ( 'apple-ownerguid' )
396
+ DESC 'owner GUID'
397
+ EQUALITY caseExactMatch
398
+ SUBSTR caseExactSubstringsMatch
399
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
400
+
401
+ attributetype (
402
+ 1.3.6.1.4.1.63.1000.1.1.1.14.11
403
+ NAME ( 'apple-primarycomputerguid' )
404
+ DESC 'primary computer GUID'
405
+ EQUALITY caseExactMatch
406
+ SUBSTR caseExactSubstringsMatch
407
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
408
+
409
+ attributetype (
410
+ 1.3.6.1.4.1.63.1000.1.1.1.14.12
411
+ NAME 'apple-group-expandednestedgroup'
412
+ DESC 'expanded nested group list'
413
+ EQUALITY caseExactMatch
414
+ SUBSTR caseExactSubstringsMatch
415
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
416
+
417
+ attributetype (
418
+ 1.3.6.1.4.1.63.1000.1.1.1.14.13
419
+ NAME 'apple-selfwrite'
420
+ DESC 'selfwrite flag'
421
+ EQUALITY caseExactMatch
422
+ SUBSTR caseExactSubstringsMatch
423
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
424
+
425
+ attributetype (
426
+ 1.3.6.1.4.1.63.1000.1.1.1.14.14
427
+ NAME 'apple-locale-relay'
428
+ DESC 'designated locale relay server for replication'
429
+ EQUALITY caseExactMatch
430
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
431
+
432
+ attributetype (
433
+ 1.3.6.1.4.1.63.1000.1.1.1.14.15
434
+ NAME 'apple-locale-subnets'
435
+ DESC 'subnets associated with a locale'
436
+ EQUALITY caseExactMatch
437
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
438
+
439
+ #
440
+ # Group auxiliary object class.
441
+ #
442
+ objectclass (
443
+ 1.3.6.1.4.1.63.1000.1.1.2.14
444
+ NAME 'apple-group'
445
+ SUP top
446
+ AUXILIARY
447
+ DESC 'group account'
448
+ MAY ( apple-group-homeurl $
449
+ apple-group-homeowner $
450
+ apple-mcxflags $
451
+ apple-mcxsettings $
452
+ apple-group-realname $
453
+ apple-user-picture $
454
+ apple-keyword $
455
+ apple-generateduid $
456
+ apple-group-nestedgroup $
457
+ apple-group-memberguid $
458
+ mail $
459
+ rid $
460
+ sambaSID $
461
+ ttl $
462
+ jpegPhoto $
463
+ apple-group-services $
464
+ apple-contactguid $
465
+ apple-ownerguid $
466
+ labeledURI $
467
+ apple-locale-relay $
468
+ apple-locale-subnets $
469
+ apple-serviceslocator ) )
470
+
471
+ #
472
+ # Machine attributes 1.3.6.1.4.1.63.1000.1.1.1.3
473
+ #
474
+ attributetype (
475
+ 1.3.6.1.4.1.63.1000.1.1.1.3.8
476
+ NAME 'apple-machine-software'
477
+ DESC 'installed system software'
478
+ EQUALITY caseIgnoreIA5Match
479
+ SUBSTR caseIgnoreIA5SubstringsMatch
480
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
481
+
482
+ attributetype (
483
+ 1.3.6.1.4.1.63.1000.1.1.1.3.9
484
+ NAME 'apple-machine-hardware'
485
+ DESC 'system hardware description'
486
+ EQUALITY caseIgnoreIA5Match
487
+ SUBSTR caseIgnoreIA5SubstringsMatch
488
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
489
+
490
+ attributeType (
491
+ 1.3.6.1.4.1.63.1000.1.1.1.3.10
492
+ NAME 'apple-machine-serves'
493
+ DESC 'NetInfo Domain Server Binding'
494
+ EQUALITY caseExactIA5Match
495
+ SUBSTR caseExactIA5SubstringsMatch
496
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
497
+
498
+ attributeType (
499
+ 1.3.6.1.4.1.63.1000.1.1.1.3.11
500
+ NAME 'apple-machine-suffix'
501
+ DESC 'DIT suffix'
502
+ EQUALITY caseIgnoreMatch
503
+ SUBSTR caseIgnoreSubstringsMatch
504
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
505
+
506
+ attributeType (
507
+ 1.3.6.1.4.1.63.1000.1.1.1.3.12
508
+ NAME 'apple-machine-contactperson'
509
+ DESC 'Name of contact person/owner of this machine'
510
+ EQUALITY caseIgnoreMatch
511
+ SUBSTR caseIgnoreSubstringsMatch
512
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
513
+
514
+ #
515
+ # for backward compatibility with directory-based schema from Tiger
516
+ #
517
+
518
+ attributeType (
519
+ 1.3.6.1.4.1.63.1000.1.1.1.22.1
520
+ NAME 'attributeTypesConfig'
521
+ DESC 'RFC2252: attribute types'
522
+ EQUALITY caseExactMatch
523
+ SUBSTR caseExactSubstringsMatch
524
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
525
+
526
+ attributeType (
527
+ 1.3.6.1.4.1.63.1000.1.1.1.22.2
528
+ NAME 'objectClassesConfig'
529
+ EQUALITY caseExactMatch
530
+ SUBSTR caseExactSubstringsMatch
531
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
532
+
533
+ #
534
+ # Machine auxiliary object class.
535
+ #
536
+ objectclass (
537
+ 1.3.6.1.4.1.63.1000.1.1.2.3
538
+ NAME 'apple-machine'
539
+ SUP top
540
+ AUXILIARY
541
+ MAY ( apple-machine-software $
542
+ apple-machine-hardware $
543
+ apple-machine-serves $
544
+ apple-machine-suffix $
545
+ apple-machine-contactperson ) )
546
+
547
+ #
548
+ # Mount attributes 1.3.6.1.4.1.63.1000.1.1.1.8
549
+ #
550
+ attributetype (
551
+ 1.3.6.1.4.1.63.1000.1.1.1.8.1
552
+ NAME 'mountDirectory'
553
+ DESC 'mount path'
554
+ EQUALITY caseExactMatch
555
+ SUBSTR caseExactSubstringsMatch
556
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
557
+
558
+ attributetype (
559
+ 1.3.6.1.4.1.63.1000.1.1.1.8.2
560
+ NAME 'mountType'
561
+ DESC 'mount VFS type'
562
+ EQUALITY caseIgnoreIA5Match
563
+ SUBSTR caseIgnoreIA5SubstringsMatch
564
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
565
+
566
+ attributetype (
567
+ 1.3.6.1.4.1.63.1000.1.1.1.8.3
568
+ NAME 'mountOption'
569
+ DESC 'mount options'
570
+ EQUALITY caseIgnoreIA5Match
571
+ SUBSTR caseIgnoreIA5SubstringsMatch
572
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
573
+
574
+ attributetype (
575
+ 1.3.6.1.4.1.63.1000.1.1.1.8.4
576
+ NAME 'mountDumpFrequency'
577
+ DESC 'mount dump frequency'
578
+ EQUALITY caseIgnoreIA5Match
579
+ SUBSTR caseIgnoreIA5SubstringsMatch
580
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
581
+
582
+ attributetype (
583
+ 1.3.6.1.4.1.63.1000.1.1.1.8.5
584
+ NAME 'mountPassNo'
585
+ DESC 'mount passno'
586
+ EQUALITY caseIgnoreIA5Match
587
+ SUBSTR caseIgnoreIA5SubstringsMatch
588
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
589
+
590
+ # Alternative to using 'cn' when adding mount record schema to other LDAP servers
591
+ #attributetype (
592
+ # 1.3.6.1.4.1.63.1000.1.1.1.8.100
593
+ # NAME ( 'apple-mount-name' )
594
+ # DESC 'mount name'
595
+ # SUP name )
596
+
597
+ #
598
+ # Mount object 1.3.6.1.4.1.63.1000.1.1.2.8
599
+ #
600
+ objectclass (
601
+ 1.3.6.1.4.1.63.1000.1.1.2.8
602
+ NAME 'mount'
603
+ SUP top STRUCTURAL
604
+ MUST ( cn )
605
+ MAY ( mountDirectory $
606
+ mountType $
607
+ mountOption $
608
+ mountDumpFrequency $
609
+ mountPassNo ) )
610
+
611
+ #
612
+ # Printer attributes 1.3.6.1.4.1.63.1000.1.1.1.9
613
+ #
614
+ attributetype (
615
+ 1.3.6.1.4.1.63.1000.1.1.1.9.1
616
+ NAME 'apple-printer-attributes'
617
+ DESC 'printer attributes in /etc/printcap format'
618
+ EQUALITY caseIgnoreIA5Match
619
+ SUBSTR caseIgnoreIA5SubstringsMatch
620
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
621
+
622
+ attributetype (
623
+ 1.3.6.1.4.1.63.1000.1.1.1.9.2
624
+ NAME 'apple-printer-lprhost'
625
+ DESC 'printer LPR host name'
626
+ EQUALITY caseIgnoreMatch
627
+ SUBSTR caseIgnoreSubstringsMatch
628
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
629
+
630
+ attributetype (
631
+ 1.3.6.1.4.1.63.1000.1.1.1.9.3
632
+ NAME 'apple-printer-lprqueue'
633
+ DESC 'printer LPR queue'
634
+ EQUALITY caseIgnoreMatch
635
+ SUBSTR caseIgnoreSubstringsMatch
636
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
637
+
638
+ attributetype (
639
+ 1.3.6.1.4.1.63.1000.1.1.1.9.4
640
+ NAME 'apple-printer-type'
641
+ DESC 'printer type'
642
+ EQUALITY caseIgnoreMatch
643
+ SUBSTR caseIgnoreSubstringsMatch
644
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
645
+
646
+ attributetype (
647
+ 1.3.6.1.4.1.63.1000.1.1.1.9.5
648
+ NAME 'apple-printer-note'
649
+ DESC 'printer note'
650
+ EQUALITY caseIgnoreMatch
651
+ SUBSTR caseIgnoreSubstringsMatch
652
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
653
+
654
+ #
655
+ # Printer object 1.3.6.1.4.1.63.1000.1.1.2.9
656
+ #
657
+ objectclass (
658
+ 1.3.6.1.4.1.63.1000.1.1.2.9
659
+ NAME 'apple-printer'
660
+ SUP top STRUCTURAL
661
+ MUST ( cn )
662
+ MAY ( apple-printer-attributes $
663
+ apple-printer-lprhost $
664
+ apple-printer-lprqueue $
665
+ apple-printer-type $
666
+ apple-printer-note ) )
667
+
668
+ #
669
+ # Computer attributes 1.3.6.1.4.1.63.1000.1.1.1.10
670
+ #
671
+
672
+ attributetype (
673
+ 1.3.6.1.4.1.63.1000.1.1.1.10.2
674
+ NAME 'apple-realname'
675
+ DESC 'real name'
676
+ EQUALITY caseIgnoreMatch
677
+ SUBSTR caseExactSubstringsMatch
678
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
679
+
680
+ attributetype (
681
+ 1.3.6.1.4.1.63.1000.1.1.1.10.3
682
+ NAME 'apple-networkview'
683
+ DESC 'Network view for the computer'
684
+ EQUALITY caseExactMatch
685
+ SUBSTR caseExactSubstringsMatch
686
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
687
+
688
+ attributetype (
689
+ 1.3.6.1.4.1.63.1000.1.1.1.10.4
690
+ NAME 'apple-category'
691
+ DESC 'Category for the computer or neighborhood'
692
+ EQUALITY caseExactMatch
693
+ SUBSTR caseExactSubstringsMatch
694
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
695
+
696
+ attributetype (
697
+ 1.3.6.1.4.1.63.1000.1.1.1.10.5
698
+ NAME 'apple-srv'
699
+ DESC 'List of services to advertize via srv records'
700
+ EQUALITY caseExactMatch
701
+ SUBSTR caseExactSubstringsMatch
702
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
703
+
704
+ attributetype (
705
+ 1.3.6.1.4.1.63.1000.1.1.1.10.6
706
+ NAME 'apple-primary-locale'
707
+ DESC 'primary locale for replication'
708
+ EQUALITY caseExactMatch
709
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
710
+
711
+ attributetype (
712
+ 1.3.6.1.4.1.63.1000.1.1.1.10.7
713
+ NAME 'apple-parentlocales'
714
+ DESC 'parent locale'
715
+ EQUALITY caseExactMatch
716
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
717
+
718
+ attributetype (
719
+ 1.3.6.1.4.1.63.1000.1.1.1.10.8
720
+ NAME 'apple-networkinterfaces'
721
+ DESC 'list of available network interfaces'
722
+ EQUALITY caseExactMatch
723
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
724
+
725
+ #
726
+ # Computer list attributes 1.3.6.1.4.1.63.1000.1.1.1.11
727
+ #
728
+
729
+ attributetype (
730
+ 1.3.6.1.4.1.63.1000.1.1.1.11.3
731
+ NAME 'apple-computers'
732
+ DESC 'computers'
733
+ EQUALITY caseExactMatch
734
+ SUBSTR caseExactSubstringsMatch
735
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
736
+
737
+ attributetype (
738
+ 1.3.6.1.4.1.63.1000.1.1.1.11.4
739
+ NAME 'apple-computer-list-groups'
740
+ DESC 'groups'
741
+ EQUALITY caseExactMatch
742
+ SUBSTR caseExactSubstringsMatch
743
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
744
+
745
+ #
746
+ # XML plist attribute 1.3.6.1.4.1.63.1000.1.1.1.17.1
747
+ #
748
+ attributetype (
749
+ 1.3.6.1.4.1.63.1000.1.1.1.17.1
750
+ NAME 'apple-xmlplist'
751
+ DESC 'XML plist data'
752
+ EQUALITY caseExactMatch
753
+ SUBSTR caseExactSubstringsMatch
754
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
755
+
756
+ #
757
+ # Service URL attributes 1.3.6.1.4.1.63.1000.1.1.1.19.2
758
+ #
759
+ attributetype (
760
+ 1.3.6.1.4.1.63.1000.1.1.1.19.2
761
+ NAME 'apple-service-url'
762
+ DESC 'URL of service'
763
+ EQUALITY caseExactIA5Match
764
+ SUBSTR caseExactIA5SubstringsMatch
765
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
766
+ #
767
+ # Service Info attributes 1.3.6.1.4.1.63.1000.1.1.1.19.6
768
+ #
769
+ attributetype (
770
+ 1.3.6.1.4.1.63.1000.1.1.1.19.6
771
+ NAME 'apple-serviceinfo'
772
+ DESC 'service related information'
773
+ EQUALITY caseExactMatch
774
+ SUBSTR caseExactSubstringsMatch
775
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
776
+
777
+ attributetype (
778
+ 1.3.6.1.4.1.63.1000.1.1.1.19.7
779
+ NAME 'apple-hwuuid'
780
+ DESC 'Hardware uuid of computer'
781
+ EQUALITY caseExactMatch
782
+ SUBSTR caseExactSubstringsMatch
783
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
784
+
785
+ attributetype (
786
+ 1.3.6.1.4.1.63.1000.1.1.1.19.8
787
+ NAME 'apple-ldap-serverid'
788
+ DESC 'ID used by LDAP'
789
+ EQUALITY integerMatch
790
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
791
+
792
+ #
793
+ # Computer object 1.3.6.1.4.1.63.1000.1.1.2.10
794
+ #
795
+ objectclass (
796
+ 1.3.6.1.4.1.63.1000.1.1.2.10
797
+ NAME 'apple-computer'
798
+ DESC 'computer'
799
+ SUP top STRUCTURAL
800
+ MUST ( cn )
801
+ MAY ( apple-realname $
802
+ description $
803
+ macAddress $
804
+ apple-category $
805
+ apple-computer-list-groups $
806
+ apple-keyword $
807
+ apple-mcxflags $
808
+ apple-mcxsettings $
809
+ apple-networkview $
810
+ apple-xmlplist $
811
+ apple-service-url $
812
+ apple-serviceinfo $
813
+ apple-serviceslocator $
814
+ apple-primarycomputerlist $
815
+ apple-ldap-serverid $
816
+ authAuthority $
817
+ uidNumber $ gidNumber $ apple-generateduid $ ttl $
818
+ acctFlags $ pwdLastSet $ logonTime $
819
+ logoffTime $ kickoffTime $ rid $ primaryGroupID $
820
+ sambaSID $ sambaPrimaryGroupSID $
821
+ owner $ apple-ownerguid $ apple-contactguid $
822
+ ipHostNumber $ bootFile $ apple-hwuuid $ apple-srv $
823
+ apple-primary-locale $ apple-parentlocales $
824
+ apple-networkinterfaces $ userCertificate $ userPKCS12) )
825
+
826
+ #
827
+ # Computer list object 1.3.6.1.4.1.63.1000.1.1.2.11
828
+ #
829
+ objectclass (
830
+ 1.3.6.1.4.1.63.1000.1.1.2.11
831
+ NAME 'apple-computer-list'
832
+ DESC 'computer list'
833
+ SUP top STRUCTURAL
834
+ MUST ( cn )
835
+ MAY ( apple-mcxflags $
836
+ apple-mcxsettings $
837
+ apple-computer-list-groups $
838
+ apple-computers $
839
+ apple-generateduid $
840
+ apple-keyword ) )
841
+
842
+ #
843
+ # Configuration attributes 1.3.6.1.4.1.63.1000.1.1.1.12
844
+ #
845
+ attributetype (
846
+ 1.3.6.1.4.1.63.1000.1.1.1.12.1
847
+ NAME 'apple-password-server-location'
848
+ DESC 'password server location'
849
+ EQUALITY caseExactIA5Match
850
+ SUBSTR caseExactIA5SubstringsMatch
851
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
852
+
853
+ attributetype (
854
+ 1.3.6.1.4.1.63.1000.1.1.1.12.2
855
+ NAME 'apple-data-stamp'
856
+ DESC 'data stamp'
857
+ EQUALITY caseExactIA5Match
858
+ SUBSTR caseExactIA5SubstringsMatch
859
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
860
+
861
+ attributetype (
862
+ 1.3.6.1.4.1.63.1000.1.1.1.12.3
863
+ NAME 'apple-config-realname'
864
+ DESC 'config real name'
865
+ EQUALITY caseExactIA5Match
866
+ SUBSTR caseExactIA5SubstringsMatch
867
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
868
+
869
+ attributetype (
870
+ 1.3.6.1.4.1.63.1000.1.1.1.12.4
871
+ NAME 'apple-password-server-list'
872
+ DESC 'password server replication plist'
873
+ EQUALITY caseExactMatch
874
+ SUBSTR caseExactSubstringsMatch
875
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
876
+
877
+ attributetype (
878
+ 1.3.6.1.4.1.63.1000.1.1.1.12.5
879
+ NAME 'apple-ldap-replica'
880
+ DESC 'LDAP replication list'
881
+ EQUALITY caseExactMatch
882
+ SUBSTR caseExactSubstringsMatch
883
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
884
+
885
+ attributetype (
886
+ 1.3.6.1.4.1.63.1000.1.1.1.12.6
887
+ NAME 'apple-ldap-writable-replica'
888
+ DESC 'LDAP writable replication list'
889
+ EQUALITY caseExactMatch
890
+ SUBSTR caseExactSubstringsMatch
891
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
892
+
893
+ attributetype (
894
+ 1.3.6.1.4.1.63.1000.1.1.1.12.7
895
+ NAME 'apple-kdc-authkey'
896
+ DESC 'KDC master key RSA encrypted with realm public key'
897
+ EQUALITY caseExactMatch
898
+ SUBSTR caseExactSubstringsMatch
899
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
900
+
901
+ attributetype (
902
+ 1.3.6.1.4.1.63.1000.1.1.1.12.8
903
+ NAME 'apple-kdc-configdata'
904
+ DESC 'Contents of the kdc.conf file'
905
+ EQUALITY caseExactMatch
906
+ SUBSTR caseExactSubstringsMatch
907
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
908
+
909
+ attributetype (
910
+ 1.3.6.1.4.1.63.1000.1.1.1.12.9
911
+ NAME 'apple-last-serverid'
912
+ DESC 'Last serverID used'
913
+ EQUALITY integerMatch
914
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27'
915
+ SINGLE-VALUE )
916
+
917
+ #
918
+ # Configuration object 1.3.6.1.4.1.63.1000.1.1.2.12
919
+ #
920
+ objectclass (
921
+ 1.3.6.1.4.1.63.1000.1.1.2.12
922
+ NAME 'apple-configuration'
923
+ DESC 'configuration'
924
+ SUP top STRUCTURAL
925
+ MAY ( cn $ apple-config-realname $
926
+ apple-data-stamp $ apple-password-server-location $
927
+ apple-password-server-list $ apple-ldap-replica $
928
+ apple-ldap-writable-replica $ apple-keyword $
929
+ apple-kdc-authkey $ apple-kdc-configdata $ apple-xmlplist $ ttl $
930
+ apple-last-serverid ) )
931
+
932
+ #
933
+ # Preset computer list object class.
934
+ #
935
+ objectclass (
936
+ 1.3.6.1.4.1.63.1000.1.1.2.13
937
+ NAME 'apple-preset-computer-list'
938
+ DESC 'preset computer list'
939
+ SUP top STRUCTURAL
940
+ MUST ( cn )
941
+ MAY ( apple-mcxflags $
942
+ apple-mcxsettings $
943
+ apple-computer-list-groups $
944
+ apple-keyword ) )
945
+ #
946
+ # Preset computer object class.
947
+ #
948
+
949
+ objectclass (
950
+ 1.3.6.1.4.1.63.1000.1.1.2.25
951
+ NAME 'apple-preset-computer'
952
+ DESC 'preset computer'
953
+ SUP top STRUCTURAL
954
+ MUST ( cn )
955
+ MAY ( apple-mcxflags $
956
+ apple-mcxsettings $
957
+ apple-computer-list-groups $
958
+ apple-primarycomputerlist $
959
+ description $
960
+ apple-networkview $
961
+ apple-keyword ) )
962
+ #
963
+ # Preset computer group object class.
964
+ #AttributeTypes:
965
+ objectclass (
966
+ 1.3.6.1.4.1.63.1000.1.1.2.26
967
+ NAME 'apple-preset-computer-group'
968
+ DESC 'preset computer group'
969
+ SUP top STRUCTURAL
970
+ MUST ( cn )
971
+ MAY ( gidNumber $
972
+ memberUID $
973
+ apple-mcxflags $
974
+ apple-mcxsettings $
975
+ apple-group-nestedgroup $
976
+ description $
977
+ jpegPhoto $
978
+ apple-keyword ) )
979
+
980
+ #
981
+ # Preset group object 1.3.6.1.4.1.63.1000.1.1.3.14
982
+ #
983
+ objectclass (
984
+ 1.3.6.1.4.1.63.1000.1.1.3.14
985
+ NAME 'apple-preset-group'
986
+ DESC 'preset group'
987
+ SUP top STRUCTURAL
988
+ MUST ( cn )
989
+ MAY ( memberUid $
990
+ gidNumber $
991
+ description $
992
+ apple-group-homeurl $
993
+ apple-group-homeowner $
994
+ apple-mcxflags $
995
+ apple-mcxsettings $
996
+ apple-group-realname $
997
+ apple-keyword $
998
+ apple-group-nestedgroup $
999
+ apple-group-memberguid $
1000
+ ttl $
1001
+ jpegPhoto $
1002
+ apple-group-services $
1003
+ labeledURI $
1004
+ apple-serviceslocator ) )
1005
+
1006
+ #
1007
+ # Preset user object attributes 1.3.6.1.4.1.63.1000.1.1.1.15
1008
+ #
1009
+ attributetype (
1010
+ 1.3.6.1.4.1.63.1000.1.1.1.15.1
1011
+ NAME 'apple-preset-user-is-admin'
1012
+ DESC 'flag indicating whether the preset user is an administrator'
1013
+ EQUALITY caseExactIA5Match
1014
+ SUBSTR caseExactIA5SubstringsMatch
1015
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
1016
+
1017
+ #
1018
+ # Preset user object 1.3.6.1.4.1.63.1000.1.1.2.15
1019
+ #
1020
+ objectclass (
1021
+ 1.3.6.1.4.1.63.1000.1.1.2.15
1022
+ NAME 'apple-preset-user'
1023
+ DESC 'preset user'
1024
+ SUP top STRUCTURAL
1025
+ MUST ( cn )
1026
+ MAY ( uid $
1027
+ memberUid $
1028
+ gidNumber $
1029
+ homeDirectory $
1030
+ apple-user-homeurl $
1031
+ apple-user-homequota $
1032
+ apple-user-homesoftquota $
1033
+ apple-user-mailattribute $
1034
+ apple-user-printattribute $
1035
+ apple-mcxflags $
1036
+ apple-mcxsettings $
1037
+ apple-user-adminlimits $
1038
+ apple-user-passwordpolicy $
1039
+ userPassword $
1040
+ apple-user-picture $
1041
+ apple-keyword $
1042
+ loginShell $
1043
+ description $
1044
+ shadowLastChange $
1045
+ shadowExpire $
1046
+ authAuthority $
1047
+ homeDrive $ scriptPath $ profilePath $ smbHome $
1048
+ apple-preset-user-is-admin $
1049
+ jpegPhoto $
1050
+ apple-relationships $ apple-phonecontacts $ apple-emailcontacts $ apple-postaladdresses $ apple-mapcoordinates $
1051
+ apple-serviceslocator ) )
1052
+
1053
+ #
1054
+ # Authentication authority attribute 1.3.6.1.4.1.63.1000.1.1.2.16.1
1055
+ #
1056
+ #attributetype (
1057
+ # 1.3.6.1.4.1.63.1000.1.1.2.16.1
1058
+ # NAME 'authAuthority'
1059
+ # DESC 'password server authentication authority'
1060
+ # EQUALITY caseExactIA5Match
1061
+ # SUBSTR caseExactIA5SubstringsMatch
1062
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
1063
+
1064
+ #attributetype (
1065
+ # 1.3.6.1.4.1.63.1000.1.1.2.16.2
1066
+ # NAME ( 'authAuthority' 'authAuthority2' )
1067
+ # DESC 'password server authentication authority'
1068
+ # EQUALITY caseExactMatch
1069
+ # SUBSTR caseExactSubstringsMatch
1070
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1071
+
1072
+ #
1073
+ # Authentication authority object 1.3.6.1.4.1.63.1000.1.1.2.16
1074
+ #
1075
+ objectclass (
1076
+ 1.3.6.1.4.1.63.1000.1.1.2.16
1077
+ NAME 'authAuthorityObject'
1078
+ SUP top AUXILIARY
1079
+ MAY ( authAuthority ) )
1080
+
1081
+ #
1082
+ # Server Assistant configuration object 1.3.6.1.4.1.63.1000.1.1.2.17
1083
+ #
1084
+ objectclass (
1085
+ 1.3.6.1.4.1.63.1000.1.1.2.17
1086
+ NAME 'apple-serverassistant-config'
1087
+ SUP top STRUCTURAL
1088
+ MUST ( cn )
1089
+ MAY ( apple-xmlplist ) )
1090
+
1091
+ #
1092
+ # Location object attributes 1.3.6.1.4.1.63.1000.1.1.1.18
1093
+ #
1094
+ attributetype (
1095
+ 1.3.6.1.4.1.63.1000.1.1.1.18.1
1096
+ NAME 'apple-dns-domain'
1097
+ DESC 'DNS domain'
1098
+ EQUALITY caseExactMatch
1099
+ SUBSTR caseExactSubstringsMatch
1100
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1101
+
1102
+ attributetype (
1103
+ 1.3.6.1.4.1.63.1000.1.1.1.18.2
1104
+ NAME 'apple-dns-nameserver'
1105
+ DESC 'DNS name server list'
1106
+ EQUALITY caseExactMatch
1107
+ SUBSTR caseExactSubstringsMatch
1108
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1109
+
1110
+ #
1111
+ # Location object 1.3.6.1.4.1.63.1000.1.1.2.18
1112
+ #
1113
+ objectclass (
1114
+ 1.3.6.1.4.1.63.1000.1.1.2.18
1115
+ NAME 'apple-location'
1116
+ SUP top AUXILIARY
1117
+ MUST ( cn )
1118
+ MAY ( apple-dns-domain $ apple-dns-nameserver ) )
1119
+
1120
+ #
1121
+ # Service object attributes 1.3.6.1.4.1.63.1000.1.1.1.19
1122
+ #
1123
+ attributetype (
1124
+ 1.3.6.1.4.1.63.1000.1.1.1.19.1
1125
+ NAME 'apple-service-type'
1126
+ DESC 'type of service'
1127
+ EQUALITY caseExactIA5Match
1128
+ SUBSTR caseExactIA5SubstringsMatch
1129
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
1130
+
1131
+ #attributetype (
1132
+ # 1.3.6.1.4.1.63.1000.1.1.1.19.2
1133
+ # NAME 'apple-service-url'
1134
+ # DESC 'URL of service'
1135
+ # EQUALITY caseExactIA5Match
1136
+ # SUBSTR caseExactIA5SubstringsMatch
1137
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
1138
+
1139
+ attributetype (
1140
+ 1.3.6.1.4.1.63.1000.1.1.1.19.3
1141
+ NAME 'apple-service-port'
1142
+ DESC 'Service port number'
1143
+ EQUALITY integerMatch
1144
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
1145
+
1146
+ attributetype (
1147
+ 1.3.6.1.4.1.63.1000.1.1.1.19.4
1148
+ NAME 'apple-dnsname'
1149
+ DESC 'DNS name'
1150
+ EQUALITY caseExactMatch
1151
+ SUBSTR caseExactSubstringsMatch
1152
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1153
+
1154
+ attributetype (
1155
+ 1.3.6.1.4.1.63.1000.1.1.1.19.5
1156
+ NAME 'apple-service-location'
1157
+ DESC 'Service location'
1158
+ EQUALITY caseExactMatch
1159
+ SUBSTR caseExactSubstringsMatch
1160
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1161
+
1162
+ #
1163
+ # Service object 1.3.6.1.4.1.63.1000.1.1.2.19
1164
+ #
1165
+ objectclass (
1166
+ 1.3.6.1.4.1.63.1000.1.1.2.19
1167
+ NAME 'apple-service'
1168
+ SUP top STRUCTURAL
1169
+ MUST ( cn $
1170
+ apple-service-type )
1171
+ MAY ( ipHostNumber $
1172
+ description $
1173
+ apple-service-location $
1174
+ apple-service-url $
1175
+ apple-service-port $
1176
+ apple-dnsname $
1177
+ apple-keyword ) )
1178
+
1179
+ #
1180
+ # Neighborhood object attributes 1.3.6.1.4.1.63.1000.1.1.1.20
1181
+ #
1182
+ attributetype (
1183
+ 1.3.6.1.4.1.63.1000.1.1.1.20.1
1184
+ NAME 'apple-nodepathxml'
1185
+ DESC 'XML plist of directory node path'
1186
+ EQUALITY caseExactMatch
1187
+ SUBSTR caseExactSubstringsMatch
1188
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1189
+
1190
+ attributetype (
1191
+ 1.3.6.1.4.1.63.1000.1.1.1.20.2
1192
+ NAME 'apple-neighborhoodalias'
1193
+ DESC 'XML plist referring to another neighborhood record'
1194
+ EQUALITY caseExactMatch
1195
+ SUBSTR caseExactSubstringsMatch
1196
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1197
+
1198
+ attributetype (
1199
+ 1.3.6.1.4.1.63.1000.1.1.1.20.3
1200
+ NAME 'apple-computeralias'
1201
+ DESC 'XML plist referring to a computer record'
1202
+ EQUALITY caseExactMatch
1203
+ SUBSTR caseExactSubstringsMatch
1204
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1205
+
1206
+ #
1207
+ # Neighborhood object 1.3.6.1.4.1.63.1000.1.1.2.20
1208
+ #
1209
+ objectclass (
1210
+ 1.3.6.1.4.1.63.1000.1.1.2.20
1211
+ NAME 'apple-neighborhood'
1212
+ SUP top STRUCTURAL
1213
+ MUST ( cn )
1214
+ MAY ( description $
1215
+ apple-generateduid $
1216
+ apple-category $
1217
+ apple-nodepathxml $
1218
+ apple-neighborhoodalias $
1219
+ apple-computeralias $
1220
+ apple-keyword $
1221
+ apple-realname $
1222
+ apple-xmlplist $
1223
+ ttl ) )
1224
+
1225
+ #
1226
+ # ACL object attributes 1.3.6.1.4.1.63.1000.1.1.1.21
1227
+ #
1228
+ attributetype (
1229
+ 1.3.6.1.4.1.63.1000.1.1.1.21.1
1230
+ NAME 'apple-acl-entry'
1231
+ DESC 'acl entry'
1232
+ EQUALITY caseExactMatch
1233
+ SUBSTR caseExactSubstringsMatch
1234
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1235
+
1236
+ #
1237
+ # ACL object 1.3.6.1.4.1.63.1000.1.1.2.21
1238
+ #
1239
+ objectclass (
1240
+ 1.3.6.1.4.1.63.1000.1.1.2.21
1241
+ NAME 'apple-acl'
1242
+ SUP top STRUCTURAL
1243
+ MUST ( cn $
1244
+ apple-acl-entry ) )
1245
+
1246
+ #
1247
+ # Schema attributes 1.3.6.1.4.1.63.1000.1.1.1.22
1248
+ #
1249
+ #attributetype (
1250
+ # 1.3.6.1.4.1.63.1000.1.1.1.22.1
1251
+ # NAME 'attributeTypesConfig'
1252
+ # DESC 'attribute type configuration'
1253
+ # EQUALITY objectIdentifierFirstComponentMatch
1254
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.3 )
1255
+
1256
+ #attributetype (
1257
+ # 1.3.6.1.4.1.63.1000.1.1.1.22.2
1258
+ # NAME 'objectClassesConfig'
1259
+ # DESC 'object class configuration'
1260
+ # EQUALITY objectIdentifierFirstComponentMatch
1261
+ # SYNTAX 1.3.6.1.4.1.1466.115.121.1.37 )
1262
+
1263
+ #
1264
+ # Resource attributes 1.3.6.1.4.1.63.1000.1.1.1.23
1265
+ #
1266
+
1267
+ attributetype (
1268
+ 1.3.6.1.4.1.63.1000.1.1.1.23.1
1269
+ NAME 'apple-resource-type'
1270
+ DESC 'resource type'
1271
+ EQUALITY caseExactIA5Match
1272
+ SUBSTR caseExactIA5SubstringsMatch
1273
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
1274
+
1275
+ attributetype (
1276
+ 1.3.6.1.4.1.63.1000.1.1.1.23.2
1277
+ NAME 'apple-resource-info'
1278
+ DESC 'resource info'
1279
+ EQUALITY caseExactMatch
1280
+ SUBSTR caseExactSubstringsMatch
1281
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
1282
+
1283
+ attributetype (
1284
+ 1.3.6.1.4.1.63.1000.1.1.1.23.3
1285
+ NAME 'apple-capacity'
1286
+ DESC 'capacity'
1287
+ EQUALITY integerMatch
1288
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27' SINGLE-VALUE )
1289
+
1290
+ #
1291
+ # Resource object 1.3.6.1.4.1.63.1000.1.1.2.23
1292
+ #
1293
+
1294
+ objectclass (
1295
+ 1.3.6.1.4.1.63.1000.1.1.2.23
1296
+ NAME 'apple-resource'
1297
+ SUP top STRUCTURAL
1298
+ MUST ( cn )
1299
+ MAY ( apple-realname $ description $ jpegPhoto $ apple-keyword $
1300
+ apple-generateduid $ apple-contactguid $ apple-ownerguid $
1301
+ apple-resource-info $ apple-resource-type $ apple-capacity $
1302
+ labeledURI $ apple-mapuri $ apple-serviceslocator $ apple-phonecontacts $
1303
+ c $ apple-mapguid $ apple-mapcoordinates $ apple-xmlplist ) )
1304
+
1305
+ #
1306
+ # Augment object 1.3.6.1.4.1.63.1000.1.1.2.24
1307
+ #
1308
+
1309
+ objectclass (
1310
+ 1.3.6.1.4.1.63.1000.1.1.2.24
1311
+ NAME 'apple-augment'
1312
+ SUP top
1313
+ STRUCTURAL
1314
+ MUST ( cn ) )
1315
+
1316
+ attributetype (
1317
+ 1.3.6.1.1.1.1.31
1318
+ NAME 'automountMapName'
1319
+ DESC 'automount Map Name'
1320
+ EQUALITY caseExactMatch
1321
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
1322
+ SINGLE-VALUE )
1323
+
1324
+ attributetype (
1325
+ 1.3.6.1.1.1.1.32
1326
+ NAME 'automountKey'
1327
+ DESC 'Automount Key value'
1328
+ EQUALITY caseExactMatch
1329
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
1330
+ SINGLE-VALUE )
1331
+
1332
+ attributetype (
1333
+ 1.3.6.1.1.1.1.33
1334
+ NAME 'automountInformation'
1335
+ DESC 'Automount information'
1336
+ EQUALITY caseExactMatch
1337
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
1338
+ SINGLE-VALUE )
1339
+
1340
+ objectclass (
1341
+ 1.3.6.1.1.1.2.16
1342
+ NAME 'automountMap'
1343
+ SUP top STRUCTURAL
1344
+ MUST ( automountMapName )
1345
+ MAY description )
1346
+
1347
+ objectclass (
1348
+ 1.3.6.1.1.1.2.17
1349
+ NAME 'automount'
1350
+ SUP top STRUCTURAL
1351
+ DESC 'Automount'
1352
+ MUST ( automountKey $ automountInformation )
1353
+ MAY description )
1354
+
1355
+ #
1356
+ # Apple User Info object 1.3.6.1.4.1.63.1000.1.1.2.27
1357
+ #
1358
+
1359
+ objectclass (
1360
+ 1.3.6.1.4.1.63.1000.1.1.2.27
1361
+ NAME 'apple-user-info'
1362
+ SUP top STRUCTURAL
1363
+ MAY ( apple-namesuffix $ apple-phonecontacts $ apple-emailcontacts $ apple-postaladdresses $
1364
+ telephoneNumber $ mobile $ facsimileTelephoneNumber $ pager $
1365
+ l $ st $ c $ postalCode $ postalAddress $ street $
1366
+ apple-imhandle $ loginShell $ jpegPhoto $ apple-user-picture $ description $ userCertificate $ userPKCS12) )
1367
+
1368
+ #
1369
+ # Apple Computer Info object 1.3.6.1.4.1.63.1000.1.1.2.31
1370
+ #
1371
+
1372
+ objectclass (
1373
+ 1.3.6.1.4.1.63.1000.1.1.2.31
1374
+ NAME 'apple-computer-info'
1375
+ SUP top STRUCTURAL
1376
+ MAY ( apple-serviceinfo $ apple-serviceslocator $ apple-keyword $ userCertificate $ userPKCS12) )
1377
+
1378
+
1379
+ ## Schema elements for PWS records in LDAP
1380
+ ## Proposed schema elements for PWS records in LDAP
1381
+ # Last login time.
1382
+ attributetype ( 1.3.6.1.1.1.1.35
1383
+ NAME 'lastLoginTime'
1384
+ EQUALITY generalizedTimeMatch
1385
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.24'
1386
+ SINGLE-VALUE )
1387
+
1388
+ # Time of last password change.
1389
+ attributetype ( 1.3.6.1.1.1.1.36
1390
+ NAME 'passwordModDate'
1391
+ EQUALITY generalizedTimeMatch
1392
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.24'
1393
+ SINGLE-VALUE )
1394
+
1395
+ # User's authdata GUID, this is essentially the PWS slotid
1396
+ attributetype ( 1.3.6.1.1.1.1.37
1397
+ NAME 'authGUID'
1398
+ EQUALITY caseIgnoreMatch
1399
+ SUBSTR caseIgnoreSubstringsMatch
1400
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
1401
+
1402
+ # Running tally of login failures.
1403
+ attributetype ( 1.3.6.1.1.1.1.38
1404
+ NAME 'loginFailedAttempts'
1405
+ EQUALITY integerMatch
1406
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27'
1407
+ SINGLE-VALUE )
1408
+
1409
+ # Links the authdata record to the user record
1410
+ attributetype ( 1.3.6.1.1.1.1.39
1411
+ NAME 'userLinkage'
1412
+ EQUALITY caseIgnoreMatch
1413
+ SUBSTR caseIgnoreSubstringsMatch
1414
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
1415
+
1416
+ # String containing the reason for disabling.
1417
+ attributetype ( 1.3.6.1.1.1.1.40
1418
+ NAME 'disableReason'
1419
+ EQUALITY caseIgnoreMatch
1420
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1421
+ SINGLE-VALUE )
1422
+
1423
+ # The following are attributes storing the secrets for each auth type
1424
+ attributetype ( 1.3.6.1.1.1.1.42
1425
+ NAME 'cmusaslsecretSMBNT'
1426
+ EQUALITY octetStringMatch
1427
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1428
+ SINGLE-VALUE )
1429
+
1430
+ attributetype ( 1.3.6.1.1.1.1.43
1431
+ NAME 'cmusaslsecretSMBLM'
1432
+ EQUALITY octetStringMatch
1433
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1434
+ SINGLE-VALUE )
1435
+
1436
+ attributetype ( 1.3.6.1.1.1.1.44
1437
+ NAME 'cmusaslsecretDIGEST-MD5'
1438
+ EQUALITY octetStringMatch
1439
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1440
+ SINGLE-VALUE )
1441
+
1442
+ attributetype ( 1.3.6.1.1.1.1.45
1443
+ NAME 'cmusaslsecretCRAM-MD5'
1444
+ EQUALITY octetStringMatch
1445
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1446
+ SINGLE-VALUE )
1447
+
1448
+ attributetype ( 1.3.6.1.1.1.1.46
1449
+ NAME 'cmusaslsecretPPS'
1450
+ EQUALITY octetStringMatch
1451
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1452
+ SINGLE-VALUE )
1453
+
1454
+ # The realm name and principal name are stored in the "secrets" area for
1455
+ # the kerberos auth types. These may be unnecessary after the Heimdal transition.
1456
+ attributetype ( 1.3.6.1.1.1.1.47
1457
+ NAME 'KerberosRealmName'
1458
+ EQUALITY caseIgnoreMatch
1459
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1460
+ SINGLE-VALUE )
1461
+
1462
+ attributetype ( 1.3.6.1.1.1.1.48
1463
+ NAME 'KerberosPrincName'
1464
+ EQUALITY caseIgnoreMatch
1465
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1466
+ SINGLE-VALUE )
1467
+
1468
+ # User password, stored DES encrypted for obfuscation.
1469
+ attributetype ( 1.3.6.1.1.1.1.49
1470
+ NAME 'password'
1471
+ EQUALITY octetStringMatch
1472
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1473
+ SINGLE-VALUE )
1474
+
1475
+ attributetype ( 1.3.6.1.1.1.1.50
1476
+ NAME 'adminGroups'
1477
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1478
+ SINGLE-VALUE )
1479
+
1480
+ # DIGEST-MD5 hash with username, sasl realm, password
1481
+ attributetype ( 1.3.6.1.1.1.1.51
1482
+ NAME 'cmusaslsecretDIGEST-UMD5'
1483
+ EQUALITY octetStringMatch
1484
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1485
+ SINGLE-VALUE )
1486
+
1487
+ # Time the user was created.
1488
+ attributetype ( 1.3.6.1.1.1.1.55
1489
+ NAME 'creationDate'
1490
+ EQUALITY generalizedTimeMatch
1491
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.24'
1492
+ SINGLE-VALUE )
1493
+
1494
+ # History data
1495
+ attributetype ( 1.3.6.1.1.1.1.56
1496
+ NAME 'historyData'
1497
+ EQUALITY octetStringMatch
1498
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1499
+ SINGLE-VALUE )
1500
+
1501
+ # Krb schema
1502
+ attributetype ( 1.3.6.1.1.1.1.86
1503
+ NAME 'draft-krbPrincipalName'
1504
+ DESC 'Canonical principal name'
1505
+ EQUALITY caseExactIA5Match
1506
+ SUBSTR caseExactSubstringsMatch
1507
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
1508
+ SINGLE-VALUE )
1509
+
1510
+ attributetype ( 1.3.6.1.1.1.1.87
1511
+ NAME 'draft-krbRealmName'
1512
+ EQUALITY octetStringMatch
1513
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
1514
+
1515
+ attributetype ( 1.3.6.1.1.1.1.88
1516
+ NAME 'draft-krbPrincipalAliases'
1517
+ SUP draft-krbPrincipalName )
1518
+
1519
+ attributetype ( 1.3.6.1.1.1.1.89
1520
+ NAME 'draft-krbTicketMaxLife'
1521
+ EQUALITY integerMatch
1522
+ ORDERING integerOrderingMatch
1523
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
1524
+ SINGLE-VALUE )
1525
+
1526
+ attributetype ( 1.3.6.1.1.1.1.90
1527
+ NAME 'draft-krbTicketMaxRenewal'
1528
+ EQUALITY integerMatch
1529
+ ORDERING integerOrderingMatch
1530
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
1531
+ SINGLE-VALUE )
1532
+
1533
+ attributetype ( 1.3.6.1.1.1.1.91
1534
+ NAME 'draft-krbEncSaltTypes'
1535
+ EQUALITY caseIgnoreMatch
1536
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1537
+
1538
+ attributetype ( 1.3.6.1.1.1.1.92
1539
+ NAME 'draft-krbKeySet'
1540
+ EQUALITY octetStringMatch
1541
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
1542
+
1543
+ attributetype ( 1.3.6.1.1.1.1.93
1544
+ NAME 'draft-krbKeyVersion'
1545
+ EQUALITY integerMatch
1546
+ ORDERING integerOrderingMatch
1547
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
1548
+ SINGLE-VALUE )
1549
+
1550
+ attributetype ( 1.3.6.1.1.1.1.94
1551
+ NAME 'draft-krbPrincipalRealm'
1552
+ DESC 'DN of krbRealm entry'
1553
+ SUP distinguishedName )
1554
+
1555
+ attributetype ( 1.3.6.1.1.1.1.95
1556
+ NAME 'draft-krbTicketPolicy'
1557
+ EQUALITY integerMatch
1558
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27
1559
+ SINGLE-VALUE )
1560
+
1561
+ attributetype ( 1.3.6.1.1.1.1.96
1562
+ NAME 'draft-krbExtraData'
1563
+ EQUALITY octetStringMatch
1564
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
1565
+
1566
+ attributetype ( 1.3.6.1.1.1.1.98
1567
+ NAME 'draft-krbPrincipalACL'
1568
+ EQUALITY integerMatch
1569
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27'
1570
+ SINGLE-VALUE )
1571
+
1572
+ attributetype ( 1.3.6.1.1.1.1.97
1573
+ NAME 'crschallenge'
1574
+ EQUALITY caseIgnoreMatch
1575
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1576
+ SINGLE-VALUE )
1577
+
1578
+ # multivalued attribute to store computer account owner GUID.
1579
+ attributetype ( 1.3.6.1.1.1.1.103
1580
+ NAME 'ownerGUIDList'
1581
+ DESC 'computer account owner GUID'
1582
+ EQUALITY caseIgnoreMatch
1583
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1584
+
1585
+ # objectclass representing a user/slot.
1586
+ # uid is the shortname of the user as stored in PWS.
1587
+ # apple-generateduid is intended to match the user's UID. Currently unpopulated
1588
+ objectclass (
1589
+ 1.3.6.1.4.1.63.1000.1.1.2.28
1590
+ NAME 'pwsAuthdata'
1591
+ STRUCTURAL
1592
+ MUST ( authGUID )
1593
+ MAY ( uid $ authGUID $ passwordModDate $ lastLoginTime $ loginFailedAttempts $
1594
+ disableReason $ apple-user-passwordpolicy $ adminGroups $ cmusaslsecretSMBNT $
1595
+ cmusaslsecretSMBLM $ cmusaslsecretDIGEST-MD5 $ cmusaslsecretCRAM-MD5 $ cmusaslsecretPPS $
1596
+ KerberosRealmName $ KerberosPrincName $ password $ creationDate $ historyData $
1597
+ draft-krbPrincipalName $ draft-krbRealmName $ draft-krbPrincipalAliases $
1598
+ draft-krbTicketMaxLife $ draft-krbTicketMaxRenewal $ draft-krbEncSaltTypes $
1599
+ draft-krbKeySet $ draft-krbKeyVersion $ draft-krbPrincipalRealm $ draft-krbTicketPolicy $
1600
+ draft-krbExtraData $ draft-krbPrincipalACL $ crschallenge $ userLinkage $
1601
+ cmusaslsecretDIGEST-UMD5 $ ownerGUIDList ) )
1602
+
1603
+ # Multi valued attribute to store the names of auth methods considered "weak"
1604
+ # "weak" auth methods are not allowed to be used for some privileged operations
1605
+ attributetype ( 1.3.6.1.1.1.1.76
1606
+ NAME 'weakAuthMethod'
1607
+ EQUALITY caseIgnoreMatch
1608
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
1609
+
1610
+ # object class storing global policy and weak auth methods.
1611
+ objectclass (
1612
+ 1.3.6.1.4.1.63.1000.1.1.2.29
1613
+ NAME 'pwPolicy'
1614
+ STRUCTURAL
1615
+ MUST ( cn )
1616
+ MAY ( apple-user-passwordpolicy $ weakAuthMethod ) )
1617
+
1618
+ # PWS' private key. Stored in authdata container for security.
1619
+ attributetype ( 1.3.6.1.1.1.1.77
1620
+ NAME 'PWSPrivateKey'
1621
+ EQUALITY octetStringMatch
1622
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.40'
1623
+ SINGLE-VALUE )
1624
+
1625
+ attributetype ( 1.3.6.1.1.1.1.78
1626
+ NAME 'PWSPublicKey'
1627
+ EQUALITY caseIgnoreMatch
1628
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1629
+ SINGLE-VALUE )
1630
+
1631
+ # Allow storing the PWS private key in the root of the container, cn=config style
1632
+ objectclass (
1633
+ 1.3.6.1.4.1.63.1000.1.1.2.30
1634
+ NAME 'pwAuthData'
1635
+ SUP container
1636
+ MAY ( PWSPrivateKey $ PWSPublicKey ) )
1637
+
1638
+
1639
+ # Allow storing certificate request information
1640
+
1641
+ attributetype ( 1.3.6.1.1.1.1.79
1642
+ NAME 'apple-transactionID'
1643
+ EQUALITY caseIgnoreMatch
1644
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1645
+ SINGLE-VALUE )
1646
+
1647
+ attributetype ( 1.3.6.1.1.1.1.80
1648
+ NAME 'apple-pkiStatus'
1649
+ EQUALITY integerMatch
1650
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27'
1651
+ SINGLE-VALUE )
1652
+
1653
+ attributetype ( 1.3.6.1.1.1.1.81
1654
+ NAME 'apple-failInfo'
1655
+ EQUALITY integerMatch
1656
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27'
1657
+ SINGLE-VALUE )
1658
+
1659
+ attributetype ( 1.3.6.1.1.1.1.82
1660
+ NAME 'apple-certificateSigningRequest'
1661
+ EQUALITY certificateExactMatch
1662
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.8'
1663
+ SINGLE-VALUE )
1664
+
1665
+ attributetype ( 1.3.6.1.1.1.1.83
1666
+ NAME 'apple-device-guid'
1667
+ EQUALITY caseIgnoreMatch
1668
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1669
+ SINGLE-VALUE )
1670
+
1671
+ attributetype ( 1.3.6.1.1.1.1.84
1672
+ NAME 'apple-issuer'
1673
+ EQUALITY caseIgnoreMatch
1674
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1675
+ SINGLE-VALUE )
1676
+
1677
+ attributetype ( 1.3.6.1.1.1.1.85
1678
+ NAME 'apple-serialNumber'
1679
+ EQUALITY caseIgnoreMatch
1680
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15'
1681
+ SINGLE-VALUE )
1682
+
1683
+ attributetype ( 1.3.6.1.1.1.1.99
1684
+ NAME 'apple-revocationReason'
1685
+ EQUALITY integerMatch
1686
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.27'
1687
+ SINGLE-VALUE )
1688
+
1689
+ attributetype ( 1.3.6.1.1.1.1.100
1690
+ NAME 'apple-revocationDate'
1691
+ EQUALITY generalizedTimeMatch
1692
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.24'
1693
+ SINGLE-VALUE )
1694
+
1695
+ attributetype ( 1.3.6.1.1.1.1.101
1696
+ NAME 'apple-validNotBefore'
1697
+ EQUALITY generalizedTimeMatch
1698
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.24'
1699
+ SINGLE-VALUE )
1700
+
1701
+ attributetype ( 1.3.6.1.1.1.1.102
1702
+ NAME 'apple-validNotAfter'
1703
+ EQUALITY generalizedTimeMatch
1704
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.24'
1705
+ SINGLE-VALUE )
1706
+
1707
+ objectclass (
1708
+ 1.3.6.1.4.1.63.1000.1.1.2.33
1709
+ NAME 'apple-certificateRequestInfo'
1710
+ SUP top STRUCTURAL
1711
+ MUST ( apple-transactionID $ apple-pkiStatus )
1712
+ MAY ( apple-failInfo $ apple-issuer $ apple-serialNumber $
1713
+ userCertificate $ apple-certificateSigningRequest $ apple-device-guid $
1714
+ apple-xmlplist $ apple-revocationReason $ apple-revocationDate $
1715
+ apple-validNotBefore $ apple-validNotAfter ) )
1716
+
1717
+ attributetype ( 1.3.6.1.1.1.1.104
1718
+ NAME 'apple-enabled-auth-mech'
1719
+ DESC 'Enabled auth mechs'
1720
+ EQUALITY caseIgnoreMatch
1721
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
1722
+
1723
+ attributetype ( 1.3.6.1.1.1.1.105
1724
+ NAME 'apple-disabled-auth-mech'
1725
+ DESC 'Disabled auth mechs'
1726
+ EQUALITY caseIgnoreMatch
1727
+ SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )