VBでユーザーを作って、そのユーザーにアドミ権限を付与したいのですが、どうすれば良いのでしょうか?
ユーザーの作成までは何とかできたのですが…
権限が与えられません。
バージョンはVB6.0を使用しています。
分かる方がいらっしゃいましたら、よろしくお願いいたします。
多分、ADSIを使って行われたと思いますが・・・
パラメータとして与えるドメイン情報の部分の記述ですが、
ワークグループの場合、その情報(ユーザーが存在する)
が存在するマシン名を与えて下さい。
そうすれば、うまくいきます。
権限の付与の部分は、グーループにユーザーを追加すると
言うことですので、権限を付与すると言うことでヘルプを
検索しても出てきません。ご注意下さい。
例
Dim Group As IADsGroup
Dim GroupName As String
Dim GroupDomain As String
Dim User As IADsUser
Dim UserName As String
Dim UserDomain As String
GroupName = "Administrators"
GroupDomain = "xxxxxxxx" ' <= マシン名
UserName = "yyyy" ' <= ユーザーアカウント名
UserDomain = "xxxxxxxx" ' <= マシン名
Set User = GetObject("WinNT://" & UserDomain & "/" & UserName & ",user")
Set Group = GetObject("WinNT://" & GroupDomain & "/" & GroupName & ",group")
Group.Add (User.ADsPath)
Group.SetInfo
以上。
ありがとうございます。
早速明日(自宅には環境がないので…)試してみます!
まさか、その日の内にお答え頂いてるとは思わず、レスが遅くなってしまいました。
すみません。
教えていただいたコードを参考にして、下記でアドミ権限を与えることができました!
ありがとうございました。
--------------------------------------------------------------------
'接続先のパス文字列を指定
strWinNtPath = "WinNT://" & Environ("COMPUTERNAME")
'ドメインCPに接続
Set objContainer = GetObject(strWinNtPath)
'IADsUserオブジェクトを作成
Set objUser = objContainer.Create("User", "ユーザー名")
'IADsGroupオブジェクトの作成
Set objGroup = objContainer.Create("Group", "Administrators")
With objUser
'PASSWARD設定
.SetPassword ""
'フルネーム設定
.FullName = ""
'ユーザー情報を変更
.SetInfo
End With
With objGroup
.Add (objUser.ADsPath)
' .SetInfo
End With
'オブジェクトの開放
Set objUser = Nothing
Set objContainer = Nothing
Set objGroup = Nothing
着け足しです。
変数は下記でやりました。
Dim strWinNtPath As String
Dim objContainer As ActiveDs.IADsContainer
Dim objUser As ActiveDs.IADsUser
Dim objGroup As ActiveDs.IADsGroup
ツイート | ![]() |