gpt4 book ai didi

javascript - 在 header 中传递 openid-connect oauth2 承载 token

转载 作者:行者123 更新时间:2023-11-29 10:14:12 27 4
gpt4 key购买 nike

背景

我已经实现了 Thinktecture.IdentityServer.V3(openID Connect 之一)。我已将 OAuth2 承载 token 以以下形式返回到我的 javascript 客户端(隐式流):

{
"id_token": "eyJ0eXAiOiJKV1QiLCJh...", // JWT
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1Ni..", // JWT
"token_type": "Bearer",
"expires_in": "3600",
"scope": "openid profile read write email",
"state": "1299139105028949"
}

但在所有示例中,它们仅在调用服务时将 access_token 传递给资源提供者。

 $.ajax({
url: 'http://localhost:2727/Account/123/Get',
headers: {
Authorization: "Bearer " + $scope.response.access_token
}
})

假设

如果我做对了,我会使用访问 token 进行身份验证。然后我根据 id_token 中的声明进行授权(我不想进行单独的数据库调用 - 我希望它完全独立)。

问题

我如何通过 ajax 将此信息传递到我的 webapi2 端点(假设我已经设置了 CORS 等)以及我必须连接什么中间件来验证它? (我猜是 Token Validators 和 claimsManager 中的一个,但有太多我无法决定使用哪个是正确的)。

帮助非常感谢

最佳答案

id_token 用于客户端 - 它必须由客户端验证(或者如果客户端没有必要的加密库,则由 idsrv 中的身份 token 验证端点验证)。之后,您使用访问 token 访问资源。

关于javascript - 在 header 中传递 openid-connect oauth2 承载 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26259709/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com