【发布时间】:2016-04-05 09:53:38
【问题描述】:
我们的应用程序使用 oauth2 & openid connect 进行身份验证和身份验证。它是使用调用 REST API 的 Angular 客户端构建的。我想知道如何根据拥有不可猜测的 url 来授权对 API 的访问。
我会再解释一下。在应用程序中,一个用户可以邀请另一个用户。发生这种情况时,会向第二个用户发送一封电子邮件。当用户 2 单击电子邮件中的链接时,他会被发送到包含有关邀请的详细信息的网页。
应该只允许用户 2 看到邀请页面。我打算通过在电子邮件中使用“不可猜测的 url”来解决这个问题。访问该 url 后,用户必须以某种方式获得授权才能从 API 获取邀请详细信息。
问题:如何在知道不可猜测的 url 的基础上授权用户?如何在页面加载时分配声明,以及如何在 API 调用中验证此声明接下来是?我看到的唯一解决方案是设置一个包含令牌的 cookie。但这不符合我们现有的认证机制。我不喜欢自己编写令牌验证代码,而是让身份提供者来处理。
附加信息:用户 2 在系统中可能有也可能没有帐户,他可能已登录,也可能未登录。两者都不应阻止用户查看邀请详细信息。换句话说:一个完全未知的用户应该能够看到该页面。 url的知识应该是唯一的要求。
这个问题有什么解决办法吗?还是我处理错了?
【问题讨论】:
标签: rest security oauth oauth-2.0 claims