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-keyring
的 Login
密钥环中。为了检索之前通过调用 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
密钥环,如果没有,您可以使用 seahorse
或 echo <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=""/>
我正在尝试从 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-keyring
的 Login
密钥环中。为了检索之前通过调用 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
密钥环,如果没有,您可以使用 seahorse
或 echo <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=""/>