radum 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/LICENSE +1 -1
  2. data/lib/radum.rb +12 -2
  3. data/lib/radum/ad.rb +28 -15
  4. metadata +42 -15
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright 2009 Shaun Rowland. All rights reserved.
1
+ Copyright 2011 Shaun Rowland. All rights reserved.
2
2
 
3
3
  Redistribution and use in source and binary forms, with or without modification,
4
4
  are permitted provided that the following conditions are met:
@@ -1,6 +1,16 @@
1
- require 'rubygems'
1
+ # Ruby 1.9.x requirements.
2
+ if RUBY_VERSION =~ /^1.9/
3
+ # The net-ldap gem uses String#to_a. In Ruby 1.9.x this needs to be
4
+ # String.lines.to_a, but I have to monkey patch this in for things to work.
5
+ class String
6
+ def to_a
7
+ self.lines.to_a
8
+ end
9
+ end
10
+ end
2
11
 
3
- gem 'ruby-net-ldap', '= 0.0.4'
12
+ require 'yaml'
13
+ gem 'net-ldap', '= 0.1.1'
4
14
  require 'net/ldap'
5
15
 
6
16
  require 'radum/logger'
@@ -13,7 +13,11 @@
13
13
  # and Linux in addition to Windows. RADUM does require the Active Directory
14
14
  # server to support SSL because that is a requirement for creating user
15
15
  # accounts through LDAP. This means that a domain must have a certificate
16
- # server. Using a self-signed certificate should be fine.
16
+ # server. Using a self-signed certificate should be fine. It might also
17
+ # be necessary to install the Certificate Authority Web Enrollment role
18
+ # service. This is required when running RADUM from Mac OS X Snow Leopard
19
+ # because the ocspd OCSP and CRL daemon will try to contact the Active
20
+ # Directory server.
17
21
  #
18
22
  # RADUM considers its view of user and group attributes to be authoritative,
19
23
  # with the exception that it will not modify the members of a group that it
@@ -355,16 +359,17 @@
355
359
  #
356
360
  # = Windows Server Versions
357
361
  #
358
- # RADUM has been exclusively tested against Windows Server 2008 and Windows
359
- # Server 2003 R2 Standard Edition SP2. The testing system had Microsoft
360
- # Identity Management for UNIX installed and had the Certificate Services Role
361
- # added, which is added using Add/Remove Programs in Windows Server 2003.
362
- # Microsoft Identity Management for UNIX is generally required for editing
363
- # UNIXUser and UNIXGroup objects in the Active Directory Users and Computers
364
- # GUI tool if desired, and the Certificate Services Role is required in the
365
- # domain because SSL is required for creating User and UNIXUser objects using
366
- # LDAP. The LDAP attributes required for UNIXUser objects don't necessarily
367
- # require Microsoft Identity Management for UNIX to be installed.
362
+ # RADUM has been tested against Windows Server 2008 R2, Windows Server 2008,
363
+ # and Windows Server 2003 R2 Standard Edition SP2. The testing systems had
364
+ # Microsoft Identity Management for UNIX installed and had the Certificate
365
+ # Services Role added, which is added using Add/Remove Programs in Windows
366
+ # Server 2003. Microsoft Identity Management for UNIX is generally required
367
+ # for editing UNIXUser and UNIXGroup objects in the Active Directory Users
368
+ # and Computers GUI tool if desired, and the Certificate Services Role is
369
+ # required in the domain because SSL is required for creating User and
370
+ # UNIXUser objects using LDAP. The LDAP attributes required for UNIXUser
371
+ # objects don't necessarily require Microsoft Identity Management for UNIX
372
+ # to be installed.
368
373
  #
369
374
  # RADUM works with a domain functional level of Windows 2003 Server or higher.
370
375
  # Most of RADUM will work with a domain functional level of Windows 2000 native
@@ -375,15 +380,23 @@
375
380
  # than Windows Server 2003. RADUM was not tested at a domain functional level
376
381
  # lower than Windows 2000 native.
377
382
  #
383
+ # = Ruby 1.9 Support
384
+ #
385
+ # RADUM now works with Ruby 1.9 and has been tested with Ruby 1.8.7, JRuby
386
+ # 1.5.6, and Ruby 1.9.2. Ruby 1.9 users should note that RADUM adds the
387
+ # String#to_a method back to the String class. This is necessary so that
388
+ # net-ldap 0.1.1 works with Ruby 1.9. This will be removed as soon as
389
+ # possible.
390
+ #
378
391
  # Author:: Shaun Rowland <mailto:rowand@shaunrowland.com>
379
- # Copyright:: Copyright 2009 Shaun Rowland. All rights reserved.
392
+ # Copyright:: Copyright 2011 Shaun Rowland. All rights reserved.
380
393
  # License:: BSD License included in the project LICENSE file.
381
394
 
382
395
  module RADUM
383
396
  # Group type constants.
384
397
  #
385
398
  # These are the Fixnum representations of what should be Bignum objects in
386
- # some cases as far as I am aware. In the Active Directory Users and Groups
399
+ # some cases as far as I am aware. In the Active Directory Users and Computers
387
400
  # GUI tool, they are shown as hexidecimal values, indicating they should be
388
401
  # Bignums (well, some of them). However, if you try to edit the values in
389
402
  # that tool (with advanced attribute editing enabled or with the ADSI Edit
@@ -918,7 +931,7 @@ module RADUM
918
931
 
919
932
  # Make sure we are working with a User object only.
920
933
  unless user.instance_of?(User)
921
- raise ":user argument just be a User object."
934
+ raise ":user argument must be a User object."
922
935
  end
923
936
 
924
937
  if user.removed?
@@ -1047,7 +1060,7 @@ module RADUM
1047
1060
 
1048
1061
  # Make sure we are working with a UNIXUser object only.
1049
1062
  unless user.instance_of?(UNIXUser)
1050
- raise ":user argument just be a UNIXUser object."
1063
+ raise ":user argument must be a UNIXUser object."
1051
1064
  end
1052
1065
 
1053
1066
  if user.removed?
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: radum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ hash: 25
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 3
10
+ version: 0.0.3
5
11
  platform: ruby
6
12
  authors:
7
13
  - Shaun Rowland
@@ -9,19 +15,25 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2009-08-06 00:00:00 -04:00
18
+ date: 2011-01-08 00:00:00 -05:00
13
19
  default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
- name: ruby-net-ldap
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ name: net-ldap
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
20
26
  requirements:
21
27
  - - "="
22
28
  - !ruby/object:Gem::Version
23
- version: 0.0.4
24
- version:
29
+ hash: 25
30
+ segments:
31
+ - 0
32
+ - 1
33
+ - 1
34
+ version: 0.1.1
35
+ type: :runtime
36
+ version_requirements: *id001
25
37
  description: " RADUM is a module to manage users and groups in Active Directory uisng pure\n Ruby on any supported platform.\n"
26
38
  email:
27
39
  - rowland@shaunrowland.com
@@ -39,6 +51,11 @@ files:
39
51
  - lib/radum/user.rb
40
52
  - lib/radum.rb
41
53
  - LICENSE
54
+ - test/tc_ad.rb
55
+ - test/tc_container.rb
56
+ - test/tc_group.rb
57
+ - test/tc_unix_user.rb
58
+ - test/tc_user.rb
42
59
  has_rdoc: true
43
60
  homepage: http://www.shaunrowland.com/wiki/RADUM
44
61
  licenses: []
@@ -53,10 +70,12 @@ rdoc_options:
53
70
  - radum-gemspec.rb
54
71
  - --exclude
55
72
  - lib/radum.rb
73
+ - --exclude
74
+ - Makefile
75
+ - --exclude
76
+ - Notes.txt
56
77
  - --main
57
78
  - RADUM
58
- - --accessor
59
- - directory
60
79
  - --title
61
80
  - RADUM -- Ruby Active Directory User Management
62
81
  - --line-numbers
@@ -65,21 +84,29 @@ rdoc_options:
65
84
  require_paths:
66
85
  - lib
67
86
  required_ruby_version: !ruby/object:Gem::Requirement
87
+ none: false
68
88
  requirements:
69
- - - ~>
89
+ - - ">="
70
90
  - !ruby/object:Gem::Version
71
- version: 1.8.5
72
- version:
91
+ hash: 57
92
+ segments:
93
+ - 1
94
+ - 8
95
+ - 7
96
+ version: 1.8.7
73
97
  required_rubygems_version: !ruby/object:Gem::Requirement
98
+ none: false
74
99
  requirements:
75
100
  - - ">="
76
101
  - !ruby/object:Gem::Version
102
+ hash: 3
103
+ segments:
104
+ - 0
77
105
  version: "0"
78
- version:
79
106
  requirements: []
80
107
 
81
108
  rubyforge_project: radum
82
- rubygems_version: 1.3.5
109
+ rubygems_version: 1.3.7
83
110
  signing_key:
84
111
  specification_version: 3
85
112
  summary: Manage users and groups in Active Directory.