Bagaimana cara mereset kata sandi admin yang hilang di Magento 2?


42

Saya mencoba mengatur ulang kata sandi admin melalui Phpmyadmin di tabel admin_user tetapi ini sepertinya tidak berhasil. Juga di chrome saya mendapatkan kesalahan "Halaman web ini memiliki loop redirect" saat memuat halaman admin.


1
Mengenai pengalihan, pastikan bahwa jika Anda telah mengaktifkan xdebug, maka ada xdebug.max_nesting_level=200di php.ini Anda. Jika tidak disetel, ada kemungkinan Anda melihat halaman login admin (karena level nesting kurang dari standar 100 pada halaman itu), tetapi ketika Anda memasukkan kredensial dan mencoba untuk masuk, dashboard tidak dapat dirender (level nesting lebih dari standar) 100 di sana). Pastikan juga untuk menggunakan beberapa host virtual, bukan "localhost", untuk menghindari masalah dengan cookie.
Alex Paliarush

Ikon / gaya dasbor tidak dimuat / ditampilkan dengan benar apakah ini karena xdebug? Bisakah Anda berbagi cara men-setup xdebug di php.ini dengan benar
Dev

Tambahkan saja xdebug.max_nesting_level=200konfigurasi php.ini Anda jika XDebug Anda diaktifkan.
Alex Paliarush


jawaban ini akan membantu magento.stackexchange.com/a/137562/27907 dan untuk menghasilkan kata sandi hash Anda dapat menggunakan xorbin.com/tools/sha256-hash-calculator
minggu

Jawaban:


88

Anda dapat menggunakan Magento CLI untuk membuat pengguna admin baru dengan perintah berikut, kemudian Anda dapat pergi dan mengubah kata sandi pengguna asli Anda.

Jalankan ini dari root instalasi magento Anda:

php bin/magento admin:user:create --admin-user="admin" --admin-password="123123q" --admin-email="admin@example.com" --admin-firstname="Admin" --admin-lastname="Admin"

Tidak ada cara lain tanpa CLI? Saya mencoba melakukan itu dengan menginstal Magerun di komputer saya (saya pemula untuk CLI). Perintah saya adalah seperti di bawah ini, '<path_to_magento> php bin / magento admin: user: create [--admin-user = "dave"] [--admin-password = "admin123"] [--admin-email = "admin1 @ localhost.com "] [--admin-firstname =" dave "] [--admin-lastname =" maritus "] '
Dev

1
Path ke magento harus pergi sebelum "bin / magento", bukan sebelum php. Hapus juga tanda kurung siku dari perintah aktual.
Alex Paliarush

Admin pengguna berhasil dibuat, saya menggunakan detail yang dibuat untuk masuk dashboard tetapi tidak berhasil, tetap di halaman login yang sama.
Dev

4
hanya tuhan yang tahu mengapa mereka menaruh tanda kurung di sana ...
MagenX

1
@MagenX - Kurung kotak adalah cara konvensional untuk pesan bantuan dari suatu perintah untuk memberi tahu Anda bahwa argumen itu opsional . Ini cukup standar sebenarnya .
nevvermind

29

Jalankan query di bawah ini untuk mengarahkan database.

Contohnya adalah untuk mengatur ulang kata sandi untuk pengguna admin .

UPDATE admin_user SET `password` = SHA2 (' NewPassword ', 256) WHERE` username` = ' admin ';

NewPassword : Ganti dengan kata sandi Anda.

Saya harap ini akan berhasil untuk Anda. Beritahu saya jika Anda kesulitan.


FYI; CONCAT dan garam tidak diperlukan. v. 2.1.7
simonthesorcerer

Tidak bekerja untuk Magento 2.3, membutuhkan garam, dll.
Qtax

1
juga, waspadalah bidang "lock_expires" jika Anda telah berulang kali mencoba kata sandi yang salah ...
KolonUK

15

Seharusnya tidak ada tanda sama atau tanda kurung seperti ini:

php bin/magento admin:user:create --admin-user mys_username --admin-password mypass123 --admin-email my@email.com --admin-firstname john --admin-lastname cage

Ini adalah satu-satunya yang bekerja untuk saya
jfoutch

10

Jalankan query SQL berikut untuk mereset kata sandi admin:

SET @salt = MD5(UNIX_TIMESTAMP());
UPDATE admin_user SET password = CONCAT(SHA2(CONCAT(@salt, 'MyNewPassword'), 256), ':', @salt, ':1') WHERE username = 'admin';

Adalah satu-satunya cara saya dapat memenuhi persyaratan kata sandi di Magento 2.3, untuk dapat mengatur kata sandi admin sederhana untuk pengembangan. n98-magerun23.0.4 tidak mengizinkan seseorang untuk menghindari persyaratan kata sandi admin.
Qtax

Bekerja di Magento 2.2.5, ditambah pengaturan "lock_expires" ke NULL
KolonUK

9

Ada alat yang sangat bagus di luar sana yang disebut N98-Magerun

Pada dasarnya, Anda langsung mengunduhnya ke root proyek Magento Anda

wget https://files.magerun.net/n98-magerun2.phar

Setel izin yang dapat dieksekusi berikutnya (hanya untuk pengguna UNIX)

chmod +x ./n98-magerun2.phar

Sekarang saat kamu berlari

php n98-magerun2.phar

Anda akan mendapatkan daftar semua perintah yang tersedia yang ditawarkan oleh alat ini.

Sekarang untuk mengatur ulang kata sandi pengguna admin yang terlupa terlebih dahulu, kita perlu mendapatkan nama pengguna pengguna admin, agar kita dapat menjalankannya

php n98-magerun2.phar admin:user:list

Ini akan memberi Anda daftar semua pengguna admin yang tersedia, hasilnya akan terlihat seperti

+----+-----------------+-------------------------------+--------+
| id | username        | email                         | status |
+----+-----------------+-------------------------------+--------+
| 1  | admin           | admin@example.com             | active |
| 2  | nextadmin       | nextadmin@example.com         | active |
+----+-----------------+-------------------------------+--------+

Sekarang untuk mereset kata sandi yang kita lakukan

php n98-magerun2.phar admin:user:change-password

Anda akan diminta nama pengguna admin dan kata sandi baru untuk pengguna itu.

Username:admin
Password:123456
Password successfully changed

Semoga ini membantu.


Tidak bisa menjalankan ini di server uji Bitnami saya - SQL adalah satu-satunya cara untuk saya.
KolonUK

4

Aku benci mengingat string bin panjang / magento ...

Inilah solusi untuk siapa saja yang suka menyentuh:

letakkan kode ini di pub / index.php

\Magento\Framework\App\ObjectManager::getInstance()->get("\Magento\Framework\Encryption\Encryptor")->getHash("yourpass");

Lihatlah footer anypage: masukkan deskripsi gambar di sini

Salin kode itu dan buka phpmyadmin:

update admin_user set password = '<code above>' where username='admin';

BTW. Ini adalah pertanyaan kata sandi reset jika Anda menggunakan admin: user: buat itu reset atau buat tapi Uhm ... Tidak persis.


2
Ini tidak akan benar-benar aman untuk dilakukan di situs web terbuka untuk umum ... Anda juga dapat mengunduh n98-magerun2 dan menjalankan n98-magerun2.phar dev:consoledan mengeksekusi kode di sana: $di->get("\Magento\Framework\Encryption\Encryptor")->getHash("yourpass");atau hanya menggunakann98-magerun2.phar admin:user:change-password
7ochem

2

Mengacu pada jawaban Alex itu bekerja dengan sedikit modifikasi. Anda harus menavigasi ke folder instal M2, kemudian jalankan kode di bawah ini:

php bin/magento admin:user:create --admin-user=admin --admin-password=admin123 --admin-email=admin@magento.tld --admin-firstname=admin --admin-lastname=admin

Anda tidak perlu /sebelum binfolder, tetapi Anda perlu phpperintah sebelum seluruh "kalimat".

Generasi pas bekerja untuk saya, tetapi halaman admin tidak login saya: /


0
 1. login to magento 2 admin.
 2. Go to system > All Users.
 3. Select your User
 4. reset password from 'User Info' > 'Account Information'

Saya telah mengedit pertanyaan saya. bagaimana Jika kita lakukan ketika kehilangan kata sandi.
Dev

0

Cukup buka akses database Anda dan tekan query di bawah ini

UPDATE admin_user SET password = CONCAT (SHA2 ('yournewpassword', 256), ': xxxxxxx: 1') WHERE username = 'yourusername';

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.