azure - Azure 活动目录令牌
问题描述
我不熟悉通过 Web API 使用 Azure Active Directory 身份验证。现在,我的单页应用程序简单的登录页面将用户定向到 Microsoft 登录页面,他们在其中输入凭据,然后被重定向回我的 SPA。重定向后,访问令牌现在是 URL 的一部分。是否可以通过 JSON 而不是 URL 的一部分获取该令牌?像这样使令牌对用户可见是一种安全风险吗?如果没有其他方法可以获取令牌,那么最好的处理方法是什么?我应该阅读 URL 并从那里提取令牌,然后将用户再次重定向到实际网站吗?
解决方案
您必须注意隐式流程,令牌仍将保留在客户端站点(通常是本地存储)。因此,即使您从 URL 隐藏令牌,您仍将存储在客户端,这是您必须在 SPA 中管理的事情之一。您必须将令牌与每个 HTTP 请求一起发送到您的 Web api,以便在该端进行身份验证。
在隐式流令牌中是短暂的,您不能发出刷新令牌以获得更长的访问时间。对于这种流程,您需要使用官方库(ADAL.js)
https://github.com/AzureAD/azure-activedirectory-library-for-js
更多资源
https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-implicit-grant-flow
推荐阅读
- c# - 请求被中止:无法创建 SSL/TLS 安全通道。调用 PostAsJsonAsync 时
- excel - 查找一个值,在另一个工作簿中查找匹配值的最后一列
- cron - 每次运行时创建文件的 Cron 作业
- html - 是否可以自定义文本框的形状?
- json - 使用 Pyspark 将包含在单个文件中的 JSON 对象合并到一个 JSON 文件中
- python-3.x - Python 3.6:NameError:名称“A”未定义
- c - 从C中的字符串中删除出现的数组
- aws-kms - 微软的 KMS 在功能上是否与亚马逊的 KMS 相同?
- mysql - MySQL - 多行触发器
- pycharm - 使用 attrs 对子类进行 Pycharm 类型提示