博客地址:http://blog.csdn.net/FoxDave
上一篇文章我们讨论了认证的路线图和访问令牌这两个进行Microsoft Graph请求的关键。本篇我们介绍如何注册一个Azure AD应用程序用来跟Microsoft Graph通信。
在介绍注册Azure AD应用程序的步骤之前,我们先来阐明一些东西。在Azure AD中用于注册应用程序的终结点有两个:V1和V2。本篇我们使用预览版的Azure AD应用程序注册门户网站和V2版本的终结点来注册应用程序,也是微软推荐的方式。下面的图表是从上一篇修改来的,展示了本篇要关注的内容。
注册Azure AD V2应用程序
在浏览器中访问Azure AD门户网站中的App registrations。
点击New registration菜单。
在新注册应用程序的页面,指定如下信息:
- Name = <你想要使用的名称>
- Supported account types = <选择需要的类型>
- Redirect URI = Web : https://localhost:8080
注意:Redirect URI值可以在之后进行修改,也可以指向一个不存在的地址。
点击“Register"按钮注册应用程序。应用程序创建完成后,Azure会转到应用程序概览页。在这个页面拷贝Application (client) ID和Directory (tenant) ID这两个值,之后会用到。
选择左侧管理项中的Authentication。在第二跳转URI中填入https://app.getpostman.com/oauth2/callback。之后的文章中我们会用这个URI使用Postman去调用Microsoft Graph。
-
选择左侧菜单中的Certificates & Secrets
-
选择New client secret
-
在Add a client secret对话框中,指定如下值:
- Description = Secret1
- Expires = In 1 year
-
点击添加
创建完client secret后,复制VALUE字段的值,我们之后会用到它。
重要提示:该密钥字符串之后不会再显示了,一定要在这里复制它的值,否则只能重建了。
下一步是设置应用程序调用Microsoft Graph所需的权限。我们会在之后的文章中更细致地探讨应用程序权限,本文只介绍两种权限:
- 托管权限 (Delegated Permissions)
当应用程序在用户上下文中运行时,使用该权限。在这种情况下,以用户的权限去运行应用程序。 - 应用程序权限
在使用客户端凭据流 (也叫做app only flow)时使用该权限。在这种情况下,应用程序不需要在用户上下文中运行。本文我们添加这种权限。
我们会在之后的文章中使用创建的应用程序调用Microsoft Graph去查询组织中的所有用户列表。因此我们在这里添加"User.Read.All”应用程序权限。
点击左侧菜单的API permissions。点击Add a permission按钮。选择Microsoft Graph。选择Application Permissions。展开用户分类并勾选User.Read.All权限。
注意:我们会看到Admin consent required列显示为Yes。这意味着应用程序在能够调用Microsoft Graph查询之前必须得到Azure AD管理员的授权。
回到API Permissions屏幕并点击Grant admin consent for ,然后点击Yes。
注意:我们必须是Azure AD的域管理员或类似的角色才能授予管理员许可。