技能的应用程序ID:安全包含在公共存储库中?

时间:2017-10-06 21:05:49

标签: amazon-web-services security github alexa-skills-kit alexa-skill

我正在开发一个带有Skill Kit SDK的Alexa技能,现在我准备在Github上发布我的Skill的存储库。在开发过程中,我在相应的index.js文件中包含了我的技能应用ID,并努力将我的工作用于我当地的git。

使用我的实际应用ID发布我的Skill存储库是否存在风险?我可以想象恶意方可能会使用应用程序ID(连同我的技能的ARN&Lambda函数)发送大量请求,从而在AWS上产生成本,但也许存在其他风险。

最好不要将应用ID包含在公共存储库中,因为noexample Skill official Amazon Alexa organization包含了各自的应用ID。

2 个答案:

答案 0 :(得分:1)

通常,人们将这些密钥/秘密作为环境变量并在代码中写入process.env.SKILL_KIT_KEY来检索它。

如果你进行切换,我会强烈建议停用你已经使用的密钥,并且在repo的历史记录中以明文形式存在并获得一个新密钥。

答案 1 :(得分:1)

另一种方法是包含一个包含所有登录或密码信息的配置文件。您可以将此文件命名为config.js。然后通过在.gitignore文件中列出该文件将其排除在Git之外。

为了帮助他人使用自己的信息重新创建此文件,请在项目中提供此文件的评论良好的模板版本。追加"模板"到名称(例如.config_template.js),并在编辑后将其重命名为config.js,以包含所有自己的信息。