angular - 调用 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,那将会很有帮助
解决方案
您可以参考以下步骤在 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/groups
或GET https://graph.microsoft.com/v1.0/groups/{group id}
获取 AD 组详细信息。
请注意,Authorization 的取值格式为:“bearer {access_token}”。“bearer”和“{access_token}”之间有一个空格。
以下是一些Microsoft Graph 的 Angular 代码示例,供您参考。
推荐阅读
- react-native - 在本机反应中更新和重新加载组件
- javascript - 如何在 wiki.js 工具中添加日语文本搜索支持?
- php - php - 如何为我的语言词典条目创建动态 url
- sql - 在 BigQuery 中的滚动窗口上使用 NTILE 函数(滚动分箱/滚动分位数)
- azure - 发生 api 错误时 Azure AD 自定义策略不会停止
- angular - 有没有办法在 PrimeNG 表中设置多个自定义列过滤器?
- dataset - 此处不应出现“azure_blob_fs_location”类型的块
- python-3.x - azure selenium 脚本随机失败
- cypress - cypress-testrail-reporter 无法提交结果
- reactjs - 使用 react-hook-form 上传和保存文件列表