Advertisement
Werezwolf

CMD Domain Password Changer

Jul 31st, 2014
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 2.09 KB | None | 0 0
  1. ::This Script is to change a domain users password
  2. ::Requires elevation and drive mappings
  3. ::http://pastebin.com/6bawWDUs
  4.  
  5. @Echo off
  6. Set xdate=%date:~-4,4%%date:~-7,2%%date:~-10,2%
  7. Set return=^& echo.
  8. NET USE X: %xdrive% /PERSISTENT:No
  9. set location=X:\Path\To\Destination
  10. cd /d %location%
  11. @mkdir %location%\Logs\PwChanger\%xdate%
  12.  
  13. ::Query Available Users
  14. net user /domain
  15. :s_routine_2
  16. SET /P query_user=The Username to have their password changed?
  17. set log=%location%\Logs\PwChanger\%xdate%\%query_user%.txt
  18. @echo %time%: %xusername%@%computername% Logged Change of Password on%return% >> %log%
  19. @echo %time%: %query_user%%return% >> %log%
  20. Net User %query_user% /domain >> %log%
  21. ::Existence is Questionable
  22. if NOT %errorlevel% == 0 goto s_error_1
  23. ::Are You Sure? Seriously
  24. CHOICE /C:YNQ /N /D Q /T 35 /m "Change %query_user% password? [Y]yes or [N]No"
  25. goto s_routine_%ERRORLEVEL%
  26.  
  27. :s_routine_1
  28. net user %query_user% * /domain
  29. ::Almost there
  30. if %errorlevel% == 2 goto s_error_3
  31. if NOT %errorlevel% == 0 goto s_error_2
  32. ::Success it is done
  33. @echo %time%: %query_user% Password Changed%return% >> %log%
  34. @echo -------------------%return% >> %log%
  35. msg %xusername% "Password Changed for %query_user%"
  36. Exit
  37.  
  38. ::States of Undesired but Possible Choices
  39. :s_error_1
  40. @echo %time%: User %query_user% dose not exist >> %log%
  41. msg %xusername% "User %query_user% dose not exist"
  42. goto s_routine_2
  43.  
  44. :s_error_2
  45. @echo %time%: Unauthorized Access - %username%@%computername% >> %log%
  46. msg %xusername% "Unauthorized Access: %username%@%computername%"
  47. Exit
  48.  
  49. :s_error_3
  50. @echo %time%: Password Requirements not matched - %xusername%@%computername% >> %log%
  51. msg %xusername% "You need Upper-case, Lower-case and Numbers or Symbols. And To be longer then 8 characters. And not to use a previous password"
  52. goto s_routine_1
  53.  
  54. :s_routine_3
  55. @echo %time%: Timed out%return% >> %log%
  56. msg %xusername% "Timed Out"
  57. ::Because Space is Precious I don't write Exit here but instead I left a comment about it and well yeh.
  58. :s_routine_0
  59. @echo %time%: Script Exit%return% >> %log%
  60. @echo -------------------%return% >> %log%
  61. Exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement