我正在使用网络上的不同链接及其rfc(RFC 6749)阅读oauth 2协议。通过链接后,我有以下疑问:
授权服务器在生成并将代码传递给客户端后,是否需要在其末尾维护授权代码?
有两种不同的客户端尝试从授权服务器获取令牌的情况:第一个客户端在资源所有者已记录并获得批准的访问权限后获取令牌。然后第二个客户端(与第一个完全不同)尝试获取令牌。
a)是否应重定向第二个客户端和资源所有者
应该要求再次登录或授权服务器应该登录
以检测资源所有者的方式实现
早先登录,不会要求资源的用户名和密码
主人吗?
答案 0 :(得分:2)
授权服务器必须保持与code
a.o相关联的状态。访问它的客户端标识符,客户端使用的重定向URI和颁发时间戳。这通常意味着授权服务器必须将code
作为对存储在后端的状态的引用。避免这种情况的一种方法是将所有信息编码到code
本身并加密。
授权服务器可以选择维护登录会话或依赖外部SSO服务器来执行此操作,以便用户无需再次进行身份验证。但它必须要求用户同意向第一个和第二个客户端的特定客户端发放令牌。所以:身份验证可以是隐式的(SSO),同意必须是明确的(因为它是关于不同的客户端)。