harbor密码丢失,忘记Harbor密码?

2022年05月12日 阅读数:7
这篇文章主要向大家介绍harbor密码丢失,忘记Harbor密码?,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

harbor密码丢失,忘记Harbor密码?_harbor

你们好!我是李大白!sql

本篇文章主要分享Harbor镜像仓库在使用过程当中,忘记密码的处理方法!docker

本篇文章收录于《harbor大白话(企业级)》专栏,更多Harbor的知识可到我主页查看。shell


1、忘记密码的场景

忘记Harbor的密码?数据库

一个是超级管理员的密码忘记了;另外一种是普通用户的密码忘记了;处理方式都是从新配置用户的密码。安全

找回密码?对于忘记密码,不少人首先想到的就是找回密码,可是Harbor目前是不支持找回密码这个功能的。Harbor的数据库中存储的用户的密码都是使用sha256进行加密的,很难对其解析出来。bash

只能从新设置用户的密码了。服务器



2、普通用户忘记密码的处理方式

普通用户若是忘记密码,能够联系Harbor的admin用户来帮忙重置密码,admin操做以下:ide

【系统管理】——>【用户管理】——>【用户】——>【操做】——>【重置密码】post

harbor密码丢失,忘记Harbor密码?_忘记密码_02

而后在填写框填写该用户新的密码,点击【肯定】便可完成该用户密码的重置。加密

harbor密码丢失,忘记Harbor密码?_docker_03


3、admin密码忘记的处理方式

若是超级管理员(admin)的密码忘记了,就没法经过刚才的方式来从新设置用户的密码了。详细的操做以下:


3.1 查看Harbor数据库组件

进入到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密码丢失,忘记Harbor密码?_harbor_04

3.2 进入到数据库

Harbor的数据库组件是使用PostgreSQL数据库,操做命令同样的。

postgres [ / ]$ psql -U postgres
psql (13.3)
Type "help" for help.

harbor密码丢失,忘记Harbor密码?_docker_05

3.3 进入registry数据库

postgres=# \c registry
You are now connected to database "registry" as user "postgres".


3.4 查询用户信息

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)


3.5 重置admin帐号密码

更新表harbor_user中的数据来重置admin密码。

registry=# update harbor_user  set salt='',password='' where  user_id = 1;
UPDATE 1

harbor密码丢失,忘记Harbor密码?_docker_06

再次查看表中用户的信息,能够发现admin用户的password信息已变化。

registry=#  select user_id,username,password,creation_time,update_time,password_version  from harbor_user;

harbor密码丢失,忘记Harbor密码?_云原生_07


3.6 退出数据库和容器

执行完3.5操做后,admin的密码就已经重置完成了。而后就可使用admin的初始密码Harbor12345去登陆Harbor UI界面了,本处是退出数据库和容器的操做了。

registry=# \q                # 退出数据库
postgres [ / ]$ exit # 退出容器
exit

4、重启Harbor

[root@Over harbor]# docker-compose down
[root@Over harbor]# docker-compose up -d
[root@Over harbor]# docker-compose ps


推荐阅读:

Helm部署Harbor,实现高可用的镜像仓库(超详细分享)~后附踩坑记录 

Prometheus监控Harbor实战(全网首发)

企业内网如何搭建安全的Harbor服务?(超详细)

Harbor镜像仓库漏洞扫描_如何检测你的镜像是否安全?

Harbor一键部署——初学者如何快速了解它?

k8s节点如何从Harbor中拉取镜像的?镜像拉取凭证的配置