现象: docker修改了配置,导致harbor无法登陆,按照网上给的教程,在数据库中重置了密码,但是还是登陆失败。
解决: 最近重装了harbor环境,看了下数据库,发现数据库中加密方式有区别,admin为sha256加密方式。修改脚本后,算出来和数据库中的值完全相同。bingo~~
计算密码脚本:
import hmac
import hashlib
from struct import Struct
from operator import xor
from itertools import izip, starmap
_pack_int = Struct('>I').pack
def pbkdf2_hex(data, salt, iterations=4096, keylen=16, hashfunc=None)