Cordova Build.json 密码安全

Cordova Build.json password security

在构建和签署我的 apk 时,我遇到了问题让 cordova 提示我输入 build.json 文件中的 storePassword 和密码字段的密码。我转向的解决方案是将它们输入 build.json 文件。

我的问题:在 build.json 中手动输入密码时是否存在任何安全问题(例如密码以某种方式包含在实际签名的 apk 中等)?

我的 cordova 项目的根目录中有 build.json,所以它会被自动检测到,我所要做的就是:

cordova build android --release

...这就是我走这条路的原因(它很管用)。我知道这看起来像是一个愚蠢的问题,但 Cordova 文档指出:

"For release signing, passwords can be excluded and the build system will issue a prompt asking for the password."

...这意味着出于某种原因不应将密码输入 build.json 以进行发布。

我认为主要原因是为了避免在 build.json 中以纯文本形式存储密码,而是在控制台中输入密码:

{
    "android": {
        "debug": {
            "keystore": "../android.keystore",
            "storePassword": "android",
            "alias": "mykey1",
            "password" : "password",
            "keystoreType": ""
        },
        "release": {
            "keystore": "../android.keystore",
            "storePassword": "",
            "alias": "mykey2",
            "password" : "password",
            "keystoreType": ""
        }
    }
}

或从环境变量中获取:
cordova run android --release -- --keystore=../my-release-key.keystore --storePassword=%STORE_PASS% --alias=mykey2 --password=password.

the passwords somehow being included in the actual signed apk

build.json 文件不会包含在构建的最终 apk 中。您可以通过解压缩 apk 进行交叉检查来验证这一点。

希望对您有所帮助。