【问题标题】:Ways to skip user consent in OpenID Connect在 OpenID Connect 中跳过用户同意的方法
【发布时间】:2015-04-02 21:14:50
【问题描述】:

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

我对实现这一点的方式有点困惑。 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

感谢您的宝贵时间。问候。

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 明白,但是......我应该将同意存储在新实体上还是使用访问令牌来查看客户端是否获得用户批准?。
      猜你喜欢
      • 2020-07-09
      • 2019-04-14
      • 1970-01-01
      • 1970-01-01
      • 2019-02-19
      • 2019-08-24
      • 2018-04-17
      • 2013-12-02
      • 1970-01-01
      相关资源
      最近更新 更多