技能的应用程序 ID:安全地包含在 public 存储库中?
Skill's app ID: Secure to include in public repository?
我正在使用 Skill Kit SDK 开发 Alexa Skill,现在我准备在 Github 上发布我的 Skill 存储库。在开发过程中,我将我的技能的应用程序 ID 包含在相应的 index.js
文件中,并在我的本地 git.
中努力地完成我的工作
使用我的实际应用 ID 发布我的技能存储库是否存在风险?我可以想象恶意方可能会使用应用程序 ID(连同我的 Skill 的 Lambda 函数的 ARN)发送大量请求,从而在 AWS 上产生成本,但也许还有其他风险。
最好不要将应用程序 ID 包含在 public 存储库中,因为 no example Skill of the official Amazon Alexa organization 包含了它们各自的应用程序 ID。
通常,人们将这些 keys/secrets 作为环境变量放入,然后在代码中写入 process.env.SKILL_KIT_KEY
来检索它。
我会强烈建议,如果您进行切换,请停用您使用过的密钥,该密钥以纯文本形式存在于回购协议的历史记录中,并获得一个新密钥.
另一种方法是包含一个包含所有登录名或密码信息的配置文件。您可以将此文件命名为 config.js。然后通过在 .gitignore 文件中列出该文件来排除该文件被签入 Git。
为了帮助其他人使用他们自己的信息重新创建此文件,请在项目中提供此文件的注释良好的模板版本。将 "Template" 附加到名称(例如 config_template.js)并说明在编辑后将其重命名为 config.js 以包含他们自己的所有信息。
我正在使用 Skill Kit SDK 开发 Alexa Skill,现在我准备在 Github 上发布我的 Skill 存储库。在开发过程中,我将我的技能的应用程序 ID 包含在相应的 index.js
文件中,并在我的本地 git.
使用我的实际应用 ID 发布我的技能存储库是否存在风险?我可以想象恶意方可能会使用应用程序 ID(连同我的 Skill 的 Lambda 函数的 ARN)发送大量请求,从而在 AWS 上产生成本,但也许还有其他风险。
最好不要将应用程序 ID 包含在 public 存储库中,因为 no example Skill of the official Amazon Alexa organization 包含了它们各自的应用程序 ID。
通常,人们将这些 keys/secrets 作为环境变量放入,然后在代码中写入 process.env.SKILL_KIT_KEY
来检索它。
我会强烈建议,如果您进行切换,请停用您使用过的密钥,该密钥以纯文本形式存在于回购协议的历史记录中,并获得一个新密钥.
另一种方法是包含一个包含所有登录名或密码信息的配置文件。您可以将此文件命名为 config.js。然后通过在 .gitignore 文件中列出该文件来排除该文件被签入 Git。
为了帮助其他人使用他们自己的信息重新创建此文件,请在项目中提供此文件的注释良好的模板版本。将 "Template" 附加到名称(例如 config_template.js)并说明在编辑后将其重命名为 config.js 以包含他们自己的所有信息。