我是第一次在AWS上使用nodejs应用程序,我仍在学习所有服务。我正在进行应用程序身份验证和授权,并且正在创建我的用户角色和组。 AWS IAM服务是用于AWS管理还是用于您的应用程序的用户授权,还是应该使用nodejs的ACL模块之一并管理我在AWS IAM服务之外的角色和用户?
答案 0 :(得分:5)
不,你不应该。 AWS IAM角色和权限控制AWS用户/实例通过EC2用户配置文件和实例访问仅限AWS服务。它们 not 旨在用于在专有应用程序中指定用户身份验证或角色。您是否应该为应用程序用户使用AWS IAM角色和权限?
我应该使用nodejs的ACL模块之一并管理我在AWS IAM服务之外的角色和用户吗?
是的,没错。使用本机方法/库来管理应用程序中特定于应用程序的用户身份验证和角色。
答案 1 :(得分:4)
随着API网关和lambda的兴起,我想知道这个建议是否仍然适用。
我在节点中有一个非常简单的API,它几乎就是围绕在mongo中存储一串JSON的ACL。
如果我可以在IAM中建模我的权限并使用lambda函数来处理mongo写/读,那么将IAM用于我的应用程序用户信用似乎是明智的。
可能这是Cognito发布支持的内容吗? (虽然我没有考虑过这个)
答案 2 :(得分:2)
AWS IAM users用于与某人(例如您的团队)共享您的亚马逊服务,而无需透露您的个人密码。
其中一个主要优势是能够为任何员工提供管理员访问权限,而不允许其访问您的信用卡数据。
如果您需要为您的应用程序或网站创建一个简单的身份验证模块(具有用户名和密码的系统的常见情况),那么您可以尝试使用PassportJS
之类的内容