Jak zbiorczo resetować hasła dla wszystkich użytkowników w jednostce organizacyjnej?

14

Jestem programistą w mojej organizacji, ale moim zadaniem było zresetowanie haseł dla 10 000 użytkowników poczty e-mail w jednostce organizacyjnej w usłudze Active Directory. Otrzymałem odpowiednie uprawnienia, a następnie wysłałem następujący artykuł TechNet , ale nie jestem pewien, gdzie to uruchomię ani jak dokładnie to działa. Przepraszam, jeśli to pytanie jest zbyt niejasne, ale nie byłem pewien, gdzie jeszcze mogę zapytać (poprosiłbym sysadmina w mojej organizacji, ale odpowiedź zajęłaby trochę czasu). Czy ktoś mógłby mi przedstawić podsumowanie tego, co dokładnie robi to polecenie cmdlet i jak bym to zrobił?

Christopher Garcia
źródło
3
Wszystkie te same hasła, czy też wszystkie wymagają różnych haseł? Jestem pewien, że wiesz, że 10 000 użytkowników z tym samym hasłem nie jest najlepszym pomysłem na świecie ...
Ben Pilbrow
To samo hasło. Po prostu dzieje się tak w naszym scenariuszu, rozumiemy, jak to brzmi wstecz, a użytkownicy zmienią hasło przy następnym logowaniu.
Christopher Garcia

Odpowiedzi:

28

O wiele łatwiejsze niż to. Zainstaluj (w zależności od gustu systemu operacyjnego stacji roboczej) Narzędzia administracji zdalnej serwera, aby uzyskać narzędzia AD DS. Nie zapomnij przejść do funkcji systemu Windows w Panelu sterowania, aby włączyć prawidłowe zestawy narzędzi.

Gdy to zrobisz, następujące polecenie osiągnie pożądany rezultat:

DSQUERY user "OU=myOU,OU=myUsers,DC=myDomain,DC=loc" -limit 0 | DSMOD user -pwd <insert new password here>

~ Zamień „OU = myOU, OU = myUsers, DC = myDomain, DC = loc” nazwą wyróżniającą jednostki organizacyjnej zawierającej użytkowników, którzy mają zostać zmienieni

Izzy
źródło
Czy zrobiłbym to w module Active Directory dla PowerShell?
Christopher Garcia
2
Rozwiązanie izzy działa ze zwykłej powłoki polecenia ol 'cmd.exe :)
cheeseprocedure
Uruchomiłem polecenie, zastępując ciąg znaków, jak wskazano „OU = Użytkownicy, OU = Użytkownicy zewnętrzni, DN = naszadomena, DN = org”, ale pojawia się następujący błąd: „dsquery nie powiodło się: Nie skonfigurowano żadnego wyższego poziomu odniesienia dla usługi katalogowej . ”
Christopher Garcia
Nieważne, czytaj dalej i najwyraźniej zamiast DN miałem użyć DC. Nie jestem pewien, dlaczego, jeśli ktokolwiek mógłby wyjaśnić, byłbym wdzięczny. Dziękuję wszystkim za pomoc. :)
Christopher Garcia
1
Nazwa DN oznacza „nazwę wyróżniającą” i jest sposobem jednoznacznej identyfikacji dowolnego obiektu w drzewie katalogów. DC oznacza „Domain Component”, OU dla jednostki organizacyjnej i CN dla Common Name. DN składa się z części DC, OU i CN. Jeśli twoja domena to corp.acme-widgets.local, a Joe Bloggs znajduje się w jednostce organizacyjnej o nazwie Sales, która znajduje się w jednostce organizacyjnej o nazwie Users, nazwa DN Joe CN=Joe Bloggs,OU=Sales,OU=Users,DC=corp,DC=acme-widgets,DC=local
Bloggsa
5

Chcę to tylko wyrzucić i powiedzieć, że to okropny pomysł. Jeśli występuje potrzeba zmiany haseł użytkownika 10 000, resetowanie zbiorcze nie powinno być częścią tego procesu. W najlepszym razie po prostu wymuszenie zmiany przy następnym logowaniu użytkownika uniemożliwi gigantyczną dziurę w zabezpieczeniach, którą otwierasz.

DanBig
źródło
Powinna być odpowiedź społeczności Wiki
Izzy
Resetowanie zbiorcze niekoniecznie jest okropnym pomysłem, jeśli używasz unikalnych haseł, tj. Resetowania haseł do numerów ubezpieczenia społecznego lub innych prywatnych informacji znanych firmie. Zgadzam się jednak, że zresetowanie 10 000 kont na to samo hasło to STRASZNY pomysł. Nie rozumiem, w jaki sposób wymuszenie zmiany hasła powoduje to samo, chyba że konto jest zablokowane przed sprawdzaniem poczty do czasu zmiany hasła.
JamesBarnett
W naszym przypadku przeprowadzamy zbiorczy reset tego samego hasła dla wszystkich użytkowników (nie wiedzą o tym), ponieważ dowiedzieliśmy się, że ludzie używają kont innych osób. Więc kiedy ich hasło nie zadziała, zadzwonią, a my zweryfikujemy, kim oni są ...
ganders
4

Oto wariant PowerShell do dodania do miksu. Uruchom to z modułów Active Directory dla Windows Powershell. Pamiętaj, że hasło musi spełniać wszelkie wymagania (długość, złożoność itp.) Określone przez zasady domeny.

To, co musisz w tym zmienić, to -SearchBaseparametr i -NewPasswordparametr.

Użyj, Import-Module ActiveDirectoryaby dodać moduły Active Directory do domyślnego programu PowerShell.

Get-ADUser -Filter * -SearchScope Subtree -SearchBase "OU=Department,OU=Users,DC=corp,DC=acme-widgets,DC=local" | Set-ADAccountPassword -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "New Password Here" -Force)

Aby zobaczyć, na jakich użytkowników to wpłynie, przed uruchomieniem powyższego polecenia, wydaj to polecenie, aby uzyskać listę kont, których dotyczy problem.

Get-ADUser -Filter * -SearchScope Subtree -SearchBase "OU=Reset Pwd 2,OU=Reset PWD 1,DC=corp,DC=acme-widgets,DC=local" | Ft Name

Ben Pilbrow
źródło
0

Myślę, że masowe resetowanie haseł 10k nie jest dobrym pomysłem. Po prostu możemy wybrać opcję „zmień przy następnym logowaniu”. Zapewni to, że nie będziemy łamać żadnych zasad ani procesów dotyczących bezpieczeństwa informacji. GN

użytkownik475814
źródło