久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      單點(diǎn)登錄是什么意思?

      單點(diǎn)登錄SSO是指在多個(gè)應(yīng)用系統(tǒng)中,用戶只需要登錄一次就可以訪問(wèn)所有相互信任的應(yīng)用系統(tǒng),是企業(yè)業(yè)務(wù)整合的解決方案之一,其優(yōu)點(diǎn):1、提高用戶的效率;2、提高開發(fā)人員的效率;3、簡(jiǎn)化管理。

      單點(diǎn)登錄是什么意思?

      很早期的公司,一家公司可能只有一個(gè)Server,慢慢的Server開始變多了。每個(gè)Server都要進(jìn)行注冊(cè)登錄,退出的時(shí)候又要一個(gè)個(gè)退出。用戶體驗(yàn)很不好!你可以想象一下,上豆瓣 要登錄豆瓣FM、豆瓣讀書、豆瓣電影、豆瓣日記……真的會(huì)讓人崩潰的。我們想要另一種登錄體驗(yàn):一家企業(yè)下的服務(wù)只要一次注冊(cè),登錄的時(shí)候只要一次登錄,退出的時(shí)候只要一次退出。怎么做?

      一次注冊(cè)。 一次注冊(cè)不難,想一下是不是只要Server之間同步用戶信息就行了?可以,但這樣描述不太完整,后續(xù)講用戶注冊(cè)的時(shí)候詳細(xì)說(shuō)。實(shí)際上用戶信息的管理才是SSO真正的難點(diǎn),只是作為初學(xué)者,我們的難點(diǎn)在于實(shí)現(xiàn)SSO的技術(shù)!我們先討論實(shí)現(xiàn)手段。

      一次登錄與一次退出。 回頭看看普通商場(chǎng)的故事,什么東西才是保持登錄狀態(tài)關(guān)鍵的東西?記錄器(session)?那種叫做cookie的紙張?寫在紙張上的ID? 是session里面記錄的信息跟那個(gè)ID,cookie不只是記錄ID的工具而已??蛻舳顺钟蠭D,服務(wù)端持有session,兩者一起用來(lái)保持登錄狀態(tài)??蛻舳诵枰肐D來(lái)作為憑證,而服務(wù)端需要用session來(lái)驗(yàn)證ID的有效性(ID可能過(guò)期、可能根本就是偽造的找不到對(duì)應(yīng)的信息、ID下對(duì)應(yīng)的客戶端還沒(méi)有進(jìn)行登錄驗(yàn)證等)。但是session這東西一開始是每個(gè)server自己獨(dú)有的,豆瓣FM有自己的session、豆瓣讀書有自己的session,而記錄ID的cookie又是不能跨域的。所以,我們要實(shí)現(xiàn)一次登錄一次退出,只需要想辦法讓各個(gè)server的共用一個(gè)session的信息,讓客戶端在各個(gè)域名下都能持有這個(gè)ID就好了。再進(jìn)一步講,只要各個(gè)server拿到同一個(gè)ID,都能有辦法檢驗(yàn)出ID的有效性、并且能得到ID對(duì)應(yīng)的用戶信息就行了,也就是能檢驗(yàn)ID;

      單點(diǎn)登錄實(shí)現(xiàn)方法

      server端

      以server群如何生成、驗(yàn)證ID的方式大致分為兩種:

      “共享Cookie”這個(gè)就是上面提到的共享session的方式,我倒覺(jué)得叫“共享session”來(lái)得好一點(diǎn),本質(zhì)上cookie只是存儲(chǔ)session-id的介質(zhì),session-id也可以放在每一次請(qǐng)求的url里。據(jù)說(shuō)這種方式不安全,我沒(méi)去細(xì)究,哪位大神可以推薦下相關(guān)的資料,我后期補(bǔ)上。其實(shí)也是,畢竟session這項(xiàng)機(jī)制一開始就是一個(gè)server一個(gè)session的,把session拿出來(lái)讓所有server共享確實(shí)有點(diǎn)奇怪。

      SSO-Token方式因?yàn)楣蚕韘ession的方式不安全,所以我們不再以session-id作為身份的標(biāo)識(shí)。我們另外生成一種標(biāo)識(shí),把它取名SSO-Token(或Ticket),這種標(biāo)識(shí)是整個(gè)server群唯一的,并且所有server群都能驗(yàn)證這個(gè)token,同時(shí)能拿到token背后代表的用戶的信息。我們要討論的也是這種方式,一會(huì)上具體流程圖。

      瀏覽器端

      單點(diǎn)登錄還有非常關(guān)鍵的一步,這一步跟server端驗(yàn)證token的方式無(wú)關(guān),用最早的“共享session”的方式還是現(xiàn)在的“token”方式,身份標(biāo)識(shí)到了瀏覽器端都要面臨這樣的一個(gè)問(wèn)題:用戶登錄成功拿到token(或者是session-id)后怎么讓瀏覽器存儲(chǔ)和分享到其它域名下?同域名很簡(jiǎn)單,把token存在cookie里,把cookie的路徑設(shè)置成頂級(jí)域名下,這樣所有子域都能讀取cookie中的token。這就是共享cookie的方式(這才叫共享Cookie嘛,上面那個(gè)應(yīng)該叫共享session)。比如:谷歌公司,google.com是他的頂級(jí)域名,郵箱服務(wù)的mail.google.com和地圖服務(wù)的map.google.com都是它的子域。但是,跨域的時(shí)候怎么辦?谷歌公司還有一個(gè)域名,youtube.com,提供視頻服務(wù) 。

      推薦教程:《PHP》


      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)