首页 > 解决方案 > 调用 Microsoft Graph API 以获取 Angular 7 中的用户 AD 组

问题描述

我们需要从 Angular 7 应用程序调用 Microsoft 图形 API 来获取用户 AD 组的详细信息。

我们已经在 Azure AD 中注册了应用程序,并且我们已经读取了 Azure Active Directory Graph 和 Microsoft Graph 的 API 权限。

现在我们要验证我们是否能够在 post man 中访问 graph api。任何人都可以帮助如何在邮递员中进行测试。

如果有任何示例代码可以从 Angular 7 应用程序调用图形 api,那将会很有帮助

标签: angularazureazure-active-directoryazure-ad-graph-apiazure-api-management

解决方案


您可以参考以下步骤在 Postman 中进行测试:

向 Microsoft 标识平台注册应用程序。我相信你已经完成了这一步。但是你仍然需要做更多的配置。获取组需要这些权限。我将在这里使用 Delegated 权限:Group.Read.All。在 Azure 门户 -> 您的 Azure AD 应用程序 -> API 权限 -> 添加权限 -> Microsoft Graph -> 委派权限。

在此处输入图像描述

添加此权限后,不要忘记单击“为{您的租户}授予管理员许可”。(权限配置与出现在同意提示中之间存在延迟。请等待几分钟,然后再授予管理员同意)

在此处输入图像描述

您需要添加一个客户端密码以供后期使用(获取后记录,离开此页面后将不可见):

在此处输入图像描述

接下来你可以得到授权。只需在您的浏览器中访问此网址:

https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize?
client_id={client id of your Azure AD app}
&response_type=code
&redirect_uri={redirect uri of your Azure AD app}
&response_mode=query
&scope=offline_access Group.Read.All
&state=12345

使用您的帐户登录,您将code在地址栏中获得响应。

现在打开 Postman 以获取令牌。生成这样的请求:

在此处输入图像描述

获取访问令牌后,您可以调用GET https://graph.microsoft.com/v1.0/groupsGET https://graph.microsoft.com/v1.0/groups/{group id}获取 AD 组详细信息。

在此处输入图像描述

请注意,Authorization 的取值格式为:“bearer {access_token}”。“bearer”和“{access_token}”之间有一个空格。

以下是一些Microsoft Graph 的 Angular 代码示例,供您参考。


推荐阅读