如何在服务器端在Excel中实现组织帐号和身份验证? [英] How to implement "Organizational account" authentication in Excel on server side?

查看:10
本文介绍了如何在服务器端在Excel中实现组织帐号和身份验证?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个Java应用程序,它以纯HTML格式提供一些报告。

我希望使用Microsoft SSO(OAuth)保护这些报告。

我能够在浏览器中做到这一点-我在Azure AD中创建了新的";AppRegister";,Getclient_idclient_secret,OAuth 2authentication_url,在此应用程序中正确配置了redirect_uri,并在浏览器中实现了OAuth流-它按预期工作。

但用户不想在浏览器中查看报告,他们希望在Excel 2019中处理它们。 它已通过组织帐户身份验证。 我相信它使用相同的OAuth 2流。

因此,我添加了WWW-Authenticate: Bearer authorization_url="https://login.microsoftonline.com/256be541-f611-4412-975e-cb56ee6fb03b/oauth2/v2.0/authorize"

我正在尝试访问的网址如下:https://localhost:8443/report/1

现在Excel要求我输入登录名和密码,但身份验证成功后显示错误:

INVALID_RESOURCE:AADSTS500011:在名为256be541-f611-4412-975E-cb56ee6fb03b的租户中未找到名为https://localhost:8443的资源主体。如果租户的管理员尚未安装应用程序或租户中的任何用户都未同意,则可能会发生这种情况。您可能将身份验证请求发送给了错误的租户。 跟踪ID:57324bfe-ab46-4c2e-9128-a336aa287e00 相关ID:d9c4c732-76cc-4659-9d8a-d27abec617d3 时间戳:2021-02-02 16:50:13Z

https://localhost:8443-是我的应用程序的地址,此地址将包括在应用程序注册中的REDIRECT_URI。

但我不认为提到的资源主体与reDirect_uri;有关。

那么,我如何在Azure AD中创建";资源&主体并将其命名为&https://localhost:8443";?

推荐答案

事实上,情况就是这样。根据您的错误消息,找不到https://localhost:8443的资源体,表示您在请求访问令牌时将scope设置为:https://localhost:8443

但是,您只在开始时将其设置为reDirect_uri,而没有在公开API选项卡中将应用程序ID URI设置为:https://localhost:8443,因此当您请求资源时,错误消息将报告找不到该资源。

顺便说一下,scope不同于redirect_uri。作用域放置了您想要访问的资源,而reDirect_uri只是不是您想访问的资源的回调url。这就是为什么在reDirect_uri中设置url时仍然会出现错误。

这篇关于如何在服务器端在Excel中实现组织帐号和身份验证?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆