忘记Harbor的密码?
一个是超级管理员的密码忘记了;另一种是普通用户的密码忘记了;处理方式都是重新配置用户的密码。
找回密码?
对于忘记密码,很多人首先想到的就是找回密码,但是Harbor目前是不支持找回密码这个功能的。Harbor的数据库中存储的用户的密码都是使用sha256进行加密的,很难对其解析出来。
那只能重新设置用户的密码了。
普通用户如果忘记密码,可以联系Harbor的admin用户来帮忙重置密码,admin操作如下:
【系统管理】——>【用户管理】——>【用户】——>【操作】——>【重置密码】

然后在填写框填写该用户新的密码,点击【确定】即可完成该用户密码的重置。

如果超级管理员(admin)的密码忘记了,就无法通过刚才的方式来重新设置用户的密码了。详细的操作如下:
进入到Harbor服务器主机,查找数据库组件的信息,然后进入到数据库组件的容器中:
- [root@Over harbor]# docker-compose ps | grep db
- harbor-db /docker-entrypoint.sh 96 13 Up (healthy)
- [root@Over harbor]# docker exec -it harbor-db /bin/bash
- postgres [ / ]$ #出现这表示已经成功进去容器里面了
Harbor的数据库组件是使用PostgreSQL数据库,操作命令一样的
- postgres [ / ]$ psql -U postgres
- psql (13.3)
- Type "help" for help.

- postgres=# \c registry
- You are now connected to database "registry" as user "postgres".
从harbor_user用户表中查看用户的信息
- registry=# select user_id,username,password,creation_time,update_time,password_version from harbor_user;
- user_id | username | password | creation_time | update_time | password_version
- ---------+-----------+----------------------------------+----------------------------+----------------------------+------------------
- 2 | anonymous | | 2021-11-05 07:45:36.052565 | 2021-11-05 07:45:36.176624 | sha1
- 1 | admin | 8a6e00d7401c1338f2fcfaeb67f4a477 | 2021-11-05 07:45:36.052565 | 2021-11-05 07:45:36.296631 | sha256
- 3 | lidabai | 4442491133b4c292313224d6757a103d | 2022-04-04 03:05:44.883262 | 2022-04-04 03:05:44.883263 | sha256
- (3 rows)
更新表harbor_user中的数据来重置admin密码。
- registry=# update harbor_user set salt='',password='' where user_id = 1;
- UPDATE 1

再次查看表中用户的信息:
registry=# select user_id,username,password,creation_time,update_time,password_version from harbor_user;
可以发现admin用户的password信息已变化。

执行完3.5操作后,admin的密码就已经重置完成了。然后就可以使用admin的初始密码Harbor12345去登录Harbor UI界面了,本处是退出数据库和容器的操作了。
- registry=# \q # 退出数据库
- postgres [ / ]$ exit # 退出容器
- exit
- [root@Over harbor]# docker-compose down
- [root@Over harbor]# docker-compose up -d
- [root@Over harbor]# docker-compose ps