覆盖 RPM 公钥数据库

覆盖 RPM 公钥数据库

是否可以说服 rpm 从任意公钥数据库导入和获取公钥?

在同一台构建机器上,我有两个自动用户,每个用户都需要验证来自不同来源、使用不同密钥签名的软件包签名。如果我rpm --import pkg-source1.pub pkg-source2.pub,每个用户将能够验证针对对方的软件包。我宁愿每个用户都不知道对方的公钥环。

有没有办法可以为每个用户或每个 rpm(8) 调用指定一个备用或补充的公钥数据库?

答案1

密钥驻留在 RPM 数据库中。因此,您需要维护 2 个单独的 rpm 数据库。例如:

mkdir /var/lib/rpm_a; cp -p /var/lib/rpm/__db.* /var/lib/rpm_a/

然后添加--dbpath /var/lib/rpm_a到您的rpm命令或添加到~/.rpmmacros

_dbpath /var/lib/rpm_a

但是,您现在必须维护 2 个 rpm 数据库。我会让您的自动化程序临时复制系统数据库、添加密钥、执行您的工作,然后删除临时数据库。

相关内容