PostgreSQL 데이터베이스에서 사용자 비밀번호 재설정하는 방법

안녕하세요 여러분,

discourse에서 사용자의 비밀번호를 재설정하는 방법에 대해 몇 가지 질문이 있습니다.
기존 사용자의 비밀번호를 재설정하거나 새로운 관리자 사용자를 생성할 수 있는 명령어인 "RAILS_ENV=production /usr/local/bin/bundle exec rake admin:create"를 알고 있습니다. 하지만 이 방법으로 관리자 사용자의 비밀번호를 재설정하는 것은 원하지 않습니다. PostgreSQL 데이터베이스에서 일반 사용자의 비밀번호를 재설정하고 싶습니다.
사용자 정보는 PostgreSQL 데이터베이스의 users 테이블에 저장되어 있습니다. “select id, username, name, password_hash from users;” 명령어를 통해 사용자 정보와 비밀번호를 확인할 수 있습니다. 따라서 두 가지 질문이 있습니다.

  1. 비밀번호는 어떻게 암호화되나요? MD5인가요? SHA256인가요?
  2. " UPDATE users SET password_hash = ‘해시된 비밀번호’ WHERE id=1; " 명령어를 사용하여 비밀번호를 재설정할 수 있나요?

해결 방법을 아시는 분이라면 정말 큰 도움이 될 것입니다. 감사합니다!

어떤 문제를 해결하고 계신가요? 비밀번호 재설정 링크를 사용해서 본인이 직접 설정하도록 하는 것은 어떨까요?

SQL보다는 Rails 콘솔에서 처리하는 것이 좋습니다. 코드를 확인하려면 소스를 살펴봐야 할 것 같습니다.

레일즈 콘솔에서:

User.find_by(username: 'gollum').update!(password: 'shiiiire!-BAGGINS!')

@supermathie, 정말 감사합니다!

다음 방법으로 비밀번호를 재설정할 수 있습니다.

RAILS_ENV=production rails runner 'User.find_by_email("admin@example.com").update!(password:"AdminAdmin1234566xxxxxx")'