第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

PHP開發(fā)SSO單點(diǎn)登錄系統(tǒng)時(shí)如何實(shí)現(xiàn)Seesion跨域共享

PHP開發(fā)SSO單點(diǎn)登錄系統(tǒng)時(shí)如何實(shí)現(xiàn)Seesion跨域共享

PHP
ddawx123 2017-03-29 12:30:38
本人目前嘗試把個(gè)人網(wǎng)站導(dǎo)航(www.dingstudio.cn)、個(gè)人的博客網(wǎng)站(blog.dingstudio.cn)、相冊(cè)管理系統(tǒng)(album.dingstudio.cn)、心情語錄發(fā)布站(w.dingstudio.cn)以及網(wǎng)頁郵箱系統(tǒng)(mail.dingstudio.cn)都接入自己開發(fā)的SSO單點(diǎn)登錄系統(tǒng)。SSO所在域名:passport.dingstudio.cn,上述域名均部署了https協(xié)議訪問,目前各應(yīng)用均無法檢測(cè)到由passport系統(tǒng)產(chǎn)生的session,passport的登錄認(rèn)證模塊和會(huì)話超時(shí)、會(huì)話續(xù)期系統(tǒng)已全部開發(fā)完畢。目前設(shè)計(jì)需求是SSO應(yīng)用程序通過其他業(yè)務(wù)應(yīng)用重定向時(shí)攜帶參數(shù)url,如login.php?url=http://www.dingstudio.cn/callback.php?處理登錄成功后的跳轉(zhuǎn)。callback.php為各個(gè)應(yīng)用的回調(diào)接口,登錄成功后的信息同步處理均交給callback.php。(URL參數(shù)讀取、處理已經(jīng)開發(fā)完畢并封裝了一個(gè)類)部分passport核心代碼:(這些代碼都是寫在一個(gè)php類里,前端入口通過require_once進(jìn)行調(diào)用)public?static?function?SSOCheckExist($special?=?'0')?{ ????$nowtime?=?date('Ymdhis',time()); ????session_start(); ????if(isset($_SESSION['dingstudio_sso'])?&&?$nowtime?-?$_SESSION['dingstudio_ssotoken']?<=?600)?{ ????????$_SESSION['dingstudio_ssotoken']?=?$nowtime;//系統(tǒng)會(huì)話自動(dòng)續(xù)期 return?"authed";//存在合法會(huì)話且處于時(shí)效期限內(nèi),返回自動(dòng)登陸 ????} ????else?{ return?"noauth";//不存在合法會(huì)話或有效密鑰超時(shí),返回請(qǐng)求登陸 ????} } public?static?function?SSOCheck($username,?$password)?{ ????if(isset($username)?and?isset($password))?{ ????????$sqlconn?=?MySQLInstance::getInstance()->connect();//通過單例方式建立MySQL數(shù)據(jù)庫連接 ????????if($sqlconn->connect_error)?{ ????return?"error-654";//返回?cái)?shù)據(jù)庫服務(wù)器宕機(jī)錯(cuò)誤碼 ????????} ????????else?{ ????$sqlcode?=?"select?*?from?users?where?(username='$username')?and?(password='$password')";//查詢數(shù)據(jù)庫檢測(cè)賬戶密碼是否匹配 ????$result?=?$sqlconn->query($sqlcode);//執(zhí)行上述SQL語句 ????if($result->num_rows?>?0)?{//登陸成功后 ????????$dtoken?=?date('Ymdhis',time());//產(chǎn)生SSO令牌碼(使用時(shí)間) ????????$_SESSION['dingstudio_sso']?=?$username;//同步用戶名到Session ????????$_SESSION['dingstudio_ssotoken']?=?$dtoken;//同步SSO令牌碼到Session ????????$sqlcode?=?"update?users?set?usertoken='{$dtoken}'?where?username='$username'";//更新SSO令牌碼到數(shù)據(jù)庫 ????????$result?=?$sqlconn->query($sqlcode);//執(zhí)行上述SQL語句 ????????return?"authed";//返回認(rèn)證成功 ????} ????else?{ ????????return?"noauth";//返回認(rèn)證失敗 ????} ????MySQLInstance::getInstance()->disconnect();//關(guān)閉數(shù)據(jù)庫連接 ????????} ????} }
查看完整描述

1 回答

  • 1 回答
  • 3 關(guān)注
  • 3862 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)