2

我正在开发一个Alexa的技能与Skill Kit SDK,现在我准备出版我的技能的Github上库。在开发过程中,我将我的Skill的应用程序ID包含在index.js文件中,并使用本地git努力完成我的工作。Skill的应用程序ID:安全以包括在公共存储库中?

是否有参与出版我的技能的资料库与我的实际应用程序ID的风险?我可以想象恶意方可能会使用应用程序ID(与我的技能Lambda函数的ARN一起)发送大量请求,从而导致AWS上的成本,但也可能存在其他风险。

这似乎是很好的做法不包括公共库中的应用程序ID,因为official Amazon Alexa organizationnoexampleSkill包括了各自的应用程序ID。

回答

1

通常,人们把这些键/秘密作为一个环境变量,并在代码中写process.env.SKILL_KIT_KEY进行检索。

我会强烈建议您,如果您进行切换,请停用您已使用的密钥,并且在回购协议历史记录中以纯文本形式存在并获得新密钥。

+0

谢谢,其实这就是我做什么,以及它工作得很好。与你偏离的一个方法是我无法更改现有技能的ID,因此我克隆了它并删除了具有已发布ID的技能。 –

+0

如果回答这个问题,这个答案会更好。您将讨论如何隐藏ID,但不会讨论是否需要隐藏或公开它的安全含义 –

1

另一种方法是包括一个包含所有登录名或密码信息的配置文件。你可以命名这个文件config.js。然后通过将它列入.gitignore文件中,将此文件从检入到Git中排除。

帮助别人重新与自己的信息文件,提供这个文件中的项目的很好的注释模板版本。将“模板”附加到名称(例如config_template.js)中,并在编辑之后将其重命名为config.js,以包含其所有信息。

相关问题