Discourse SSO登录能否实现自动登录?


(yoyo) #1

discourse sso登录我已经实现了。
比如如果用户登录了我们的网站或者应用,然后跳转到discourse,可以实现让用户自动登录discourse么?


(yoyo) #2

哈哈,在官方论坛看了一下午 ,已经研究出怎么自动登录了


(雪莱鸟) #3

求分享,给个帖子链接也好,谢谢!


(Leon) #4

同求分享 :pray:t2:


(yoyo) #5

@xuelainiao @Leon_leangoo 你们实现了sso了吗?如果sso没有实现, 参考这个https://meta.discourse.org/t/official-single-sign-on-for-discourse/13045

如果实现了sso且清楚这个流程了

因为discourse的sso是一定要现在discourse的sso(http://mydiscoursesite.com/sso)重定向回来才能拿到sig和sso(https://mysite.com/sso?sso=PAYLOAD&sig=SIG)
网页自动登录思路我是这么做的:
比如是从官网跳转到论坛,那么在用户登录官网的同时,用js打开一个隐藏的iframe,指向discourse的sso登录的链接(http://www.example.com/discourse/sso),他会重定向回自己的sso的页面,然后在自己的sso页面调用实现的discourse sso登录接口,之后再删除这个iframe,那么论坛就已经是登录的状态了。我不知道这样实现是否合理,但是确实能做到登录官网的同时登录论坛。

APP自动登录思路也差不多:
用户点击进入论坛的按钮或者链接,实际上我们是跳到http://www.example.com/discourse/sso或者重定向到这个地址,然后discourse会重定向会自己的sso页面,在这个页面我们可以通过从app端获取授权信息(一般需要app端提过接口)来调用实现的discourse sso登录接口,这样就能实现app端打开论坛就自动登录了。

如果不清楚,周末有空我写个demo分享一下


(雪莱鸟) #6

实际上我没做足功课,还不知道sso具体是什么含义,试图通过各位的讲解获取。
小站地址https://www.citycaller.com/
还在构思板块,或许我会通过采集填充内容。:star_struck:


(雪莱鸟) #7

看明白了,不过还是不知道sso是如何写的


(yoyo) #8

你是用什么语言的,大部分语言github上都有discourse sso的实现,直接拿来用就可以了。


(雪莱鸟) #9

php的 似乎在github上看到过


(Leon) #10

正准备在本地centos上先搭建一个试试,有问题请教各位哈!:grinning:


(雪莱鸟) #11

求推荐一套好用的SSO,最好是php的,好操作