如何重置主密钥

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

版本:X

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

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

大师的主要用法之一。关键是要当关键一步建立Artifactory的高可用性集群。没有主人。密钥,您将无法将节点连接到HA集群。

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

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

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

7.XMaster Key Reset Steps

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

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

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

从这些表中删除加密的行:

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

从access_configs中删除类似“JE%”的数据;

删除access_users_custom_data中PROP_VALUE为“JE%”的字段

DELETE FROM access_master_key_status WHERE status = 'on';

删除数据类型为“JE%”的配置文件

DELETE FROM master_key_status WHERE status = 'on';

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

#这些将在启动时重新生成
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实例。它应该是在线的,你可以开始从丢失密钥中恢复的过程。

遗留的人工制品X复位步骤:

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

  2. 运行查询:从access_configs中删除类似“JE%”的数据;

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

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

  5. 运行查询:删除access_users_custom_data中PROP_VALUE为“JE%”的字段

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

  7. *可选*:如果你旋转(不复位)主。钥匙,卸下主锁。键从所有节点。

  8. 启动节点。