CLI Tizen build-web 显示无效密码错误

CLI Tizen build-web displays Invalid Password error

我正在尝试从 CLI (Arch linux) 为三星 Active 2 智能手表构建一个 tizen 网络应用程序,但我不断收到此错误:

[ERROR] Main.java(195) - org.tizen.common.sign.exception.CertificationException: Invaild password

我已遵循本手册:Tizen CLI manual

我用来构建包的命令是:

tizen package -t wgt -s CertificateName  -- .

其中 CertificateName 是我使用 CLI 和命令创建的现有证书的名称:

tizen certificate -a CertificateName -p password -n Name -e fake@email.com

生成证书后,我使用以下命令添加到安全配置文件中:

tizen security-profiles add -n author -a /home/user/tizen-studio-data/keystore/author/author.p12 -p password

然后,我使用以下命令将信任锚添加到项目中:

tizen trust-anchor set -c /home/user/tizen-studio-data/keystore/author/author.p12 -s true -- projectfolder

如何解决密码无效错误? 谢谢!

当您调用 tizen package 时,应用程序会检查您设置的默认 profile.xml 文件的证书条目。它应该看起来像这样:

<profileitem ca="<tizen>/tools/certificate-generator/certificates/developer/tizen-developer-ca.cer" distributor="0" key="<tizen-data>/keystore/author/<cert>.p12" password="<tizen-data>/keystore/author/<cert>.pwd" rootca=""/>

<profileitem ca="<tizen>/tools/certificate-generator/certificates/distributor/tizen-distributor-ca.cer" distributor="1" key="<tizen>/tools/certificate-generator/certificates/distributor/tizen-distributor-signer.p12" password="<tizen-data>/tools/certificate-generator/certificates/distributor/tizen-distributor-signer.pwd" rootca=""/>

实际上,密码并未存储在 *.pwd 文件中,而是存储在 gnome-keyringLogin 密钥环中。为了检索之前通过调用 tizen security-profiles add 存储的密码,tizen package 调用:

<tizen>/tools/certificate-encryptor/secret-tool lookup --label=tizen-studio.

你会发现使用上面的命令你会遇到一个错误,它提供了比 tizan package 更多的信息。在您的情况下,gnome-keyring 可能未安装或 Login 密钥环可能未正确初始化。

解决方案#1

要解决此问题,最简单的方法是 install/reinstall gnome-keyring 软件包并重新启动(或重新启动 gnome-keyring-daemon):

pacman -S gnome-keyring
reboot

这应该添加 Login 密钥环,如果没有,您可以使用 seahorseecho <PASSWORD> | gnome-keyring-daemon --unlock

手动添加

最后,使用 tizen security-profiles add 重新添加您的个人资料。您可以看到 Tizen blog post for remote/docker 配置。

解决方案#2

如果你不想打扰 gnome-keyring,你可以尝试直接在 profiles.xml 文件中添加密码,如 Tizen forum 所示并写在下面:

<profileitem ca="<tizen>/tools/certificate-generator/certificates/developer/tizen-developer-ca.cer" distributor="0" key="<tizen-data>/keystore/author/<cert>.p12" password="<strong_password>" rootca=""/>

<profileitem ca="<tizen>/tools/certificate-generator/certificates/distributor/tizen-distributor-ca.cer" distributor="1" key="<tizen>/tools/certificate-generator/certificates/distributor/tizen-distributor-signer.p12" password="tizenpkcs12passfordsigner" rootca=""/>