欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何理解SCPApplicationRouter-創(chuàng)新互聯(lián)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何理解SCP Application Router,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),九原企業(yè)網(wǎng)站建設(shè),九原品牌網(wǎng)站建設(shè),網(wǎng)站定制,九原網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,九原網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

    如何理解SCP Application Router

    簡單解釋一下主要的參數(shù):

    Routes

    • source:可以是一個URL,也可以是一個正則表達式,定義了當(dāng)前的route是匹配什么樣的請求路徑

    • target: 當(dāng)前請求如何被重寫到目標(biāo)地址

    • destination: 當(dāng)前請求路由到manifest中的哪個目標(biāo)地址

    • authenticationType: 有三種選擇,xsuaa, none和basic,xsuaa和none分別代表了是否對當(dāng)前請求在App Router上做用戶安全認證,下一節(jié)會具體介紹。Basic是和SAP HANA集成的時候提供默認的安全驗證支持。

    Destination

    • Name:用來跟xs-app.json中的destination配置相匹配

    • URL:目標(biāo)應(yīng)用程序真實的Clould Foundry地址

    • ForwardAuthToken: 如果請求中帶有oauth token,是否將oauth token轉(zhuǎn)發(fā)給目標(biāo)應(yīng)用程序. App Router也支持oauth token的部分校驗功能,所以用戶也可以根據(jù)具體情況選擇不轉(zhuǎn)發(fā)oauth token,就在App Router端校驗

    除了基本的路由功能,App Router還提供了豐富的Web應(yīng)用程序相關(guān)的功能支持,比如連接管理,session管理,擴展http頭,跨域,Web Socket等等。

    App Router和SCP UAA的安全集成

    如上一節(jié)提到的,App Router在路由的時候提供了用戶的安全認證支持。將路由的Authentication Type配置為xsuaa,App Router則會檢查前端發(fā)過來的請求是否帶有合法的session。如果沒有,App Router會將用戶導(dǎo)向SCP UAA的用戶認證界面,當(dāng)用戶重新認證成功之后,會生成新的合法session,并將此session返回給前端應(yīng)用程序。

    整個認證的流程是是SCP App Router和SCP UAA協(xié)同完成的,SCP UAA是SAP對Cloud Foundry上提供的安全組件UAA (User Account and Authentication Service)的一個封裝,Cloud Foundry UAA是一個實現(xiàn)了標(biāo)準(zhǔn)Oauth 2.0協(xié)議的authorization server,SAP在此基礎(chǔ)上做了一些自定義的增強,但是在接口上和原生的UAA保持了一致,這樣可以盡可能的對OAuth Client端程序提供兼容性。

    Cloud Foundry UAA官方文檔:

    https://docs.cloudfoundry.org/api/uaa/version/4.10.0/index.html#overview

    SCP標(biāo)準(zhǔn)的OAuth3.0流程:

    如何理解SCP Application Router

    如果熟悉OAuth3.0協(xié)議,從這張流程圖上很快就能看出App Router和UAA之間是通過Authorization Code Grant Flow來交互的,在交互過程中它們分別充當(dāng)了OAuth Client和OAuth Server的角色。

    關(guān)于OAuth3.0,請參見: https://oauth.net/2/

    看到這里您也許會問,為什么不是前端瀏覽器作為OAuth Client?除了安全性的考慮, App Router將OAuth流程對前端隱藏的另一個好處是,各種前端應(yīng)用程序不需要知道UAA上諸如Client ID, Client Secret的細節(jié),提供了更好的安全性。

    其次還有SAP在產(chǎn)品層面的考量,為了其標(biāo)準(zhǔn)的產(chǎn)品在UI技術(shù)上的一致性,包括SCP上的產(chǎn)品在內(nèi)大多數(shù)都是基于SAP UI5來構(gòu)建前端UI,而UI5又是基于HTML5技術(shù)而來,即這些產(chǎn)品都是基于瀏覽器的富客戶端應(yīng)用。如此一來,在標(biāo)準(zhǔn)的App Router里面實現(xiàn)OAuth3.0流程可以使SAP的各種前端應(yīng)用并不需要關(guān)注認證流程的細節(jié)。如上圖所示,App Router在完成了認證流程并最終拿到token之后,并沒有將token返回給瀏覽器端,而是在App Router上生成一個session,并且將session和token關(guān)聯(lián)起來,App Router在這里起到一個中介者的角色,對于前端統(tǒng)一用session進行交互,對于后端統(tǒng)一用token進行交互。

    SCP除了將標(biāo)準(zhǔn)的實現(xiàn)默認支持瀏覽器端應(yīng)用程序外,作為一個開放的平臺,當(dāng)然也支持移動端原生應(yīng)用程序的集成,這里不作贅述,具體細節(jié)可以參考SCP的開發(fā)文檔。

    App Router上的session管理

    App Router上的session管理利用了Node.js的session-express框架,默認將session緩存在instance memory中(下圖第79行):

    如何理解SCP Application Router

    然后采用session stickiness策略來保證在多實例部署的情況下,相同會話的請求會被發(fā)送到同一個實例上以保證會話能繼續(xù)進行。

    Session Stickiness:

    https://stackoverflow.com/questions/10494431/sticky-and-non-sticky-sessions

    這樣做的好處是既利用了instance memory的高性能,也可以在一定程度上保證高可靠性。不過代價是犧牲了動態(tài)伸縮的能力,一旦某個App Router實例上還有正在使用中的session,這個實例就不能被關(guān)閉。

    好在App Router使用的是開源的express-session框架,該框架并非只能將session存儲在instance memory中,在Node.js開源社區(qū)已經(jīng)提供了多種express-session的外部存儲方案。至少在技術(shù)上,可以將App Router提供的instance memory存儲替換為外部存儲,而不需要做太多的定制化開發(fā),這樣一來多個App Router實例就可以共享同一套session存儲。

    App Router的可擴展性

    只要說到SAP的產(chǎn)品,extensibility是一個不可避免的話題,這是由SAP的業(yè)務(wù)是面向企業(yè)級客戶這一特質(zhì)決定的。SAP也一直致力于從平臺到框架,再到上層的產(chǎn)品,盡可能多的給SAP客戶提供良好的可擴展性。App Router同樣也不例外,因為直接使用了Node.js的connect框架,這是一款本身就提供了豐富擴展的中間件框架,可以通過可插拔的方式對Node.js的請求和響應(yīng)提供過濾和攔截,具體大家可以參考connect的主頁。

    App Router基于connect,當(dāng)然App Router的用戶就可以直接獲得connect提供的各種中間件,除此之外App Router還提供了自己的一些中間件:

    如何理解SCP Application Router

    是不是非常簡單和直接?使用這些中間件而不需要修改原生App Router里面的代碼。

    這里不再對App Router上的各種中間件一一贅述。

    總結(jié)說來,App Router是一款設(shè)計簡單,使用方便,提供了良好可擴展性的反向代理組件,為廣大SAP用戶在SCP上開發(fā)應(yīng)用程序提供了更多的選擇和方便。

    上述就是小編為大家分享的如何理解SCP Application Router了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。

當(dāng)前名稱:如何理解SCPApplicationRouter-創(chuàng)新互聯(lián)
鏈接URL:http://chinadenli.net/article22/cepicc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站網(wǎng)站收錄網(wǎng)站改版做網(wǎng)站標(biāo)簽優(yōu)化虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名