如何重置主密钥

帕特里克·罗素
2023-02-15 16:43

版本:Artifactory 7。X

master.key是一个用于加密数据库中的密钥表的密钥,它是在Artifactory 5.7中引入的。

默认情况下master.key文件在应用程序第一次启动时由Access服务自动生成。

master的主要用法之一。关键在于被关键一步当建立Artifactory的高可用性集群.没有主人。key,您将无法将节点连接到HA集群。

的主人。除了保存在文件系统上的密码(例如:$JFROG_HOME/etc/system.yaml)之外,key还用于加密保存在数据库中的各种信息。此外,所有敏感数据由访问也使用主机进行加密。密钥,例如用户的加密密码、API密钥等。

不用说,这个文件非常重要,不应该丢失。如果主人。钥匙丢了,服务就全靠主人了。钥匙将无法启动

从失去的主人那里恢复过来。Key很棘手,需要连接到数据库。这是Artifactory版本6之间不同的程序。X和7.x。

7.XMaster Key Reset Steps

系统中的数据库密码。Yaml由主密钥文件加密。中的数据库密码重置美元ARTIFACTORY_HOME / var / etc / system.yaml文件从加密到明文密码。

在继续之前,通过获取数据库转储来备份数据库模式。

在备份和保存信息之后,我们将删除有问题的条目。

从这些表中删除加密行:

Derby、MySql和Oracle数据库不支持对blob条目的“like”SQL查询。您可能需要运行“Select”语句,然后逐个删除以“JE”开头的所有条目。这些查询从数据库中删除加密的行,它们以“JE”(“JFrog Encryption”的缩写)开始。

DELETE FROM access_configs WHERE data LIKE JE%';

DELETE FROM access_users_custom_data WHERE PROP_VALUE LIKE JE%;

DELETE FROM access_master_key_status WHERE status = on;

删除配置中的数据,如“JE%”;

DELETE FROM master_key_status WHERE status = on;

接下来,删除以下文件。它们包含加密文本,如果没有丢失master.key就无法解密。好消息是这些是临时文件,如果它们在启动时不存在,将会重新生成。

#这些将在启动时重新生成
rm JFROG_HOME美元/ var / etc / artifactory /安全/ / access.admin.token访问
rm JFROG_HOME美元/ var / etc /安全/ join.key

定位美元JFROG_HOME / etc / artifactory / binarystore.xml文件,然后识别任何以“JE”或“AM”开头的术语并删除它们。

在删除上面的表行并删除/重置这些文件之后,重新启动Artifactory实例。它应该可以在线,您可以开始从密钥丢失中恢复的过程。

6.遗产X复位步骤:

  1. 改变db.properties密码从加密形式变为明文。

  2. 运行查询:DELETE FROM access_configs WHERE data LIKE JE%';

  3. 运行查询:删除配置中'JE%'或'AM%'的数据;

  4. 运行查询:DELETE FROM access_master_key_status WHERE status = on;

  5. 运行查询:DELETE FROM access_users_custom_data WHERE PROP_VALUE LIKE JE%;

  6. 可能还有一张桌子master_key_status,它包含类似于access_master_key_status,删除该表的内容

  7. *可选*:如果您正在旋转(而不是重置)主机。键,移除主控制器。所有节点的键。

  8. 启动节点。