在OpenID Connect中跳过用户同意的方法

时间:2015-02-03 15:41:42

标签: oauth-2.0 openid-provider openid-connect

在身份验证请求中,如果用户之前已同意某个客户端(针对特定的范围列表),并且可能会多次提示他们提供相同的授权。 ¿跳过它可以接受吗? ¿适用于代码和隐式流程? ¿多久时间记住同意?。

我对实现它的方式有点困惑。 Oauth2草案说:

... and obtains an authorization decision
(by asking the resource owner or by
establishing approval via other means).

OpenID草案说:

... this MAY be done through an interactive dialogue with the End-User
that makes it clear what is being consented to or by establishing
consent via conditions for processing the request or other means
(for example, via previous administrative consent).

正在为Django开发OpenID Provider实现。 https://github.com/juanifioren/django-openid-provider

感谢您的时间。问候。

2 个答案:

答案 0 :(得分:1)

同意是一件棘手的事。不同国家有不同的规则,甚至在同一个国家内也有不同的解释。但是,除了在SSO系统中处理同意的一种常见方式之外,在第一次从特定客户端出现时询问用户是否同意,然后询问是否应该记住该选择或者是否应该仅对此一次有效。当然,如果用户说她的同意应该记住,她仍然应该有可能在以后重新绘制同意但在正常的授权流程之外。

答案 1 :(得分:0)

只有在用户首次登录该客户端然后将其存储以供以后使用时,您才应该要求对特定客户端进行批准。在某些用例中,不需要用户同意,因为它可能是隐含的,例如,在用户使用内部客户端的企业环境中。