如果您从 CORS api 端点看到 401 响应代码,则表示您的服务不接受令牌。您需要匹配令牌中的受众和 cors api 项目配置中的受众。
- 在 Azure AD- 项目 1 中注册 CORS API 项目
- 找到应用程序密钥 ida:Tenant 并将值替换为您的 AAD 租户名称
- 找到应用密钥 ida:Audience 并将值替换为从 Azure 门户复制的应用 ID URI。
- 启用示例中的 cors
- 在 Azure AD-项目 2 中注册单页应用程序
- 授予项目1的权限
- 在“其他应用程序的权限”部分,单击“添加应用程序”。在“显示”下拉菜单中选择“其他”,然后单击上方的复选标记。找到并单击 To Go API,然后单击底部的复选标记以添加应用程序。从“Delegated Permissions”下拉列表中选择“Access To Go API”,然后保存配置。
启用 Oauth2 隐式:
默认情况下,Azure AD 中预配的应用程序未启用使用 OAuth2 隐式授权。使用 Azure AD 部分中应用配置中的“管理清单”按钮,下载应用程序的清单文件并将其保存到磁盘。使用文本编辑器打开清单文件。搜索 oauth2AllowImplicitFlow 属性。你会发现它被设置为false;将其更改为 true 并保存文件。使用 Manage Manifest 按钮,上传更新的清单文件。保存应用程序的配置。
如果有任何问题,您可以使用 Fiddler 获取令牌并检查它们。如果权限设置正确,CORS API 端点将接受令牌。