Class: IISUserAdmin

Inherits:
Object
  • Object
show all
Defined in:
lib/iisadmin/user.rb

Constant Summary collapse

HOST_NAME =
Socket.gethostname
@@domain_adsi =
nil

Instance Method Summary collapse

Constructor Details

#initializeIISUserAdmin

Returns a new instance of IISUserAdmin.



8
9
10
11
12
# File 'lib/iisadmin/user.rb', line 8

def initialize
  @@domain_adsi ||= WIN32OLE.connect("WinNT://#{HOST_NAME}")
  puts HOST_NAME
  puts @@domain_adsi
end

Instance Method Details

#create_user(username) ⇒ Object

创建用户username 用户名



15
16
17
18
19
20
21
# File 'lib/iisadmin/user.rb', line 15

def create_user username
  unless( username.nil? || exist?(username))
    user=@@domain_adsi.create('user',username)
    yield(user) if block_given?
    user.SetInfo 
  end
end

#delete_user(username) ⇒ Object

删除用户



23
24
25
# File 'lib/iisadmin/user.rb', line 23

def delete_user username
  @@domain_adsi.delete('user',username) unless (username.nil? || !exist?(username))
end

#exist?(username) ⇒ Boolean

判断一个用户是否存在

Returns:

  • (Boolean)


27
28
29
30
31
32
33
34
35
# File 'lib/iisadmin/user.rb', line 27

def exist? username
  return false if username.nil?
  begin
    WIN32OLE.connect("WinNT://#{HOST_NAME}/#{username},user")
  rescue
    return false
  end
  return true
end