捐血一袋救人一命

2012年1月6日 星期五

管理網域帳號在本機的權限群組

功能:遠端維護→將使用者的帳號,加入/移出某電腦的本機的群組

image

Administrators → 本機的最高權限管理者

Network Configuration Operator → 允許使用者進行網路相關設定變更

 

因為我一向堅持不給使用者 Power User 權限,更不用說 Administrators 權限了

但是同仁出差在外地,難免需要修改網路設定(不是每個飯店都有DHCP)。

 

諸位看倌,如果要符合自己的網路環境,請將程式中的網域名稱自行修改即可;

另外如果要增加其他群組,請自行修改 <option> Tag

檔案請存成 .hta

PS.本程式並沒有做太多的檢查,所以以下狀況會發生錯誤!

  1. 如果使用者帳號或電腦名稱不存在,會發生錯誤
  2. 如果使用者帳號已經存在群組之中,要再加入群組時會發生錯誤
  3. 如果使用者帳號已移出群組,要再移出群組會發生錯誤

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=big5" />
<title>管理網域帳號在本機的權限群組</title>

<HTA:APPLICATION
     ID="objHTAHelpomatic"
     APPLICATIONNAME="HTAExecuteCMDonRemotePCbyInput"
     SCROLL="No"
     SINGLEINSTANCE="yes"
     BORDER="thick"
     BORDERSTYLE="raised"
     MAXIMIZEBUTTON="no"
     SHOWINTASKBAR="yes"
     WINDOWSTATE="normal"
>

</head>

<SCRIPT Language="VBScript">
' Setup Window Size & Position
Sub Window_onLoad
    Const Width = 500
    Const Height = 250
    self.ResizeTo width,height
    Self.moveTo (screen.AvailWidth-width)/2,(screen.AvailHeight-height)/2
    Remark.Value = Group.Value
End Sub

Sub Join
    strDomain = Domain.Value
    strGroup = Group.Value
    strComputer = HostName.Value
    strAccount = DomainAccount.Value
    if strComputer <> "" and strAccount <> "" then
        Set objAccount = GetObject("WinNT://" & strDomain & "/" & strAccount)
        Set objGroup = GetObject("WinNT://" & strComputer & "/" & strGroup )
        objGroup.Add(objAccount.ADsPath)
    end if
    Set objAccount = Nothing
    Set objGroup = Nothing
    msgbox("Finish !")
End Sub

Sub MoveOut
    strDomain = Domain.Value
    strGroup = Group.Value
    strComputer = HostName.Value
    strAccount = DomainAccount.Value
    if strComputer <> "" and strAccount <> "" then
        Set objGroup = GetObject("WinNT://" & strComputer & "/" & strGroup )
        Set objAccount = GetObject("WinNT://" & strDomain & "/" & strAccount)
        objGroup.Remove(objAccount.ADsPath)
    end if
    Set objAccount = Nothing
    Set objGroup = Nothing
    msgbox("Finish !")
End Sub

Sub Group_onChange
    Remark.Value = Group.Value
End Sub
</SCRIPT>

<body>
網域名稱:<input type="text" name="Domain" value="hinet" size="20" disabled><br>
電腦名稱:<input type="text" name="HostName" size="20"><br>
網域帳號:<input type="text" name="DomainAccount" size="20"><br>只要輸入帳號即可
權限群組:<select name="Group">
<option value="Network Configuration Operators">網路設定操作員</option>
<option value="Administrators">本機系統管理員</option>
</select>
<input type="text" name="Remark" disabled size="30"><br>
<br>
<input id=runbutton  class="button" type="button" value="加入" name="run_button"  onClick="Join">
<input id=runbutton  class="button" type="button" value="移出" name="run_button"  onClick="MoveOut"><br>
<br>
<ul>
<li>如果您輸入的電腦無法接受管理(例如:防火牆阻擋),將會發生錯誤訊息</li>
</ul>
</body>
</html>

0 意見: