如何在休息通话中隐藏授权持有者?

cod*_*a23 5 rest azure oauth-2.0 office365 azure-active-directory

我们正在开发一个对 Office 365 进行休息调用的 Web 应用程序。在此过程中,我们在提供必要的详细信息后,从 azure Active Directory 获取仅限应用程序的访问令牌。使用此访问令牌,我们可以访问活动目录中存在的所有用户的资源,同时执行各种 Outlook 操作(其余调用!!)。任何人都可以使用 fiddler 或其他 Web 调试器等应用程序查看这些请求和响应。任何可以使用公开可见的访问令牌的人都可以利用此漏洞来调用服务器。

可以使用以下图像清楚地表达事物:-在此输入图像描述

在此输入图像描述

我们明显的问题是,如何避免这种情况以及如何保护我们的休息呼叫,必须采取访问令牌才能到达 Office 365,否则无法执行操作?请帮忙 !!

Gau*_*tri 2

如果您担心用户可能滥用令牌,您可以做的一件事是让所有请求都通过您的服务器路由,而不是直接从浏览器进行 REST API 调用。您始终可以将不记名令牌保留在服务器上。您的用户将调用您的 API,然后您的 API(在您的服务器上运行)将代表使用该令牌的用户调用 Office 365 API。

但是,您需要考虑这样一种情况:用户针对其 Office 365 进行身份验证/授权,并且令牌不允许他们执行任何不允许的操作。他们根本无法获取该令牌并发出任何他们没有权限的任意请求。