授权Stormpath应用程序的正确方法是什么?

时间:2016-07-14 23:35:35

标签: node.js authorization stormpath

我正在使用express-stormpath软件包和我在Stormpath.com帐户中创建的新应用程序。

我在我的应用中使用stormpath我必须在stormpath管理员的应用程序页面中提供应用程序HREF,我还必须提供API密钥和密钥。

我一直在为我分配给该帐户的一个管理员租户上创建的每个应用创建一个新的API密钥/密钥,这是我注册的。

我使用该API密钥/秘密来使用Stormpath授权我的express应用程序。

因此,在我的管理员帐户中,我有一长串API密钥,我不知道哪个密钥适用于哪个应用。

我应该这样做吗?

感觉非常混乱。我看到普通的应用程序用户可以获得API密钥/秘密,这些是为了什么?我是否可以为每个应用创建admin个用户,并使用他们的API密钥和机密而不会让他们成为stormpath管理员?

这有意义吗?我曾尝试直接通过电子邮件发送支持..但他们并不真正理解这一点。 :/

1 个答案:

答案 0 :(得分:2)

首先,这是一个很好的问题,所以我不确定你为什么要被投票。 API密钥可能是一个令人困惑的主题。在回答你的具体问题之前,我会尽力清理周围的谜团。

在Stormpath中,有两种类型的API密钥:租户API密钥和帐户API密钥。租户API密钥是您向Stormpath进行API调用所需的。他们将您识别为Stormpath Tenant的管理员,并为您提供对所有租户数据的完全读/写访问权限(换言之,您在Stormpath中存储的任何内容和所有内容)。根据定义,管理员可以访问Stormpath API和管理控制台(也就是您登录Stormpath时看到的网页)。

还有Account API密钥的概念。帐户是注册使用您的网络应用,移动应用或API服务的人员(或设备)。在Stormpath中,帐户存储在目录中,而目录又存储在“应用程序”中。 You can read all about this here。我喜欢将Account API密钥视为用户名和密码的更安全版本。如果您构建自己的API服务并希望用户在开始向您的API发出请求之前进行身份验证,那么它们非常有用。

这就是它的全部内容。 API密钥对您进行身份验证 - 仅此而已。有很多文章在讨论API密钥是否比其他方法更安全,所以你可以自由地检查出来。但在Stormpath中,为了与我们的API进行通信,您必须将自己标识为Stormpath Tenant管理员。在构建自己的Web应用程序,移动应用程序或API服务时,您可以选择 用户与 服务进​​行交互的方式。

我希望这有助于澄清问题。

如果要为用户创建任何其他类型的角色/权限,您需要了解授权及其在Stormpath中的工作方式。我不会在这里详细说明,但是you can read all about it in our docs