1、点击登录跳转到SSO登录页面并带上当前应用的callback地址
2、登录成功后生成COOKIE并将COOKIE传给callback地址
3、callback地址接收SSO的COOKIE并设置在当前域下再跳回到应用1即完成登录
4、再在应用程序需要登录的地方嵌入一个iframe用来实时检测登录状态
1 <?php 2 //index.php 应用程序页面 3 header('Content-Type:text/html; charset=utf-8'); 4 $sso_address = 'http://www.c.com/sso_login.php'; //你SSO所在的域名 5 $callback_address = 'http://' . $_SERVER['HTTP_HOST'] 6 . str_replace('index.php', '', $_SERVER['SCRIPT_NAME']) 7 . 'callback.php'; //callback地址用于回调设置cookie 8 9 if (isset($_COOKIE['sign'])) { 10 exit("欢迎您{ $_COOKIE['sign']} <a href=\"login.php?logout\">退出</a>"); 11 } else { 12 echo '您还未登录 <a href="' . $sso_address . '?callback=' . $callb

本文介绍了一种简单的SSO单点登录实现方案,包括登录流程、COOKIE传递及登录状态检测等关键技术点。
最低0.47元/天 解锁文章
7861

被折叠的 条评论
为什么被折叠?



