c# - 使用身份服务器 4 撤销令牌
问题描述
我试图使用身份服务器 4 撤销令牌,我的部分代码中只有不记名令牌,问题是我应该使用 RevokeTokenAsync 方法,但这需要更多可用的参数:
public async void Logout(string bearerToken)
{
var client = new HttpClient();
// request token revocation
var response = await client.RevokeTokenAsync(new TokenRevocationRequest
{
Address = uri,
ClientId = clientId, // ?
ClientSecret = key, // ?
Token = bearerToken
});
// manage errors ....
}
是否存在任何其他方式来撤销令牌而不传递令牌以外的其他参数?
解决方案
当您调用 IdentityServer 的端点时,您应该通过 IdentityServer 的身份验证。所以你必须在你的请求中传递这些参数。
没有 ClientId 和 ClientSecret,没有任何方法可以调用 revoke 端点。
您可以在 IdentityServer 的配置中找到您的 ClientId 和 ClientSecret。
推荐阅读
- javascript - 比较同一数组的元素的最快方法
- .htaccess - 在 3 或 4 个字符后重写
- angularjs - 我想使用全局变量在控制器文件中“保存”用户的会话
- sql - 通过加入 2 个表来获取个人的最新记录
- office-js - 如何使用 Office.js API 访问 OneDrive driveItem 的属性?
- c++ - .obj 中已定义的变量;这里发生了什么?
- mysql - MySQL性能优化问题
- angularjs - 如何在验证之前通过弹簧过滤器传递角度请求?
- python - 如何绘制极坐标直方图?
- python - 如何在以字母python开头的列表中追加项目