首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >替代HTML2.0ROPC无需解释OAuth /Javascript

替代HTML2.0ROPC无需解释OAuth /Javascript
EN

Stack Overflow用户
提问于 2021-04-30 12:49:58
回答 1查看 308关注 0票数 0

我所处的环境是一个嵌入式设备,它使用HTTPS客户端代表用户请求访问令牌(应用程序所需的授权权限)。

我目前正在使用OAuth 2.0 ROPC (https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth-ropc)来获取令牌,一切都很好。

但是,由于这种身份验证是不推荐的,所以我希望更改为一种更安全的解决方案,该解决方案适用于混合身份联合方案。

我看到还有很多其他的解决方案,但是我找不到不需要解释HTML/JS响应的解决方案。

这里有一个卷曲的例子来解释我的观点:

ROPC请求:

代码语言:javascript
复制
curl -X POST "https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token" --data "grant_type=password&scope=EWS.AccessAsUser.All&username=<username>&password=<password>&client_id=<client_id>&client_secret=<client_secret>" -H "Content-Type: application/x-www-form-urlencoded"

答复:{"token_type":"Bearer","expires_in":3599,"ext_expires_in":3599,"access_token":"eyJ0eX....1234"}

在这里,我可以直接从响应中提取令牌。

但是,使用其他获得委托权限令牌的方法,如HTML2.0隐式格兰特流( OAuth 2.0隐式格兰特流,https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-implicit-grant-flow),响应总是一个我无法解释的HTML。

因此,我想知道是否有解决这一情况的办法。

预先感谢,Alo s KYROU

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-04 07:24:01

不能使用隐式流在工具中获取令牌,只能在浏览器中运行请求url。因为使用隐式流需要您登录。请注意,在此之前,必须启用id令牌访问令牌

在浏览器中请求id令牌和访问令牌。

代码语言:javascript
复制
https://login.microsoftonline.com/{tenant id}/oauth2/v2.0/authorize?
client_id={client id}
&response_type=id_token token
&redirect_uri={redirect_uri}
&scope=openid EWS.AccessAsUser.All
&response_mode=fragment
&state=12345
&nonce=678910
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67334240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档