我对浏览器如何管理安全会话感兴趣。据我所知,这是登录到google帐户时的场景:
1) Browser (B)和google (S)通过使用TLS或SSL加密http流量来执行握手以创建安全会话。
2)用户(U)输入详细日志
3) U被认证
4)你在youtube上打开一个选项卡,并提供了一个使用他们的google帐户登录的选项。
5) U使用他们的google帐户,但不需要输入任何细节,因为他们的浏览器仍然与他们的google帐户有一个安全的会话。
我的问题是,对于浏览器来说,步骤4-5是如何执行的,像youtube这样的网页是如何将密码和会话细节连接到youtube服务器的?浏览器如何存储和管理这一点?
我熟悉sso和联邦身份等协议的操作,但在这里,我感兴趣的是编写能够从浏览器中获取这些信息的网页/应用程序。
发布于 2014-12-09 00:33:32
每个网站的安全会话详细信息存储在由响应设置的本地cookie中,并在以后的请求中发送到服务器。
对于跨域的例子,就像您用youtube描述的那样(以及描述的注释),标准的方法是OAUTH或OAUTH2。这是相同的机制,你可以允许其他网站访问你的facebook或twitter的细节。
所有这些都显示为一系列具有参数的请求和重定向到其他目标的响应。
OAUTH有一些“隐式”流,允许用户在没有明确批准的情况下在网站上自动登录。
您可以在这里以交互方式处理一些示例请求:https://developers.google.com/oauthplayground/
发布于 2014-12-09 01:46:34
对于任何事物来说,使用令牌/coookie是身份验证机制工作的原因。这个饼干是如何被第三方验证的,这就是神奇的调料。令人惊讶的是,每个人都试图打破Web1.0客户机/服务器模式,将第三方的干预包括进来,这令人惊讶。
https://security.stackexchange.com/questions/70644
复制相似问题