Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在rest呼叫中隐藏授权持有者?_Rest_Azure_Oauth 2.0_Office365_Azure Active Directory - Fatal编程技术网

如何在rest呼叫中隐藏授权持有者?

如何在rest呼叫中隐藏授权持有者?,rest,azure,oauth-2.0,office365,azure-active-directory,Rest,Azure,Oauth 2.0,Office365,Azure Active Directory,我们正在开发一个web应用程序,可以对office 365进行rest调用。在此过程中,在提供必要的详细信息后,我们从azure active directory获得了一个仅应用程序访问令牌。使用此访问令牌,我们可以访问active directory中所有用户的资源,同时执行各种outlook操作(rest调用!!)。任何人都可以使用诸如fiddler或其他web调试器之类的应用程序查看这些请求和响应。任何可以使用公开可见的访问令牌的人都可以利用此漏洞调用服务器 使用以下图像可以清楚地表达事情

我们正在开发一个web应用程序,可以对office 365进行rest调用。在此过程中,在提供必要的详细信息后,我们从azure active directory获得了一个仅应用程序访问令牌。使用此访问令牌,我们可以访问active directory中所有用户的资源,同时执行各种outlook操作(rest调用!!)。任何人都可以使用诸如fiddler或其他web调试器之类的应用程序查看这些请求和响应。任何可以使用公开可见的访问令牌的人都可以利用此漏洞调用服务器

使用以下图像可以清楚地表达事情:-

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

任何人都可以使用 fiddler或其他web调试器等应用程序

是的,在本地计算机上-但是本地用户可能已经通过了进行此操作的身份验证。。。 同样,当你在网站上提交付款单时,你可以用Fiddler在本地捕获你的信用卡信息


呼叫是(或至少应该是)通过HTTPS进行的,HTTPS对其进行端到端加密,因此“嗅探”网络的人看不到呼叫。

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


然而,您需要考虑用户对其办公室365进行认证/授权的情况,令牌将不允许他们执行任何他们不允许的操作。他们不能拿着那个令牌,发出任何他们没有权限的任意请求

通过SSL进行呼叫??您是否担心令牌被您应用程序的用户滥用,或者有人嗅探用户浏览器上的流量?嘿,您明白我的意思了,我担心它被我应用程序的用户滥用!!谢谢你的回答,alex,但是我担心它被我的应用程序的用户误用!!此外:本地计算机上的任何人都看不到该令牌,但同一浏览器中的任何人都可以看到该令牌,因此除非您的浏览器受到其他方的控制(这意味着您无法挽救),否则您是安全的,并且该令牌不会泄露给除您以外的任何人。注释:令牌允许用户检索他们有权获得的信息以及他们在浏览器中看到的信息;这不是问题;令牌对于每个用户都是“作用域”的。实际上,在我们的问题中,访问令牌对于属于该active directory的所有用户都是有效的!!(特定的active directory),感谢您通过apppreciate提供的帮助:D