我们有一个使用无服务器框架的 aws lambda 函数。我们看到奇怪的行为,当 bitbucket 管道运行时,单词“admin”的所有实例都被“$ARTIFACTORY_USER”替换。当我们尝试在管道中回显变量时,我们得到这个输出,
“admin”是 lambda 中的保留关键字吗,可能的原因是什么?这是我们正在使用的命令
npm i && sls deploy --region ca-central-1 --stage dev
以下是我们正在使用的无服务器插件
我们尝试在不同的管道中运行相同的代码,该代码在 serverless.yml 中的任何位置都不包含“admin”一词,它在那里工作。
需要确认“admin”是否是Serverless框架中的保留关键字。我们的域名url中也有admin,如果它是保留关键字,我们如何仍然在域名中使用它
这是因为
ARTIFACTORY_USER
变量的值为“admin”,并且它被配置为秘密。
参见https://stackoverflow.com/a/73680633/11715259
请注意,现在互联网上的每个人都知道您的秘密。如果这对您来说确实是一个秘密,您应该尽快轮换该值。
您应该避免此类弱秘密。使用可以合法显示在日志中的字典单词将导致此安全功能暴露您的秘密的值,以便即使从未故意打印它也可以推断出它。