カテゴリ

ActiveDirectory

ActiveDirectoryでアカウントロックがかかったユーザのロック解除をするスクリプトです。
ドメインの管理者権限がないと動かないかもしれません。

' ActiveDirectoryドメイン名
Const DOMAIN_NAME = "ADのドメイン名"

' ロックアウト解除メイン
Function unlock_account(strAccount)
	Dim tmpRet
	
	Dim objUser
	Dim strDomain
	
	On Error Resume Next
		Set objUser = GetObject("WinNT://" & DOMAIN_NAME & "/" & strAccount & ",user")
		If Len(Err.Description) > 0 Then
			tmpRet = "Error:1:" & Err.Description
		Else
			If objUser.IsAccountLocked Then
				objUser.IsAccountLocked = False
				objUser.SetInfo 
				If Len(Err.Description) > 0 Then
					tmpRet = "Error:2:" & Err.Description
				Else
					tmpRet = "完了"
				End If
			Else
				tmpRet = "ロックアウトされていません。"
			End If

			If Len(Err.Description) > 0 Then
				tmpRet = "Error:3:" & Err.Description
			End If
		End If
		Set objUser = Nothing
	On Error Goto 0

	unlock_account = tmpRet
End Function


' ユーザ入力画面表示
Sub Main()
	Dim strUser
	strUser = inputbox("ロック解除するユーザ名")
	
	If strUser = "" Then
		msgbox "処理を中止しました。"
	Else
		msgbox unlock_account(strUser)
	End If
End Sub

Main

コメント

いただいたコメント
  1. [Blog:技術系メモ http://t.co/fu4maLns ] に新規投稿しました。 「 ActiveDirectory のユーザロックアウト... 」