Przejdź do głównej zawartości
Wersja: Stable

Jak zresetować hasło użytkownika bez dostępu do systemu YetiForce

Ten artykuł opisuje, jak szybko zresetować dostęp dla dowolnego użytkownika systemu YetiForce bez dostępu do przeglądarki i jak zresetować wszystkie hasła użytkowników.

1. Resetowanie hasła przy użyciu skryptu PHP (dostępne w wersji 4.3 i późniejszych)

1.1 Pobierz skrypt

Pobierz skrypt resetowania hasła z repozytorium.

W zależności od metody wywołania wgraj skrypt do odpowiedniego katalogu. W poniższym przykładzie pliki systemu znajdują się w katalogu "/home/yfprod/html/"

wget -O /home/yfprod/html/PasswordReset.php https://raw.githubusercontent.com/YetiForceCompany/YetiForceScripts/master/PasswordReset/PasswordReset.php

Skrypt musi być na tych samych uprawnianiach (właściciel) co pliki systemu, w pokazanym przykładzie to jest "yfprod".

chown yfprod:yfprod /home/yfprod/html/PasswordReset.php

1.2 Wprowadź dane użytkownika

W pliku ustaw ID użytkownika lub jego nazwę oraz nowe hasło (hasło powinno być zgodne z obowiązującą w firmie polityką bezpiecznych haseł).

Jeśli nie wprowadzisz hasła, system wygeneruje je automatycznie.

$userId = 1;
$userName = ''; //Nazwa użytkownika, opcjonalnie
$password = ''; //Hasło, opcjonalnie

1.3 Uruchom skrypt

Jeśli uruchomisz skrypt przez przeglądarkę, wgraj plik do katalogu publicznego (jeśli webroot jest ustawiony na ten katalog) i uruchom adres CRM oraz nazwę skryptu, np. https://gitdeveloper.yetiforce.com/PasswordReset.php

Jeśli uruchomisz skrypt z poziomu CLI, wgraj skrypt do katalogu głównego i uruchom plik.

php /home/yfprod/html/PasswordReset.php

1.4 Podsumowanie

Gdy hasło zostanie poprawnie zmienione, skrypt wyświetli dane użytkownika i nowe hasło.

Login: admin27038
Password: APcbCr4Bef
Full name: Administrator Yeti

Jeśli wystąpił błąd, system wyświetli komunikat o błędzie, np.:

App\Exceptions\Security: Minimum password length 8 characters in /home/yfprod/html/modules/Vtiger/uitypes/Password.php:21
Stack trace:
#0 /home/yfprod/html/modules/Users/models/Record.php(233): Vtiger_Password_UIType->validate()
#1 /home/yfprod/html/modules/Users/models/Record.php(188): Users_Record_Model->getValuesForSave()
#2 /home/yfprod/html/modules/Users/models/Record.php(169): Users_Record_Model->saveToDb()
#3 /home/yfprod/html/PasswordReset.php(43): Users_Record_Model->save()
#4 {main}
Login: admin27038
Password: xxx
Full name: Administrator Yeti

2. Resetowanie hasła przy użyciu YetiForce CLI (dostępne w wersji 6.2 i późniejszych)

YetiForce CLI jest alternatywną metodą resetowania hasła w systemie.

2.1 Wygeneruj nowe hasło

Pełny opis można znaleźć w YetiForce CLI

php cli.php -m Users -a resetPassword -l guest -c

2.2 Hasło jako parametr

php cli.php -m Users -a resetPassword -l guest -p p@ssw0rD

2. Zresetuj hasła wszystkich użytkowników używając YetiForce CLI (dostępne w wersji 6.2 i późniejszych)

Jest możliwość zresetowania danych dostępowych wszystkim użytkownikom i wysłania nowego hasła na adresy mail użytkowników za pomocą jednego polecenia. Pełny opis można znaleźć w YetiForce CLI

php cli.php -m Users -a resetAllPasswords