我有一个Angular JS应用程序,并使用Identity Server 3作为我的身份提供者。
用户通过javascript重定向到Identity Server以获取令牌,例如
https://accounts.domain.eu/connect/authorize?client_id=MyApplicationId&redirect_uri=https://www.domain.eu&response_type=id_token%20token...
成功进行身份验证后,IdentityService会重定向回提供的redirect_uri
,其中302将重定向浏览器,并且location
标头包含例如。
https://www.domain.eu/#id_token=eyJ0eXAiOiJKV1QiLCJhbGc...
假设这是安全的,我是否正确,因为location
标头值将使用HTTPS加密,并且对于查看HTTP请求的人不可用?
答案 0 :(得分:1)
传输渠道应该受到HTTPS的保护 - 是的。
答案 1 :(得分:0)
虽然通过使用HTTPS保护了从身份服务器到浏览器的HTTP 302响应,但ID令牌不会被发送到目标应用程序,因为它是Fragment Identifier,它将/必须在客户端(浏览器)端处理。
这也符合Implicit Flow的目的,主要针对Javascript客户端。