プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。
VBSでプログラミングしております。

ユーザ名からそのユーザが管理者権限があるのかどうかしらべたいのですが、どのようにすればよいでしょうか?

お手数ですがよろしくお願いします。

A 回答 (1件)

WMIを使うんでしょうか。


'**
'* 指定されたユーザのAdministrator権限を調べる
'* 戻り値:0=該当者なし/1=権限なし/2=Localで権限あり/Domainで権限あり
'**
Function IsAdmin(ByVal Name)
Dim L, S, Q, R
Set L = CreateObject("WbemScripting.SWbemLocator")
Set S = L.ConnectServer()
Q = "SELECT LocalAccount,SIDType FROM Win32_UserAccount"
Q = Q & " WHERE Name='" & Name & "'"
Set R = S.ExecQuery(Q)
If R.Count = 0 Then
  IsAdmin = 0
  Exit Function
End If
For Each Q In R
  Select Case Q.SIDType
    Case 1, 26, 38
      If Q.LocalAccount Then
        IsAdmin = 2
      Else
        IsAdmin = 3
      End If
    Case Else
      IsAdmin = 1
  End Select
  Exit For
Next
End Function
※インデントに漢字空白使用、コピペ注意
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!