Openid OIDC、重定向URL和通配符

Openid OIDC、重定向URL和通配符,openid,openid-connect,Openid,Openid Connect,我相信3.1.2.1。认证请求一节说我们不能,但我觉得这太不可思议了,我想我会在这里再次询问 在我的用户通过OIDC提供商成功登录后,是否有办法将他们重定向到我域名的任何URL 我的用例是: 用户访问我的应用程序并四处漫游 她发现一些有趣的事情要做,并想与他人互动,例如,评论一篇她觉得有趣的帖子 应用程序会邀请她登录,她会被重定向到OIDC提供商 由于我不能预先知道我的用户在第3步将访问的URL,我希望她被重定向到那里,不管那个URL是什么 这可行吗? 我是否正确理解规范中所说的不正确? 如果规

我相信3.1.2.1。认证请求一节说我们不能,但我觉得这太不可思议了,我想我会在这里再次询问

在我的用户通过OIDC提供商成功登录后,是否有办法将他们重定向到我域名的任何URL

我的用例是:

  • 用户访问我的应用程序并四处漫游
  • 她发现一些有趣的事情要做,并想与他人互动,例如,评论一篇她觉得有趣的帖子
  • 应用程序会邀请她登录,她会被重定向到OIDC提供商
  • 由于我不能预先知道我的用户在第3步将访问的URL,我希望她被重定向到那里,不管那个URL是什么

    这可行吗? 我是否正确理解规范中所说的不正确?
    如果规范没有说不,您知道有什么解决方法可以让用户体验到这一点吗

    您可以使用
    状态
    参数来实现这一点,而不会偏离规范

    state
    参数与要在客户端执行的页面/操作相关联

  • 用户访问我的应用程序并四处漫游
  • 她发现一些有趣的事情要做,并想与他人互动,例如,评论一篇她觉得有趣的帖子
  • 应用程序生成一个状态值,并将该值与要执行的交互关联
  • 应用程序邀请她登录,她将被重定向到OIDC提供程序,查询字符串中带有state参数
  • 同意后,用户被重定向到应用程序回调
  • 获取作为查询/片段一部分的状态(取决于响应模式/类型)
  • 根据状态值,将用户重定向到预期的页面/操作

  • 您使用的是商业OIDC提供商,还是您自己的提供商?如果它是您自己的,则重定向到受信任域的通配符URL不会有安全问题。你只是不想重定向到恶意域。我正在使用“我自己的”OIDC提供程序,基于。感谢您的回答。正如这里所描述的,州是为满足您的用例而设计的;拥有固定的重定向URI可以防止授权代码被发送到“随机”URL