Advertisement
Guest User

Untitled

a guest
Jul 31st, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. class User < ActiveLdap::Base
  2. ldap_mapping :dn_attribute=>"uniqueIdentifier",:prefix=>"dc=stockport,dc=bsfbh,dc=com",
  3. :classes=>["bsfbhAccount"]
  4. end
  5. ActiveLdap::Base.establish_connection(:host=>"192.168.111.27",:port=>389,:bind_dn=>"cn=root,dc=office",:password=>"secret")
  6.  
  7. me = User.new('fox')
  8. me.cn = "Testing MOD"
  9. me.save
  10.  
  11. gives:
  12. /usr//lib/ruby/gems/1.8/gems/ruby-activeldap-0.8.0/lib/active_ldap/base.rb:819:in `method_missing': undefined method `cn=' for #<User:0xb7802aac> (NoMethodError)
  13. from test2.rb:14
  14.  
  15. my ldap schema does have the cn attribute.
  16.  
  17. the example code looks like this:
  18. class User < ActiveLdap::Base
  19. ldap_mapping :dn_attribute => 'uid', :prefix => 'ou=People',
  20. :classes => ['person', 'posixAccount']
  21. end
  22. # name, cn and uid are passed via argv
  23. user = User.new(name)
  24. user.add_class('shadowAccount')
  25. user.cn = cn
  26. user.uid_number = uid
  27. user.gid_number = uid
  28. user.home_directory = "/home/#{name}"
  29. user.sn = "somesn"
  30. unless user.save
  31. puts "failed"
  32. puts user.errors.full_messages
  33. exit 1
  34. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement