首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在ServiceStack身份验证中,仅使用httponly ss-tok bearerToken cookie有什么意义

在ServiceStack身份验证中,仅使用httponly ss-tok bearerToken cookie有什么意义
EN

Stack Overflow用户
提问于 2017-11-22 02:12:07
回答 0查看 213关注 0票数 2

我从安全的角度理解了用于Set-Cookie响应头的值的httponly标志的概念,并防止XSS攻击。

我不明白的是,ServiceStack用来保存bearerToken的"ss-tok“cookie做了什么。

根据ServiceStack documentation,我可以通过发出无状态JWT Cookie来转换为无状态会话,如下所示:

代码语言:javascript
复制
var authResponse = client.Send(new Authenticate {
    provider = "credentials",
    UserName = username,
    Password = password,
    UseTokenCookie = true
});

UseTokenCookie设置为true。并且在成功认证后创建httponly "ss-tok“cookie。

然而,我似乎不能使用这个以"ss-tok“名称存储的令牌cookie来做任何事情。我显然不能用Javascript检索它,而且我似乎也不能让它在JsonServiceClient请求中发送。

我的ServiceStack资源微服务在任何安全请求中都不会收到"ss-tok“的值。我必须显式地为任何安全请求设置bearerToken。

我必须显式地将bearerToken或refreshToken与ServiceStack documentation on this matter中声明的JsonServiceClient一起传递。

我一定是做错了什么,I thought this documentation是我遗漏的部分,代码如下:

代码语言:javascript
复制
var client = new JsonServiceClient(baseUrl);
client.SetCookie("ss-tok", jwtToken);

但是这段代码实际上没有任何意义,因为"ss-tok“的值没有被发送到我的资源微服务,我必须像我前面说过的那样显式地设置bearerToken的值:

代码语言:javascript
复制
var client = new JsonServiceClient(baseUrl);
client.bearerToken = jwtToken;

这意味着我将不得不将jwtToken存储在我自己的Cookie值中,因为我的应用程序将需要在应用程序的不同区域创建多个JsonServiceClient实例。

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47419921

复制
相关文章

相似问题

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