【发布时间】:2014-11-25 11:20:28
【问题描述】:
尝试从应用程序连接到 yammer OAuth 时返回403 Client Error: Forbidden 错误。
我的主要目标:在我的自定义应用程序中,我想使用 yammer oauth 来验证 外部网络 的用户(因为我找不到直接的方法来实现这一点,所以我创建了此处记录的解决方法)。
我的情况如下: 我们有一个主网络和一个外部网络(将它们称为“beta 网络”),我创建它们的目的是为了对基于 python 的应用程序进行 beta 测试。作为 yammer 网络管理员,我已经使用 yammer (here) 注册了一个客户端应用程序,我相信在主网络上。使用生成的客户端密钥和密钥,我可以成功连接我的 (python) 应用程序并允许外部网络的用户毫无问题地进行 OAuth。
对于生产,存在第二个网络设置,同样由启用 SSO 的主网络和(非 SSO)外部网络(将这些称为“生产网络”)组成。同样,客户端应用程序已在生产网络上的主网络中注册。但是,当我更新我的 (python) 应用程序以使用生产网络客户端密钥/密钥时,所有与外部用户进行 oauth 的尝试都会导致 403 Client Error: Forbidden。
在测试网络和生产网络上,客户端应用程序都存在阻力:
- 标记为“启用”,
- 被“发布”到 yammer 网络(尽管两者都不是“全球”)。
据我所知,测试版和生产网络之间的唯一区别是生产启用了 SSO。这是否排除了使用 oauth2 authentication process 的可能性?由于 SSO,是否需要其他一些设置?
感谢您的帮助。
【问题讨论】:
-
您找到解决上述问题的方法了吗?我目前也在为此苦苦挣扎。
-
Rupesh - 遗憾的是,我们从来没有找到一种方法可以在启用 SSO 的主网络上完成这项工作。我们最终使用了不涉及 yammer 的完全不同的身份验证方法。但请注意,该概念在未启用 SSO 的网络对上运行良好。