Node.js 如何在开发模式应用程序中抑制共享aws凭据

Node.js 如何在开发模式应用程序中抑制共享aws凭据,node.js,amazon-web-services,credentials,Node.js,Amazon Web Services,Credentials,为了使用aws命令行工具,我将aws凭据存储在~/.aws/credentials中 当我在本地运行我的应用程序时,我希望它需要该应用程序的正确IAM权限;我希望它从环境变量中读取这些权限 所发生的事情是,即使没有定义这些环境变量,即使没有定义权限,我的应用程序也允许调用aws,这是不允许的,因为它运行在具有开发人员凭据的系统上 我如何在我的系统上运行我的应用程序,而不是在容器中运行,而不清除aws命令行所需的凭据,但让应用程序忽略这些凭据?我已尝试在我的开始脚本中将AWS_PROFILE环境变

为了使用aws命令行工具,我将aws凭据存储在~/.aws/credentials中

当我在本地运行我的应用程序时,我希望它需要该应用程序的正确IAM权限;我希望它从环境变量中读取这些权限

所发生的事情是,即使没有定义这些环境变量,即使没有定义权限,我的应用程序也允许调用aws,这是不允许的,因为它运行在具有开发人员凭据的系统上


我如何在我的系统上运行我的应用程序,而不是在容器中运行,而不清除aws命令行所需的凭据,但让应用程序忽略这些凭据?我已尝试在我的开始脚本中将AWS_PROFILE环境变量设置为不存在的值,但没有帮助。

我喜欢使用命名的配置文件,并运行两组凭据,例如DEV和PROD

要运行生产配置文件时,请运行导出AWS_profile=PROD

然后以同样的方式返回到DEV凭据

这里的诀窍是根本没有默认凭据,只使用命名的配置文件。删除凭据文件中名为default的凭据,并仅替换为命名的配置文件

谢谢!效果很好。aws配置-配置文件开发