Oauth 2.0 Freshdesk OAuth SSO:Freshdesk登录页面不';t Ping我的身份验证页?
我正在尝试使用OAuth 2.0连接到Freshdesk,以便从我的应用程序进行单点登录。我的应用程序正在充当自己的OAuth身份提供商。我已经在Freshdesk上设置了我的授权url——我们称之为Oauth 2.0 Freshdesk OAuth SSO:Freshdesk登录页面不';t Ping我的身份验证页?,oauth-2.0,authorization,single-sign-on,freshdesk,Oauth 2.0,Authorization,Single Sign On,Freshdesk,我正在尝试使用OAuth 2.0连接到Freshdesk,以便从我的应用程序进行单点登录。我的应用程序正在充当自己的OAuth身份提供商。我已经在Freshdesk上设置了我的授权url——我们称之为https://www.myWebApp.com/auth: 因此,现在出于测试目的,我转到Freshdesk支持为用户提供的URL,以启动单一登录过程: …我看到了一个漂亮的sso风格的登录屏幕: 我为我的一个站点用户输入正确的电子邮件和密码,然后单击“登录” 现在在Chrome网络选项卡中
https://www.myWebApp.com/auth
:
因此,现在出于测试目的,我转到Freshdesk支持为用户提供的URL,以启动单一登录过程:
…我看到了一个漂亮的sso风格的登录屏幕:
我为我的一个站点用户输入正确的电子邮件和密码,然后单击“登录”
现在在Chrome网络选项卡中,我希望看到Freshdesk尝试ping我的授权URL。但我没有。我看到:
加载时,我的身份验证页(https://myWebApp.com/auth
)ping我的服务器,它会发出一条console.log()
消息,而我的服务器日志没有显示这样的控制台日志消息——因此Freshdesk似乎根本没有ping我的身份验证页面
是什么让Freshdesk无法按应有的方式ping我的授权页面?这里可能有相当一部分您已经准备好了,但我只是为了完整性而添加它 登录到后端和联系人的安全页面
https://stackoverflow.myfreshworks.com/security/contacts
[stackoverflow == your site :) ]
如果还没有自定义策略,则必须创建自定义策略(这与代理的策略不同)
为此,请使用Oauth 2.0配置SSO
然后,如果您至少配置了一个SSO,那么您的登录(at)应该如下所示:
其中(1)现在出现。这将是通过为SSO设置的URL ping服务器的链接:
如果您只为联系人设置了一个SSO,则链接(1)应直接完成登录过程,然后您应作为特定联系人登录Freshdesk
如果设置了两个SSO选项;例如:
…当您单击页面上的链接(1)时,应将您重定向到具有以下两个选项的页面:
该页面的url类似于(参数将因您而异):
我想你可以用它直接链接到你的主站点上的门户网站
如果只设置了一个SSO选项,则应能够直接导航到上述链接,然后查看:
这可能就是你的目标
我更改了该按钮的名称(使用联系人SSO登录),以确保我使用的是正确的按钮,并与代理的登录区别开来。配置SSO时,可以更改“高级选项”下的文本:
希望这对您有所帮助-如果您对此有任何其他问题,请将其作为评论发布。在登录屏幕上,您是否看到另一个通过SSO登录的按钮?我没有。我帖子中的图片显示了整个登录对话框。我真的很难让SSO在我这边工作-你有没有整理过你的SSO?我已经把它放到我这边了,所以如果你还在处理这个问题,请告诉我,我会尝试帮助你。嘿@MhluziBhaka,我仍然在努力让它运行,非常感谢你的帮助!我迫不及待地想解决这个问题!我会让你知道事情的进展。这很有帮助!这里有个问题。当用户单击图示中的链接(1)时,Freshdesk将ping我的服务器上的auth端点。在这一点上,我的服务器如何判断哪个用户正在尝试登录Freshdesk?我是否应该在我的用户在我的网站上单击的链接中对用户id进行编码,从而将他或她带到链接(1)所在的Freshdesk页面?我发现,当我的应用程序将我的用户发送到Freshdesk登录页面时,我的应用程序包含一个
状态
变量。当使用cicks链接(1)时,相同的状态
数据返回到我的服务器。我是否需要将用户id存储在状态
数据中(可能是加密的),以便当用户单击链接(1)时,我的服务器可以看到它是什么用户?好的,我一直在研究,我发现状态
是一个随机字符串。当它从FreshDesk返回时,客户端或服务器可以检查它是否合法。如果我想让服务器做这件事,我首先需要修改数据库以存储状态
值并命名相关用户。是的,这有点像踢踏舞。您将以登录用户的身份从您的站点向Freshdesk发送初始请求,因此您将仅在访问令牌(批准后)中向Freshdesk发送用户id。Freshdesk然后向您的userinfo URL请求用户详细信息。
https://stackoverflow.myfreshworks.com/login
?redirect_uri=https://stackoverflow.freshdesk.com/freshid/customer_authorize_callback
&client_id=14416083630394368&slug=6117145232763