Use Reference:
https://msdn.microsoft.com/en-us/library/azure/ad/graph/howto/azure-ad-graph-api-permission-scopes
个人理解:
Application Permission是使用了应用程序的权限,所有的用户都使用应用程序的权限
Delegate Permission是使用了代理的权限,每个用户都有每个用户的权限
例如:
当一个用户是以User身份通过了身份验证,普通用户默认的权限只有更新个人信息的权限,代理权限被设置成对所有域中对象可写,但这个应用程序对于该用户也只能更新自己的个人信息
但如果在Application Permission中使用了该权限,则不会考虑当前角色,完全使用应用程序的权限,以上面为例,如果应用程序权限被设置成了对所有域中对象可写,此时这个应用程序对于该用户而言对所有域中对象可写
From Reference:https://msdn.microsoft.com/en-us/library/azure/ad/graph/howto/azure-ad-graph-api-permission-scopes
For example, if the permission scope grants delegated privileges to write all directory objects, but the signed-in user has privileges only to update their own user profile, the app will only be able to write the signed-in user's profile but no other objects.
PS:
暂时还未验证,这个Application到底是指的在AAD建立应用程序的时候所选择的本机应用程序,还是说在AAD里建完一个Web Application之后所选择的Application Permission
不过可以肯定的是,我使用本机应用程序,可以对AAD中所有的对象进行操作