Azure AD应用程序权限与委派权限

Arj*_*una 49 security azure azure-active-directory

我正在创建一个Azure AD应用程序,并注意到有两种权限类型,即应用程序权限和委派权限.两者之间有什么区别,在什么情况下我应该使用它们?

Mvd*_*vdD 44

当您要以登录用户身份调用Web API时,通常使用委派权限.例如,Web API需要根据用户的身份过滤它返回的数据,或者以登录用户的身份执行某些操作.或者甚至只是记录哪个用户正在发起呼叫.

当应用程序将API调用为自身时,将使用应用程序权限.例如,获取某个邮政编码的天气预报(登录哪个用户无关紧要).当没有用户存在时,客户端甚至可以调用API(一些后台服务调用API来更新某些状态).


Gau*_*tri 22

从这里的文档: https://msdn.microsoft.com/en-us/library/azure/dn132599.aspx https://azure.microsoft.com/en-us/documentation/articles/active-directory-integrating-applications/#updating-an-application(参见Accessing Web API in Other Application章节) 配置客户端应用程序以访问Web API:

  • 应用程序权限:您的应用程序需要直接访问Web API(无用户上下文).此类权限需要管理员同意,并且也不适用于本机客户端应用程序.
  • 委派权限:您的应用程序需要以登录用户身份访问Web API,但访问权限受所选权限的限制.除非将权限配置为需要管理员同意,否则用户可以授予此类权限.

基于此,如果您的应用程序需要用户模拟,那么您将需要使用委派权限.