特權(quán)靜態(tài)被托管的web應(yīng)用
【專利摘要】一種方法可以包括在受信服務(wù)器(200)處接收靜態(tài)web應(yīng)用(S305),確認(rèn)靜態(tài)web應(yīng)用的保證特性(S310),并且一旦成功確認(rèn)靜態(tài)web應(yīng)用,提供經(jīng)由受信服務(wù)器位置處的識(shí)別靜態(tài)web應(yīng)用的URL的對(duì)靜態(tài)web應(yīng)用的訪問(wèn)(S320)。當(dāng)在客戶端設(shè)備(110)上運(yùn)行的瀏覽器(216)上執(zhí)行時(shí),可以對(duì)靜態(tài)web應(yīng)用授予用以在由瀏覽器(216)執(zhí)行靜態(tài)web應(yīng)用期間利用客戶端設(shè)備(110)的至少一個(gè)許可。一旦接收到對(duì)靜態(tài)web應(yīng)用的對(duì)象的改變,可以在使得對(duì)對(duì)象的改變經(jīng)由URL可訪問(wèn)之前作為整體執(zhí)行對(duì)靜態(tài)web應(yīng)用的保證特性的確認(rèn)。
【專利說(shuō)明】
特權(quán)靜態(tài)被托管的web應(yīng)用
[0001] 相關(guān)申請(qǐng)的交叉引用
[0002] 本申請(qǐng)要求2014年 10月24 日提交的題為 "PRIVILEGED STATIC HOSTED WEB APPLICATIONS"的美國(guó)非暫時(shí)專利申請(qǐng)?zhí)?4/522,897的優(yōu)先權(quán)且是其繼續(xù)申請(qǐng),該非暫時(shí) 專利申請(qǐng)進(jìn)而要求2013年12月19日提交的題為"PRIVILEGED STATIC HOSTED WEB APPLICATIONS"的美國(guó)暫時(shí)專利申請(qǐng)?zhí)?1/918,145的優(yōu)先權(quán),上述兩者的全部?jī)?nèi)容通過(guò)引 用合并至此。
技術(shù)領(lǐng)域
[0003] 實(shí)施例設(shè)及托管web應(yīng)用。
【背景技術(shù)】
[0004] -般地,應(yīng)用被網(wǎng)絡(luò)或遠(yuǎn)程服務(wù)器托管或者被安裝在客戶端計(jì)算設(shè)備上。被托管 的應(yīng)用具有靈活的優(yōu)點(diǎn),因?yàn)閷?duì)應(yīng)用的改變可W影響應(yīng)用的所有用戶。然而,由于互聯(lián)網(wǎng)的 性質(zhì)而通常不認(rèn)為被托管的應(yīng)用是安全的。所安裝的應(yīng)用具有安全的優(yōu)點(diǎn),因?yàn)槠渫ǔ*?dú) 立于互聯(lián)網(wǎng)(例如,從其斷開(kāi)連接)。然而,所安裝的應(yīng)用是不靈活的,因?yàn)閷?duì)應(yīng)用的改變通 常要求應(yīng)用的新的安裝。
【發(fā)明內(nèi)容】
[0005] 因此,在W下描述中,示例實(shí)施例公開(kāi)了用于基于密碼散列化ashes)的改變來(lái)檢 測(cè)設(shè)置改變的機(jī)制。進(jìn)一步地,所公開(kāi)的是用于將設(shè)置變回成默認(rèn)值并確定與惡意設(shè)置改 變相關(guān)聯(lián)的置信度水平的機(jī)制。
[0006] 在一般方面,一種方法可W包括在受信服務(wù)器處接收靜態(tài)web應(yīng)用,確認(rèn)靜態(tài)web 應(yīng)用的保證特性,并且一旦成功確認(rèn)靜態(tài)web應(yīng)用,提供經(jīng)由統(tǒng)一資源定位符化化)的對(duì)靜 態(tài)web應(yīng)用的訪問(wèn),所述統(tǒng)一資源定位符(URL)識(shí)別在公共互聯(lián)網(wǎng)內(nèi)的受信服務(wù)器位置處的 靜態(tài)web應(yīng)用,并且可W被用來(lái)從在客戶端設(shè)備上運(yùn)行的瀏覽器導(dǎo)航到靜態(tài)web應(yīng)用。所述 靜態(tài)web應(yīng)用當(dāng)在客戶端設(shè)備上運(yùn)行的瀏覽器上被執(zhí)行時(shí)可W被授予用W在由所述瀏覽器 對(duì)所述靜態(tài)web應(yīng)用的執(zhí)行期間利用客戶端設(shè)備的本地資源的至少一個(gè)許可。一旦接收到 對(duì)靜態(tài)web應(yīng)用的對(duì)象的改變,可W在使得對(duì)對(duì)象的改變經(jīng)由U化可訪問(wèn)之前作為整體執(zhí)行 對(duì)所述靜態(tài)web應(yīng)用的所述保證特性的所述確認(rèn)。
[0007] 實(shí)施方式可W包括W下特征中的一個(gè)或多個(gè)。例如,所述靜態(tài)web應(yīng)用可基于在先 驗(yàn)證和審查(vetting)過(guò)程而被授予所述至少一個(gè)許可,所述在先驗(yàn)證和審查過(guò)程基于所 述web應(yīng)用設(shè)法聲明(declare)的至少一個(gè)許可。可W基于在先惡意排名和闊值而對(duì)所述靜 態(tài)web應(yīng)用授予所述至少一個(gè)許可。所述靜態(tài)web應(yīng)用可W包含在客戶端計(jì)算設(shè)備上執(zhí)行應(yīng) 用所需的所有資源,并且其中,由所述客戶端計(jì)算設(shè)備執(zhí)行應(yīng)用所需的代碼并不是動(dòng)態(tài)地 生成的。所述方法可W進(jìn)一步包括在受信服務(wù)器上托管所述靜態(tài)web應(yīng)用。所述托管可W包 括向web爬取器提供對(duì)所述靜態(tài)web應(yīng)用W及與所述靜態(tài)web應(yīng)用相關(guān)聯(lián)的代碼的訪問(wèn)。
[000引例如,對(duì)所述靜態(tài)web應(yīng)用的保證特性的確認(rèn)可W包括驗(yàn)證所述靜態(tài)web應(yīng)用的對(duì) 象不包括被識(shí)別為W下至少一個(gè)的對(duì)象:惡意軟件、病毒W(wǎng)及特洛伊木馬。所述靜態(tài)web應(yīng) 用的保證特性的確認(rèn)可W包括驗(yàn)證所述靜態(tài)web應(yīng)用的開(kāi)發(fā)者的可信度排名。所述靜態(tài)web 應(yīng)用的更新可W包括用經(jīng)重新確認(rèn)的整個(gè)應(yīng)用替換靜態(tài)web應(yīng)用的對(duì)象。在由所述瀏覽器 對(duì)所述靜態(tài)web應(yīng)用執(zhí)行期間請(qǐng)求利用客戶端設(shè)備的本地資源的至少一個(gè)許可之前,在沒(méi) 有利用客戶端設(shè)備的本地資源的許可的情況下,所述靜態(tài)web應(yīng)用可W在所述客戶端設(shè)備 上執(zhí)行。
[0009] 在另一一般方面,一種服務(wù)器包括存儲(chǔ)器,所述存儲(chǔ)器被配置成存儲(chǔ)靜態(tài)web應(yīng) 用;驗(yàn)證模塊,所述驗(yàn)證模塊被配置成確認(rèn)靜態(tài)web應(yīng)用的保證特性;W及應(yīng)用服務(wù)器,一旦 成功確認(rèn)靜態(tài)web應(yīng)用,所述應(yīng)用服務(wù)器被配置成提供經(jīng)由統(tǒng)一資源定位符化化)的對(duì)靜態(tài) web應(yīng)用的訪問(wèn),所述統(tǒng)一資源定位符化RL)識(shí)別公共互聯(lián)網(wǎng)內(nèi)的受信服務(wù)器位置處的靜態(tài) web應(yīng)用,并且可W被用來(lái)從在客戶端設(shè)備上運(yùn)行的瀏覽器導(dǎo)航到靜態(tài)web應(yīng)用。所述靜態(tài) web應(yīng)用當(dāng)在所述客戶端設(shè)備上運(yùn)行的瀏覽器上被執(zhí)行時(shí),被授予用W在由瀏覽器對(duì)所述 靜態(tài)web應(yīng)用執(zhí)行期間利用客戶端設(shè)備的本地資源的至少一個(gè)許可。一旦接收到對(duì)靜態(tài)web 應(yīng)用的對(duì)象的改變,所述驗(yàn)證模塊被進(jìn)一步配置成在使得對(duì)對(duì)象的改變經(jīng)由U化可訪問(wèn)之 前作為整體重復(fù)對(duì)所述靜態(tài)web應(yīng)用的所述保證特性的所述確認(rèn)。
[0010] 實(shí)施方式可W包括W下特征中的一個(gè)或多個(gè)。例如,所述靜態(tài)web應(yīng)用可基于在先 驗(yàn)證和的審查過(guò)程而被授予所述至少一個(gè)許可,所述在先驗(yàn)證和的審查過(guò)程基于所述web 應(yīng)用設(shè)法聲明的至少一個(gè)許可??蒞基于在先惡意排名和闊值而對(duì)所述靜態(tài)web應(yīng)用授予 所述至少一個(gè)許可。所述靜態(tài)web應(yīng)用可W包含在客戶端計(jì)算設(shè)備上執(zhí)行應(yīng)用所需的所有 資源,并且其中,由客戶端計(jì)算設(shè)備執(zhí)行應(yīng)用所需的代碼并不是動(dòng)態(tài)地生成的。可W在服務(wù) 器上托管靜態(tài)web應(yīng)用。所述托管可W包括向web爬取器提供對(duì)靜態(tài)web應(yīng)用W及與靜態(tài)web 應(yīng)用相關(guān)聯(lián)的代碼的訪問(wèn)。
[0011] 例如,所述靜態(tài)web應(yīng)用的保證特性的確認(rèn)可W包括驗(yàn)證靜態(tài)web應(yīng)用的對(duì)象不包 括被識(shí)別為W下至少一個(gè)的對(duì)象:惡意軟件、病毒W(wǎng)及特洛伊木馬。所述靜態(tài)web應(yīng)用的保 證特性的確認(rèn)可W包括驗(yàn)證所述靜態(tài)web應(yīng)用的開(kāi)發(fā)者的可信度排名。所述靜態(tài)web應(yīng)用的 更新可W包括用經(jīng)重新確認(rèn)的整個(gè)應(yīng)用替換所述靜態(tài)web應(yīng)用的對(duì)象。由所述瀏覽器在對(duì) 所述靜態(tài)web應(yīng)用執(zhí)行期間請(qǐng)求利用客戶端設(shè)備的本地資源的至少一個(gè)許可之前,在沒(méi)有 利用客戶端設(shè)備的本地資源的許可的情況下,所述靜態(tài)web應(yīng)用可W在客戶端設(shè)備上執(zhí)行。
[0012] 在另一一般方面,一種具有存儲(chǔ)在其上面的計(jì)算機(jī)可執(zhí)行程序代碼的非暫時(shí)性計(jì) 算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可執(zhí)行程序代碼當(dāng)在計(jì)算機(jī)系統(tǒng)上被執(zhí)行時(shí)致使計(jì)算機(jī)系 統(tǒng)執(zhí)行步驟。所述步驟包括在受信服務(wù)器處接收靜態(tài)web應(yīng)用,確認(rèn)所述靜態(tài)web應(yīng)用的保 證特性,并且一旦成功確認(rèn)所述靜態(tài)web應(yīng)用,提供經(jīng)由統(tǒng)一資源定位符化化)的對(duì)靜態(tài)web 應(yīng)用的訪問(wèn),所述統(tǒng)一資源定位符(URL)識(shí)別在公共互聯(lián)網(wǎng)內(nèi)的受信服務(wù)器位置處的靜態(tài) web應(yīng)用,并且可W被用來(lái)從在客戶端設(shè)備上運(yùn)行的瀏覽器導(dǎo)航到靜態(tài)web應(yīng)用。所述靜態(tài) web應(yīng)用當(dāng)在所述客戶端設(shè)備上運(yùn)行的瀏覽器上被執(zhí)行時(shí)可W被授予用W在由瀏覽器對(duì)所 述靜態(tài)web應(yīng)用的執(zhí)行期間利用所述客戶端設(shè)備的本地資源的至少一個(gè)許可。一旦接收到 對(duì)所述靜態(tài)web應(yīng)用的對(duì)象的改變,可W在使得對(duì)所述對(duì)象的改變經(jīng)由U化可訪問(wèn)之前作為 整體執(zhí)行對(duì)所述靜態(tài)web應(yīng)用的所述保證特性的所述確認(rèn)。
[0013] 實(shí)施方式可W包括W下特征中的一個(gè)或多個(gè)。例如,所述靜態(tài)web應(yīng)用可基于在先 驗(yàn)證和審查過(guò)程而被授予所述至少一個(gè)許可,所述在先驗(yàn)證和審查過(guò)程基于所述web應(yīng)用 設(shè)法聲明的至少一個(gè)許可??蒞基于在先惡意排名和闊值而對(duì)靜態(tài)web應(yīng)用授予所述至少 一個(gè)許可。所述靜態(tài)web應(yīng)用可W包含在客戶端計(jì)算設(shè)備上執(zhí)行應(yīng)用所需的資源中的所有, 并且其中,由客戶端計(jì)算設(shè)備執(zhí)行應(yīng)用所需的代碼并不是動(dòng)態(tài)地生成的。所述步驟可W進(jìn) 一步包括在受信服務(wù)器上托管靜態(tài)web應(yīng)用。托管可W包括向web爬取器提供對(duì)靜態(tài)web應(yīng) 用W及與所述靜態(tài)web應(yīng)用相關(guān)聯(lián)的代碼的訪問(wèn)。
[0014] 例如,對(duì)靜態(tài)web應(yīng)用的保證特性的確認(rèn)可W包括驗(yàn)證所述靜態(tài)web應(yīng)用的對(duì)象不 包括被識(shí)別為W下至少一個(gè)的對(duì)象:惡意軟件、病毒W(wǎng)及特洛伊木馬。所述靜態(tài)web應(yīng)用的 保證特性的確認(rèn)可W包括驗(yàn)證所述靜態(tài)web應(yīng)用的開(kāi)發(fā)者的可信度排名。靜態(tài)web應(yīng)用的更 新可W包括用經(jīng)重新確認(rèn)的整個(gè)應(yīng)用替換靜態(tài)web應(yīng)用的對(duì)象。在由所述瀏覽器對(duì)所述靜 態(tài)web應(yīng)用執(zhí)行期間請(qǐng)求利用客戶端設(shè)備的本地資源的至少一個(gè)許可之前,在沒(méi)有利用客 戶端設(shè)備的本地資源的許可的情況下,靜態(tài)web應(yīng)用可W在所述客戶端設(shè)備上執(zhí)行。
[0015] 運(yùn)里所述的系統(tǒng)和方法包括展示出被托管和所安裝應(yīng)用的一個(gè)或多個(gè)優(yōu)點(diǎn)的應(yīng) 用環(huán)境。
【附圖說(shuō)明】
[0016] 圖1和圖2是根據(jù)至少一個(gè)示例實(shí)施例的系統(tǒng)的示意性框圖。
[0017] 圖3和圖4是根據(jù)至少一個(gè)示例實(shí)施例的分發(fā)特權(quán)靜態(tài)被托管的web應(yīng)用的方法的 流程圖。
[0018] 圖5和圖6是根據(jù)至少一個(gè)示例實(shí)施例的驗(yàn)證web應(yīng)用的方法的流程圖。
[0019] 圖7是可W用來(lái)實(shí)現(xiàn)運(yùn)里所述的技術(shù)的計(jì)算機(jī)設(shè)備和移動(dòng)計(jì)算機(jī)設(shè)備的示意性框 圖。
【具體實(shí)施方式】
[0020] 雖然示例實(shí)施例可包括各種修改和替選形式,但其實(shí)施例是在圖中W示例的方式 示出的,并且在本文中將進(jìn)行詳細(xì)的描述。然而,應(yīng)理解的是并不旨在使示例實(shí)施例限于所 公開(kāi)的特定形式,而相反地,示例實(shí)施例將涵蓋落在權(quán)利要求范圍內(nèi)的所有修改、等價(jià)形式 W及替選。此外,附圖旨在圖示出在某些示例實(shí)施例中所利用的方法和/或結(jié)構(gòu)的一般特性 并補(bǔ)充下面所提供的所寫描述。然而,運(yùn)些圖并未按比例,并且可能未精確地反映任何給定 實(shí)施例的精確結(jié)構(gòu)或保證特性,并且不應(yīng)解釋為定義或限制示例實(shí)施例涵蓋的值或性質(zhì)的 范圍。例如,可為了明了起見(jiàn)而將結(jié)構(gòu)元件減小或放大。各種圖中的相似或相同參考標(biāo)號(hào)的 使用旨在指示相似或相同元件或特征的存在。
[0021] 由客戶端設(shè)備執(zhí)行的web瀏覽器可W從遠(yuǎn)程服務(wù)器(例如,托管了網(wǎng)站的遠(yuǎn)程服務(wù) 器)接收代碼(例如,HTML代碼),并且可W代表客戶端設(shè)備的用戶在客戶端設(shè)備上執(zhí)行所接 收的代碼。
[0022] 在各種實(shí)施方式中,web瀏覽器可包括或已安裝一個(gè)或多個(gè)web應(yīng)用。在運(yùn)種場(chǎng)境 下,"web應(yīng)用"可被配置成為用戶執(zhí)行單個(gè)任務(wù)或多個(gè)任務(wù)。在運(yùn)樣的實(shí)施方式中,web應(yīng)用 可被配置成由web瀏覽器執(zhí)行或解釋。因此,web應(yīng)用可W在具有專用用戶界面的web瀏覽器 內(nèi)運(yùn)行,并且可提供與獨(dú)立網(wǎng)站相比更加豐富且交互式的但與臺(tái)式計(jì)算機(jī)應(yīng)用相比不那么 麻煩且是單片集成的功能性和體驗(yàn)。web應(yīng)用的示例包括在瀏覽器內(nèi)部運(yùn)行的游戲、照片編 輯器W及視頻播放器。
[0023] web應(yīng)用可W包括"被托管的web應(yīng)用"或"被打包的web應(yīng)用"。被托管的web應(yīng)用可 W請(qǐng)求且被授予用W使用客戶端計(jì)算設(shè)備的本地資源的附加許可,超過(guò)瀏覽器所執(zhí)行的典 型代碼被允許使用的東西(例如,諸如,使用比暫時(shí)存儲(chǔ)空間的正常限額更多、在沒(méi)有附加 確認(rèn)提示超過(guò)單個(gè)安裝時(shí)間的情況下使用地理位置特征的能力,W及始終具有打開(kāi)的隱藏 頁(yè)面的能力,所述隱藏頁(yè)面執(zhí)行諸如使數(shù)據(jù)同步W供離線使用或接收服務(wù)器推送通知W向 用戶顯示的任務(wù))。被托管的web應(yīng)用還在用戶界面中受到特殊處理,因?yàn)榭捎么髨D標(biāo)來(lái)示 出被托管的web應(yīng)用,所述大圖標(biāo)可W被點(diǎn)擊W在標(biāo)簽頁(yè)(tab)中或在獨(dú)立(可能全屏)窗口 中啟動(dòng)應(yīng)用。
[0024] 可W將被打包的應(yīng)用視為web應(yīng)用,其代碼被捆綁,使得用戶可W下載web應(yīng)用的 所有內(nèi)容用于由瀏覽器或者在獨(dú)立窗口中執(zhí)行。被打包的web應(yīng)用可能不需要具有網(wǎng)絡(luò)訪 問(wèn)來(lái)為用戶執(zhí)行其功能性,并且相反地可在沒(méi)有對(duì)網(wǎng)絡(luò)的訪問(wèn)的情況下在計(jì)算設(shè)備上本地 地由瀏覽器成功執(zhí)行。
[0025] 被打包的web應(yīng)用具有使用擴(kuò)展應(yīng)用編程接口(API)的選項(xiàng),允許被打包的應(yīng)用改 變?yōu)g覽器表現(xiàn)或看起來(lái)的方式。在某些情況下,被打包的web應(yīng)用可在似乎沒(méi)有在瀏覽器中 運(yùn)行的情況下操作,例如,沒(méi)有瀏覽器"chrome"、標(biāo)簽頁(yè)或?yàn)g覽器的其它用戶界面。在運(yùn)樣 的情況下,被打包的web應(yīng)用將在沒(méi)有對(duì)內(nèi)容腳本或與瀏覽器狀態(tài)有關(guān)的API(諸如cookie、 歷史、書簽、打開(kāi)標(biāo)簽頁(yè)等)的訪問(wèn)的情況下在獨(dú)立窗口中操作。在各種情況下,作為示例, 被打包的web應(yīng)用可訪問(wèn)USB驅(qū)動(dòng)、BLUETOOTH設(shè)備、開(kāi)放原始網(wǎng)絡(luò)套接字、充當(dāng)服務(wù)器或者 訪問(wèn)本地文件系統(tǒng)。
[0026] 在各種示例中,web瀏覽器可包括或被配置成與一個(gè)或多個(gè)瀏覽器擴(kuò)展進(jìn)行交互。 在運(yùn)種場(chǎng)境下,"瀏覽器擴(kuò)展"可包括一個(gè)或多個(gè)網(wǎng)頁(yè),其被打包或被聚組在一起作為可定 義整體,并被配置成將功能性擴(kuò)展到web瀏覽器。如本文所描述的,"瀏覽器擴(kuò)展"是可W修 改和增強(qiáng)web瀏覽器的功能性的小軟件程序。其可使用諸如HTML JAVASCRIPT^及CSS的web 技術(shù)來(lái)編寫。擴(kuò)展可能幾乎沒(méi)有用戶界面。在某些實(shí)施方式中,擴(kuò)展可提供可修改瀏覽器的 "chrome"的小用戶界面圖標(biāo)或其它用戶界面,其在本文中被定義成包括在顯示于瀏覽器中 的網(wǎng)頁(yè)外面的區(qū)域(諸如web瀏覽器窗口的邊界,其包括窗框、菜單、工具欄和滾動(dòng)條)。選擇 圖標(biāo)或其他用戶界面可激活瀏覽器內(nèi)擴(kuò)展的功能性。
[0027] 因此,瀏覽器擴(kuò)展還向?yàn)g覽器提供額外功能性,但是一般地,不同于web應(yīng)用,幾乎 不存在到由擴(kuò)展所提供的功能性的用戶界面組件。替代地,瀏覽器擴(kuò)展將瀏覽器和正在其 中查看的網(wǎng)站的功能性擴(kuò)展。例如,瀏覽器擴(kuò)展可W通過(guò)向地址欄添加新的按鈕(諸如始終 存在的貨幣轉(zhuǎn)換器)來(lái)擴(kuò)展瀏覽器的功能性。例如,像運(yùn)樣的按鈕還可W應(yīng)用于正在被查看 的當(dāng)前網(wǎng)站,點(diǎn)擊貨幣轉(zhuǎn)換器按鈕可W將呈現(xiàn)給用戶的網(wǎng)站上的所有價(jià)格轉(zhuǎn)換成用戶所選 擇的貨幣。在另一示例中,可W安裝擴(kuò)展,使得當(dāng)用戶將光標(biāo)在由瀏覽器執(zhí)行的網(wǎng)頁(yè)上的縮 略圖像上懸停時(shí),顯示圖像的大尺寸版本直至用戶將光標(biāo)從圖像移開(kāi)為止。在另一示例中, 可安裝擴(kuò)展W在每個(gè)頁(yè)面中緊挨著每個(gè)鏈接嵌入"用郵件發(fā)送"按鈕。
[0028] 例如,擴(kuò)展可修改網(wǎng)站,W阻擋廣告、增加頁(yè)面上的縮放水平或讀取文本串并將那 些傳遞至用于盲人用戶的文本至話音引擎。開(kāi)發(fā)者可能想要來(lái)自擴(kuò)展的植入代碼通信至擴(kuò) 展的其余部分。例如,擴(kuò)展可將所有圖像從新聞網(wǎng)站去除。擴(kuò)展可使用內(nèi)容腳本建立返回到 在瀏覽器中在其自己的進(jìn)程中運(yùn)行的擴(kuò)展的其余部分的通信信道。由于內(nèi)容腳本在網(wǎng)頁(yè)而 不是擴(kuò)展的場(chǎng)境中運(yùn)行,其常常需要與擴(kuò)展的其余部分通信的某種方式。例如,RSS閱讀器 擴(kuò)展可W使用內(nèi)容腳本來(lái)檢測(cè)頁(yè)面上的RSS饋送的存在,然后通知背景頁(yè)面W便顯示用于 該頁(yè)面的頁(yè)面動(dòng)作圖標(biāo)。擴(kuò)展與其內(nèi)容腳本之間的通信通過(guò)使用消息傳遞來(lái)工作。任一側(cè) 都可W偵聽(tīng)從另一端發(fā)送的消息,并且在相同信道上進(jìn)行響應(yīng)。消息可W包含任何有效對(duì) 象(例如,諸如空值、布爾、數(shù)字、串、陣列或?qū)ο蟮腏SON對(duì)象)。
[0029] 與瀏覽器擴(kuò)展相比,被打包的web應(yīng)用可看起來(lái)且感覺(jué)起來(lái)像是本地應(yīng)用,具有大 屏幕設(shè)計(jì)和豐富的用戶界面。擴(kuò)展和被打包的web應(yīng)用兩者可將其全部文件捆綁成用戶下 載并安裝的單個(gè)文件(例如,.CRX文件)。此捆綁意味著不同于被托管的應(yīng)用,擴(kuò)展和被打包 的web應(yīng)用不需要取決于來(lái)自web的內(nèi)容。作為示例,可經(jīng)由受信web存儲(chǔ)或者經(jīng)由單獨(dú)網(wǎng)站 來(lái)分發(fā)瀏覽器擴(kuò)展和web應(yīng)用。
[0030] 在某些實(shí)施方式中,API (和/或WebAPI))可W是如上文所討論的web瀏覽器的元 素。然而,在某些實(shí)施方式中,API (和/或webAPI))可W是基于web的操作系統(tǒng)(Browser-OS (瀏覽器OS))中的元素。Browser-OS可W是web瀏覽器的可啟動(dòng)版本(包括瀏覽器、媒體播放 器和文件系統(tǒng))?;痮wser-OS可將用戶應(yīng)用和數(shù)據(jù)中的所有存儲(chǔ)在web上,與本地硬盤驅(qū)動(dòng) 相反。Browser-OS (例如,Oirome-OS貨)可替換傳統(tǒng)操作系統(tǒng)。
[0031] web瀏覽器和/或化owser-OS可包括關(guān)聯(lián)運(yùn)行時(shí)間。運(yùn)行時(shí)間(也稱為運(yùn)行時(shí)系統(tǒng) 或運(yùn)行時(shí)環(huán)境)可W實(shí)現(xiàn)計(jì)算機(jī)語(yǔ)言(例如,HTML和/或JAVASCRIPT)或程序(例如,web瀏覽 器)的某種行為(例如,低級(jí)(例如,核屯、)和/或高級(jí)(例如,類型檢查、垃圾收集和/或調(diào) 試))。任何計(jì)算機(jī)語(yǔ)言可W實(shí)現(xiàn)某種形式的運(yùn)行時(shí)間,無(wú)論語(yǔ)言是編譯語(yǔ)言、解釋型語(yǔ)言、 嵌入式域特定語(yǔ)言,還是經(jīng)由API被調(diào)用。在某些實(shí)施方式中,所述運(yùn)行時(shí)間可W檢索背景 頁(yè)面,返回關(guān)于清單的細(xì)節(jié),并且偵聽(tīng)并響應(yīng)于應(yīng)用或擴(kuò)展生命周期中的事件。運(yùn)行時(shí)間可 W將抓L的相對(duì)路徑轉(zhuǎn)換成全路徑(fully-qualified)URL。在某些實(shí)施方式中,運(yùn)行時(shí)間可 W管理應(yīng)用生命周期。應(yīng)用運(yùn)行時(shí)間管理應(yīng)用安裝、控制事件頁(yè)面、并且可W在任何時(shí)間關(guān) 掉應(yīng)用。
[0032] 用被打包的web應(yīng)用,用戶可對(duì)下載和安裝應(yīng)用并對(duì)被打包的web應(yīng)用給定對(duì)計(jì)算 設(shè)備的高水平訪問(wèn)滿意,因?yàn)楸淮虬膚eb應(yīng)用在被打包的web應(yīng)用在數(shù)字市場(chǎng)中被列出之 前已經(jīng)歷了驗(yàn)證和確認(rèn)過(guò)程。因此,用戶相信所下載的代碼將不會(huì)是惡意的,即使代碼已被 給定對(duì)計(jì)算設(shè)備的高水平訪問(wèn)。
[0033] 相反地,被托管的web應(yīng)用本質(zhì)上僅僅是到網(wǎng)站的U化加上定義某些許可的某些元 數(shù)據(jù),即使應(yīng)用已在數(shù)字市場(chǎng)中被批準(zhǔn)。由于URL所指向的網(wǎng)站處的代碼可W改變,用戶也 應(yīng)不愿意對(duì)被托管的web應(yīng)用授予對(duì)計(jì)算設(shè)備的高水平訪問(wèn),因?yàn)榧词乖摯a先前已被批 準(zhǔn),其仍可變成惡意的。
[0034] 被打包的web應(yīng)用和被托管的web應(yīng)用在運(yùn)行應(yīng)用時(shí)設(shè)想用W允許本地資源的增 加使用的用戶許可。然而,用戶愿意允許被打包的web應(yīng)用使用更危險(xiǎn)的許可(例如,對(duì)計(jì)算 設(shè)備的高水平訪問(wèn)),因?yàn)楸淮虬膚eb應(yīng)用的代碼被確認(rèn)且是靜態(tài)的。換言之,被打包的 web應(yīng)用的代碼在代碼被下載并安裝在用戶機(jī)器上之后將不會(huì)改變。
[0035] 示例實(shí)施例提供了創(chuàng)建"混合式"被托管的web應(yīng)用的系統(tǒng)和方法。該"混合式"被 托管的web應(yīng)用是特權(quán)靜態(tài)被托管的web應(yīng)用,其可W展示出如上述被托管的web應(yīng)用和下 面更詳細(xì)地描述的被打包的web應(yīng)用兩者的益處。換言之,特權(quán)靜態(tài)被托管的web應(yīng)用可W 是包括被打包的web應(yīng)用的安全性質(zhì)(例如,因?yàn)樘貦?quán)靜態(tài)被托管的web應(yīng)用已被驗(yàn)證和確 認(rèn))和離線性質(zhì)(例如,將不改變)的被托管的web應(yīng)用。特權(quán)靜態(tài)被托管的web應(yīng)用可對(duì)托管 web應(yīng)用如何工作施加約束。換言之,經(jīng)由被配置成在已知(由客戶端計(jì)算設(shè)備)方法、模式、 狀態(tài)和/或條件下操作的受信托管提供商(例如,遠(yuǎn)程服務(wù)器)來(lái)訪問(wèn)特權(quán)靜態(tài)被托管的web 應(yīng)用。
[0036] 例如,在典型網(wǎng)絡(luò)環(huán)境中,在不知道遠(yuǎn)程設(shè)備如何生成內(nèi)容的知識(shí)的情況下下載 或利用內(nèi)容。特權(quán)靜態(tài)被托管的web應(yīng)用提供內(nèi)容(例如,web應(yīng)用對(duì)象),所述內(nèi)容是靜態(tài)的 且被W某種方式審計(jì)W確保穩(wěn)定性、安全性和/或被測(cè)試或檢查W滿足某種準(zhǔn)則。遍及本說(shuō) 明書,特權(quán)靜態(tài)被托管的web應(yīng)用、受信web應(yīng)用和靜態(tài)web應(yīng)用可稍微可互換地使用。
[0037] 圖1是根據(jù)至少一個(gè)示例實(shí)施例的計(jì)算網(wǎng)絡(luò)100的框圖。網(wǎng)絡(luò)100可被用來(lái)使用本 文所述的技術(shù)實(shí)現(xiàn)web應(yīng)用和瀏覽器擴(kuò)展。圖1中的網(wǎng)絡(luò)100的描述是W示例的方式示出的。 將認(rèn)識(shí)到的是可將其它網(wǎng)絡(luò)配置用于實(shí)現(xiàn)運(yùn)樣的技術(shù)。
[003引網(wǎng)絡(luò)100包括計(jì)算設(shè)備IlOA和110B。作為示例,計(jì)算設(shè)備IlOA和IlOB可采取許多不 同設(shè)備的形式,諸如個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、平板計(jì)算機(jī)、上網(wǎng)本計(jì)算機(jī)或網(wǎng)絡(luò)使能電 話。設(shè)備IlOA和IlOB各自包括可被用來(lái)訪問(wèn)各種類型的內(nèi)容的瀏覽器120A和120B。例如,運(yùn) 樣的內(nèi)容可包括網(wǎng)站、照片、視頻、音頻和可執(zhí)行腳本。如圖1中所示,瀏覽器120A包括web應(yīng) 用130A和瀏覽器擴(kuò)展140A,其可使用本文所述的技術(shù)安裝在計(jì)算設(shè)備IlOA上,并且一旦被 安裝,可充當(dāng)瀏覽器120A的整合部分。web應(yīng)用130A可包括相應(yīng)的應(yīng)用的客戶端側(cè)組件。根 據(jù)特定實(shí)施方式,web應(yīng)用130A可包括可被瀏覽器120A執(zhí)行的web應(yīng)用和/或代碼的描述,其 中,該代碼為web應(yīng)用提供功能性。類似地,瀏覽器120B包括web應(yīng)用130B和瀏覽器擴(kuò)展 140B,其可使用本文所述的技術(shù)被安裝在計(jì)算設(shè)備IlOB上,并且一旦被安裝,可充當(dāng)瀏覽器 120B的整合部分。
[0039] 在網(wǎng)絡(luò)100中,計(jì)算設(shè)備IlOA與IlOB與網(wǎng)絡(luò)160禪合。網(wǎng)絡(luò)160可包括提供對(duì)互聯(lián)網(wǎng) 和/或萬(wàn)維網(wǎng)的訪問(wèn)的數(shù)據(jù)訪問(wèn)網(wǎng)絡(luò)。經(jīng)由網(wǎng)絡(luò)160,計(jì)算設(shè)備IlOA和IlOB(例如,使用瀏覽 器120A和120B)可與數(shù)字市場(chǎng)服務(wù)器150(例如,web應(yīng)用服務(wù)器或web商店)、web應(yīng)用起始點(diǎn) 170、受信web應(yīng)用起始點(diǎn)180W及瀏覽器擴(kuò)展起始點(diǎn)190通信。在本示例中,web應(yīng)用起始點(diǎn) 170可包括用于web應(yīng)用130A和130B的服務(wù)器側(cè)組件。瀏覽器擴(kuò)展起始點(diǎn)190可包括用于瀏 覽器擴(kuò)展140A和140B的服務(wù)器側(cè)組件。web應(yīng)用130A和130B及瀏覽器延伸140A和140B可使 用多個(gè)起始點(diǎn)進(jìn)行操作。因此,例如,web應(yīng)用130A和130B可在多個(gè)web應(yīng)用起始點(diǎn)上具有服 務(wù)器側(cè)組件。
[0040] 在本示例中,受信web應(yīng)用起始點(diǎn)180可包括用于web應(yīng)用132A和132B的服務(wù)器側(cè) 組件。web應(yīng)用132A和132B可W是特權(quán)靜態(tài)被托管的web應(yīng)用。如上文所討論的,被托管的 web應(yīng)用可W請(qǐng)求并被授予用W使用客戶端計(jì)算設(shè)備的本地資源的附加許可,超過(guò)由瀏覽 器執(zhí)行的典型代碼被允許使用的東西。然而,web應(yīng)用132A和132B可W是有特權(quán)的,因?yàn)橛?jì) 算設(shè)備IlOA和IlOB可授予對(duì)本地計(jì)算資源的特別訪問(wèn)。特別訪問(wèn)可W是在其之上授予對(duì)被 托管的web應(yīng)用的訪問(wèn)。例如,計(jì)算設(shè)備IlOA和IlOB可授予對(duì)本地計(jì)算資源的訪問(wèn),W便使 特權(quán)靜態(tài)被托管的web應(yīng)用訪問(wèn)與瀏覽器有關(guān)的內(nèi)容腳本或API和/或?qū)τ?jì)算設(shè)備的高水平 訪問(wèn)。
[0041 ]在各種實(shí)施方式中,例如,可對(duì)USB驅(qū)動(dòng)器、BLUETOOTH設(shè)備、開(kāi)放原始網(wǎng)絡(luò)套接字 的訪問(wèn)、充當(dāng)服務(wù)器和/或?qū)Ρ镜匚募到y(tǒng)的訪問(wèn)(例如,并未與存儲(chǔ)頁(yè)面或?yàn)g覽器狀態(tài)相 關(guān)聯(lián),諸如cookie、歷史、書簽、打開(kāi)標(biāo)簽頁(yè))。在示例實(shí)施方式中,受信web應(yīng)用起始點(diǎn)180可 僅包括與受信(例如,特權(quán)靜態(tài)被托管的web應(yīng)用)應(yīng)用相關(guān)聯(lián)的對(duì)象。因此,受信web應(yīng)用起 始點(diǎn)180可包括已經(jīng)歷某個(gè)驗(yàn)證過(guò)程的特權(quán)靜態(tài)被托管的web應(yīng)用。下面更詳細(xì)地描述驗(yàn)證 過(guò)程。簡(jiǎn)而言之,驗(yàn)證過(guò)程可基于web應(yīng)用的保證特性。例如,所述保證特性可與web應(yīng)用的 開(kāi)發(fā)者、基于與web應(yīng)用的潛在惡意行為有關(guān)的信號(hào)的web應(yīng)用的排名和/或由web應(yīng)用執(zhí)行 的腳本相關(guān)聯(lián)。
[0042] web應(yīng)用132A和132B可W是靜態(tài)的,因?yàn)?例如,經(jīng)由web瀏覽器)訪問(wèn)web應(yīng)用132A 和132B中的一個(gè)的任何計(jì)算設(shè)備將接收相同web應(yīng)用對(duì)象(例如,網(wǎng)頁(yè))。換言之,靜態(tài)web應(yīng) 用就對(duì)構(gòu)成web應(yīng)用的單獨(dú)對(duì)象的改變而言不是動(dòng)態(tài)的。換言之,通過(guò)替換web應(yīng)用的整體 (例如,上傳 W供使用)來(lái)改變靜態(tài)web應(yīng)用。靜態(tài)web應(yīng)用的開(kāi)發(fā)者不能在不整體地替換web 應(yīng)用的情況下替換單獨(dú)web應(yīng)用對(duì)象(例如,網(wǎng)頁(yè)或用戶界面或腳本)。相反地,如果開(kāi)發(fā)者 想要對(duì)靜態(tài)web應(yīng)用進(jìn)行改變,則開(kāi)發(fā)者必須在可W使得用于所提出的經(jīng)修訂的web應(yīng)用的 代碼在受信網(wǎng)絡(luò)處可用之前提交用于所提出的經(jīng)修訂的web應(yīng)用的代碼W用于重新確認(rèn)和 重新驗(yàn)證。換言之,一旦接收到(例如,來(lái)自web應(yīng)用的開(kāi)發(fā)者的)對(duì)web應(yīng)用132A和/或132B 的對(duì)象的改變,在使得對(duì)web應(yīng)用132A和/或132B的對(duì)象的改變經(jīng)由U化可訪問(wèn)之前,再次地 執(zhí)行整體地對(duì)web應(yīng)用132A和/或132B的保證特性的確認(rèn)。
[0043] 因此,不能對(duì)web應(yīng)用132A和/或132B的對(duì)象進(jìn)行替換、改向、切換、重新排序、記錄 等,并且在web應(yīng)用132A和/或132B整體上未被首先成功地確認(rèn)和/或重新確認(rèn)的情況下使 得所述web應(yīng)用132A和/或132B的對(duì)象經(jīng)由U化可訪問(wèn)。web應(yīng)用132A和132B可W是靜態(tài)的, 因?yàn)閣eb應(yīng)用包含在客戶端計(jì)算設(shè)備上執(zhí)行應(yīng)用所必要的所有資源,并且由客戶端計(jì)算設(shè) 備執(zhí)行應(yīng)用所需的代碼并不是動(dòng)態(tài)生成的。
[0044] web應(yīng)用132A和132B可W是被托管的web應(yīng)用,因?yàn)闃?gòu)成web應(yīng)用的對(duì)象被存儲(chǔ)(或 基本上被存儲(chǔ))在聯(lián)網(wǎng)的或服務(wù)器側(cè)計(jì)算設(shè)備(例如,服務(wù)器)上并用于客戶端服務(wù)設(shè)備。換 言之,作為示例,客戶端設(shè)備(例如,計(jì)算設(shè)備IlOA和/或110B)經(jīng)由瀏覽器和/或運(yùn)行時(shí)間利 用TOL從服務(wù)器請(qǐng)求構(gòu)成web應(yīng)用的對(duì)象。例如,web應(yīng)用132A和132B可被安全的服務(wù)器托 管。運(yùn)樣的托管可W包括向web爬取器提供對(duì)靜態(tài)web應(yīng)用W及與靜態(tài)web應(yīng)用相關(guān)聯(lián)的代 碼的訪問(wèn)。
[0045] 在一個(gè)實(shí)施方式中,數(shù)字市場(chǎng)服務(wù)器150可被配置成從用戶計(jì)算設(shè)備(諸如計(jì)算設(shè) 備110A)接收用于web應(yīng)用和瀏覽器擴(kuò)展的安裝的請(qǐng)求,并且響應(yīng)于運(yùn)樣的請(qǐng)求而提供用于 web應(yīng)用或?yàn)g覽器擴(kuò)展的安裝規(guī)程(或安裝包)。運(yùn)樣的安裝規(guī)程/安裝包可至少包括用于所 請(qǐng)求的web應(yīng)用的客戶端側(cè)組件。
[0046] 在圖1中所示的布置中,可通過(guò)與數(shù)字市場(chǎng)服務(wù)器150相交互而使用瀏覽器120A來(lái) 請(qǐng)求web應(yīng)用130A和瀏覽器擴(kuò)展140A的安裝。例如,數(shù)字市場(chǎng)150可實(shí)現(xiàn)除了其它內(nèi)容之外 還用來(lái)分發(fā)web應(yīng)用的網(wǎng)站。作為示例,數(shù)字市場(chǎng)服務(wù)器150可實(shí)現(xiàn)電子商務(wù)站點(diǎn)。數(shù)字市場(chǎng) 服務(wù)器150可從開(kāi)發(fā)者(例如從web應(yīng)用起始點(diǎn)170、受信web應(yīng)用起始點(diǎn)180或?yàn)g覽器擴(kuò)展起 始點(diǎn)190)獲取web應(yīng)用或?yàn)g覽器擴(kuò)展。
[0047] 可將用W安裝web應(yīng)用的請(qǐng)求包括在從計(jì)算設(shè)備110到數(shù)字市場(chǎng)服務(wù)器150的指示 用W購(gòu)買相應(yīng)的web應(yīng)用的協(xié)議的消息。在其它實(shí)施方式中,數(shù)字市場(chǎng)服務(wù)器150可采取其 它形式或?qū)崿F(xiàn)其它技術(shù),諸如提供對(duì)免費(fèi)web應(yīng)用的訪問(wèn),或者可采取開(kāi)發(fā)者的網(wǎng)站的形 式,其提供對(duì)web應(yīng)用安裝規(guī)程/安裝包的訪問(wèn)。
[0048] 在其它實(shí)施方式中,安裝web應(yīng)用可包括啟動(dòng)用于web應(yīng)用的背景頁(yè)面,如果web應(yīng) 用包括背景頁(yè)面特征的話。web應(yīng)用的背景頁(yè)面可使得web應(yīng)用能夠在用戶登錄到其計(jì)算機(jī) 上時(shí)立即運(yùn)行,包括在用戶啟動(dòng)web瀏覽器應(yīng)用或啟動(dòng)web瀏覽器應(yīng)用中的關(guān)聯(lián)web應(yīng)用之 前。背景頁(yè)面可W是在瀏覽器應(yīng)用中運(yùn)行的不可見(jiàn)元素,其中,背景頁(yè)面包括web瀏覽器應(yīng) 用中的與已安裝web應(yīng)用的聲明關(guān)聯(lián)。
[0049] 雖然網(wǎng)絡(luò)110僅圖示出單個(gè)數(shù)字市場(chǎng)服務(wù)器150、web應(yīng)用起始點(diǎn)170、受信web應(yīng)用 起始點(diǎn)180W及瀏覽器擴(kuò)展起始點(diǎn)190,但將認(rèn)識(shí)到的是在網(wǎng)絡(luò)100中可包括附加數(shù)字市場(chǎng)、 服務(wù)器、起始點(diǎn)或受信起始點(diǎn)。
[0050] 在某些實(shí)施方式中,web應(yīng)用起始點(diǎn)170、受信web應(yīng)用起始點(diǎn)180W及瀏覽器擴(kuò)展 起始點(diǎn)190還可實(shí)現(xiàn)一個(gè)或多個(gè)網(wǎng)站,計(jì)算設(shè)備IlOA和IlOB(例如,使用瀏覽器120A和120B) 可與所述一個(gè)或多個(gè)網(wǎng)站相交互W請(qǐng)求web應(yīng)用130A、130B、132A和132B及瀏覽器擴(kuò)展140A 和140B的安裝。作為示例,web應(yīng)用130A可W是被打包的應(yīng)用,其包括清單文件,該清單文件 可包括許可(例如,用W使用本地資源或者做正常HTML代碼不被允許做的其它事的許可)和 用W提供用戶界面的至少一個(gè)HTML文件W及其它文件,諸如圖像文件。作為另一示例,web 應(yīng)用132可W是特權(quán)靜態(tài)被托管的web應(yīng)用,其包括清單文件,該清單文件可包括許可(例 如,用W使用本地資源或者做正常HTML代碼不被允許做的其它事的許可)和用W提供用戶 界面的至少一個(gè)HTML文件W及其它文件,諸如圖像文件。例如,瀏覽器擴(kuò)展140A還可包括清 單文件和HTML文件。
[0051] 在某些實(shí)施方式中,受信web應(yīng)用起始點(diǎn)180可W是受信的,因?yàn)槠浒ㄊ謩?dòng)檢查 管理組件,即人針對(duì)安全問(wèn)題、錯(cuò)誤(bug)等檢查web應(yīng)用。進(jìn)一步地,例如,受信web應(yīng)用起 始點(diǎn)180可W是受信的,因?yàn)槠淇杀婚_(kāi)發(fā)瀏覽器120A和120B的相同公司W(wǎng)及用來(lái)執(zhí)行web應(yīng) 用和瀏覽器擴(kuò)展的操作系統(tǒng)操作。受信web應(yīng)用起始點(diǎn)180也可W是受信的,因?yàn)槠淇赏ㄟ^(guò) 計(jì)算設(shè)備的處理器來(lái)操作自主規(guī)程W針對(duì)安全問(wèn)題、來(lái)源、錯(cuò)誤等確認(rèn)web應(yīng)用。相反地,其 它起始點(diǎn)(例如,web應(yīng)用起始點(diǎn)170和瀏覽器擴(kuò)展起始點(diǎn)190)可能不那么受信,例如,因?yàn)?不知道其包括與受信web應(yīng)用起始點(diǎn)180相同水平的自動(dòng)化和/或手動(dòng)檢查或其它詳細(xì)審 查,并且因?yàn)槠渌鹗键c(diǎn)可能未提供受信瀏覽器或操作系統(tǒng)。受信web應(yīng)用起始點(diǎn)180可W 是具有識(shí)別受信的web應(yīng)用起始點(diǎn)的已知地址的選擇幾個(gè)web應(yīng)用起始點(diǎn)之一。
[0052] 瀏覽器120A和120B還可向受信web應(yīng)用起始點(diǎn)180提供與客戶端計(jì)算設(shè)備上的web 應(yīng)用的本地使用有關(guān)的反饋。例如,通過(guò)從許多客戶端計(jì)算設(shè)備IlOA和IlOB接收運(yùn)樣的反 饋,受信web應(yīng)用起始點(diǎn)180可收集與應(yīng)用實(shí)際上如何被使用有關(guān)和與在通過(guò)受信web應(yīng)用 起始點(diǎn)180訪問(wèn)應(yīng)用之后遭遇的任何安全問(wèn)題有關(guān)的信息。因此,受信web應(yīng)用起始點(diǎn)180可 基于與安全問(wèn)題有關(guān)的信號(hào)來(lái)分析web應(yīng)用,其中,運(yùn)樣的信號(hào)可包括基于與在從受信web 應(yīng)用起始點(diǎn)180訪問(wèn)并由客戶端計(jì)算設(shè)備執(zhí)行web應(yīng)用之后應(yīng)用實(shí)際上如何執(zhí)行有關(guān)的信 息的信號(hào)。例如,用戶可向受信web應(yīng)用起始點(diǎn)180報(bào)告惡意軟件或錯(cuò)誤。
[0053] 圖2圖示出根據(jù)至少一個(gè)示例實(shí)施例的包括計(jì)算設(shè)備110(例如,計(jì)算設(shè)備IlOA和/ 或110B)、受信web應(yīng)用起始點(diǎn)180、同步服務(wù)器240W及網(wǎng)絡(luò)230在內(nèi)的系統(tǒng)200的框圖。如圖 2中所示,計(jì)算設(shè)備110包括至少一個(gè)處理器205和至少一個(gè)存儲(chǔ)器210。所述至少一個(gè)處理 器205和所述至少一個(gè)存儲(chǔ)器210被經(jīng)由總線212被可通信地禪合。例如,計(jì)算設(shè)備110可W 是任何計(jì)算設(shè)備(例如,個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)等)的元件。
[0054] 如圖2中所示,所述至少一個(gè)存儲(chǔ)器210包括可W被執(zhí)行W提供操作系統(tǒng)(0/S) 214、瀏覽器216W及運(yùn)行時(shí)間218的代碼。操作系統(tǒng)(0/S)214、瀏覽器216W及運(yùn)行時(shí)間218 (一起)可被配置成實(shí)現(xiàn)本文所述的方法(的至少一部分)。
[0055] 根據(jù)示例實(shí)施方式,操作系統(tǒng)214管理與計(jì)算設(shè)備110相關(guān)聯(lián)的硬件資源并提供用 于在計(jì)算設(shè)備110上執(zhí)行的計(jì)算機(jī)程序的公共服務(wù)。根據(jù)示例實(shí)施方式,瀏覽器216實(shí)現(xiàn)上 文更詳細(xì)地描述的瀏覽器(例如,web瀏覽器)的功能。
[0056] 根據(jù)示例實(shí)施例,運(yùn)行時(shí)間2 18可W實(shí)現(xiàn)計(jì)算機(jī)語(yǔ)言(例如,HTML和/或 JAVASCRIPT)或程序(例如,web瀏覽器)的某種行為(例如,低級(jí)(例如,核屯、)和/或高級(jí)(例 如,類型檢查、垃圾收集和/或調(diào)試))。任何計(jì)算機(jī)語(yǔ)言可W實(shí)現(xiàn)某種形式的運(yùn)行時(shí)間,無(wú)論 語(yǔ)言是編譯語(yǔ)言、解釋型語(yǔ)言、嵌入式域特定語(yǔ)言,還是經(jīng)由API被調(diào)用。在某些實(shí)施方式 中,所述運(yùn)行時(shí)間可W檢索背景頁(yè)面,返回關(guān)于清單的細(xì)節(jié),并且偵聽(tīng)并響應(yīng)于應(yīng)用或擴(kuò)展 生命周期中的事件。運(yùn)行時(shí)間218可W將U化的相對(duì)路徑轉(zhuǎn)換成全路徑或絕對(duì)11化。在某些實(shí) 施方式中,運(yùn)行時(shí)間218可W管理應(yīng)用生命周期。在運(yùn)種情況下,運(yùn)行時(shí)間218管理應(yīng)用安 裝、控制事件頁(yè)面、并且可W在任何時(shí)間關(guān)掉應(yīng)用。
[0化7] 如圖2中所示,系統(tǒng)200還可W包括同步服務(wù)器240,其包括一個(gè)或多個(gè)處理器242、 一個(gè)或多個(gè)存儲(chǔ)器25、操作系統(tǒng)(0/S)244、標(biāo)識(shí)符數(shù)據(jù)庫(kù)246W及受信服務(wù)器數(shù)據(jù)庫(kù)248。標(biāo) 識(shí)符數(shù)據(jù)庫(kù)246可W存儲(chǔ)唯一標(biāo)識(shí)符W使得能夠?qū)崿F(xiàn)不同客戶端計(jì)算設(shè)備(例如,計(jì)算設(shè)備 IioaiOA和/或110B)上的各種用戶會(huì)話之間的同步。
[0058] 例如,在某些實(shí)施方式中,用戶帳戶允許用戶向系統(tǒng)服務(wù)(例如,web應(yīng)用)進(jìn)行認(rèn) 證并接收訪問(wèn)該系統(tǒng)服務(wù)的授權(quán)。例如,為了登錄到用戶帳戶中,用戶可出于計(jì)費(fèi)、安全W 及資源管理的目的用密碼或其它證書來(lái)認(rèn)證其自己。一旦用戶已登錄(例如,到web瀏覽器、 到計(jì)算設(shè)備等),操作系統(tǒng)就可使用諸如整數(shù)的標(biāo)識(shí)符而不是用戶名來(lái)指代用戶。例如,用 戶名可與用戶標(biāo)識(shí)符相關(guān)。系統(tǒng)(例如,同步服務(wù)器240)可調(diào)解和確認(rèn)用戶帳戶的適當(dāng)所有 權(quán),并且可W通過(guò)向已確認(rèn)帳戶登錄標(biāo)識(shí)符(例如,用戶名和密碼、安全標(biāo)識(shí)符等)分配唯一 標(biāo)識(shí)符來(lái)將那些用戶帳戶的所有權(quán)永久地鏈接到特定個(gè)體。系統(tǒng)可確認(rèn)個(gè)體僅具有用于適 當(dāng)系統(tǒng)和應(yīng)用的帳戶登錄標(biāo)識(shí)符,例如根據(jù)組織的經(jīng)營(yíng)策略、訪問(wèn)控制策略W及各種應(yīng)用 要求。
[0059] 在某些實(shí)施方式中,例如,當(dāng)用戶簽入web瀏覽器或某個(gè)設(shè)備時(shí),可經(jīng)由網(wǎng)絡(luò)230和 網(wǎng)絡(luò)接口 220從同步服務(wù)器240加載用戶的書簽、擴(kuò)展、web應(yīng)用、主題、其它瀏覽器偏好和/ 或設(shè)置的全部。因此,可將用戶的書簽、擴(kuò)展、web應(yīng)用、主題、其它瀏覽器偏好和/或設(shè)置保 存(例如,在存儲(chǔ)器250中)并同步到用戶的帳戶(例如,使用標(biāo)識(shí)符數(shù)據(jù)庫(kù)246)。然后,任何 時(shí)候用戶在其它計(jì)算機(jī)和設(shè)備上簽入web瀏覽器時(shí),用戶都可W加載運(yùn)些設(shè)置。例如,對(duì)瀏 覽器設(shè)置的改變可被即時(shí)地同步到該帳戶,并且可在其中用戶已簽入(并啟用同步)的其它 計(jì)算機(jī)上自動(dòng)地反映。
[0060] 在一個(gè)計(jì)算設(shè)備上對(duì)設(shè)置的改變可被(例如,經(jīng)由同步服務(wù)器240)從其它計(jì)算機(jī) 自動(dòng)地副本(例如,如果用戶已啟用該同步特征)。同步數(shù)據(jù)可在其在計(jì)算設(shè)備之間行進(jìn)時(shí) 被加密W保持信息安全。進(jìn)一步地,可使用密鑰在計(jì)算設(shè)備上對(duì)密碼進(jìn)行加密。同步服務(wù)器 240可包括被配置成散列設(shè)置的中央服務(wù),所述散列設(shè)置檢測(cè)是否許多設(shè)備突然請(qǐng)求用于 特定新設(shè)置的散列,并且在運(yùn)種情況下拒絕提供散列。同步服務(wù)器240可包括與不一致性有 關(guān)的用戶所提交的信息,所述不一致性然后被用來(lái)構(gòu)建或改善用W計(jì)算置信度的模型。同 步服務(wù)器240可報(bào)告不一致性的檢測(cè)W估計(jì)感染率的量級(jí)。
[0061] 因此,可從同步服務(wù)器240下載(例如,同步)并存儲(chǔ)在存儲(chǔ)器210中的文件(例如, XML文件)或數(shù)據(jù)存儲(chǔ)(datastore)(例如,數(shù)據(jù)庫(kù))讀取與瀏覽器設(shè)置相關(guān)聯(lián)的信息(W及設(shè) 置本身)。標(biāo)識(shí)符數(shù)據(jù)庫(kù)246和/或受信服務(wù)器數(shù)據(jù)庫(kù)248可訪問(wèn)該文件和/或數(shù)據(jù)存儲(chǔ)W便 補(bǔ)充和或生成與設(shè)置有關(guān)的信息。
[0062] 在某些實(shí)施方式中,受信服務(wù)器數(shù)據(jù)庫(kù)248可包括受信web應(yīng)用起始點(diǎn)180列表和/ 或受信服務(wù)器260列表和/或被配置成提供對(duì)特權(quán)靜態(tài)被托管的web應(yīng)用的訪問(wèn)的某個(gè)(些) 其它聯(lián)網(wǎng)設(shè)備。例如,受信服務(wù)器數(shù)據(jù)庫(kù)248可包括白名單和/或黑名單,其指示受信web應(yīng) 用起始點(diǎn)(例如,受信/不受信web應(yīng)用起始點(diǎn)的對(duì)應(yīng)地址)。例如,白名單可包括可許可的受 信web應(yīng)用起始點(diǎn)的列表。作為另一示例,黑名單可包括不可許可受信web應(yīng)用起始點(diǎn)的列 表。換言之,服務(wù)器可被配置為受信web應(yīng)用起始點(diǎn),但是基于某個(gè)準(zhǔn)則(例如,用戶排除和/ 或過(guò)去問(wèn)題)而列在黑名單上??墒褂冒酌麊魏秃诿麊蔚母鞣N組合。在一個(gè)示例中,公司環(huán) 境中的白名單可允許雇員利用生產(chǎn)力應(yīng)用作為特權(quán)靜態(tài)被托管的web應(yīng)用,并且黑名單可 防止特定游戲或社交應(yīng)用被用作特權(quán)靜態(tài)被托管的web應(yīng)用。在另一示例中,父母可創(chuàng)建黑 名單W拒絕孩子利用某些種類(例如,基于支付的游戲)的特權(quán)靜態(tài)被托管的web應(yīng)用。
[0063] 如圖2中所示,系統(tǒng)200還可W包括受信服務(wù)器260,其包括一個(gè)或多個(gè)處理器262、 一個(gè)或多個(gè)存儲(chǔ)器278、操作系統(tǒng)(0/S)264、應(yīng)用服務(wù)器266、驗(yàn)證模塊268、受信準(zhǔn)則270、經(jīng) 驗(yàn)證的web應(yīng)用數(shù)據(jù)存儲(chǔ)272W及其它web應(yīng)用數(shù)據(jù)存儲(chǔ)272。
[0064] 驗(yàn)證模塊268可被配置成利用受信準(zhǔn)則270W便確認(rèn)web應(yīng)用的保證特性。換言之, 驗(yàn)證模塊268可基于web應(yīng)用的保證特性而驗(yàn)證web應(yīng)用可W是受信web應(yīng)用。例如,驗(yàn)證模 塊268可被配置成收集與應(yīng)用實(shí)際上被如何使用有關(guān)和與用戶在從驗(yàn)證模塊268訪問(wèn)應(yīng)用 之后遭遇的任何安全問(wèn)題有關(guān)的大量信息,并將關(guān)聯(lián)信息存儲(chǔ)在受信準(zhǔn)則270中。因此,驗(yàn) 證模塊268可基于與安全問(wèn)題有關(guān)的信號(hào)來(lái)分析web應(yīng)用,其中,運(yùn)樣的信號(hào)可包括基于與 在從驗(yàn)證模塊268訪問(wèn)并由客戶端計(jì)算設(shè)備執(zhí)行web應(yīng)用之后應(yīng)用實(shí)際上如何執(zhí)行有關(guān)的 信息的信號(hào)。例如,用戶可向驗(yàn)證模塊26對(duì)良告惡意軟件或錯(cuò)誤。
[0065] 進(jìn)一步地,驗(yàn)證模塊268可被配置成利用存儲(chǔ)在受信準(zhǔn)則270中的信息來(lái)確定web 應(yīng)用是否是靜態(tài)web應(yīng)用。如上文所討論的,訪問(wèn)靜態(tài)web應(yīng)用的任何計(jì)算設(shè)備(例如,經(jīng)由 web瀏覽器)將接收相同web應(yīng)用對(duì)象(例如,網(wǎng)頁(yè))。換言之,靜態(tài)web應(yīng)用就對(duì)構(gòu)成web應(yīng)用 的單獨(dú)對(duì)象的改變而言不是動(dòng)態(tài)的。換言之,通過(guò)替選web應(yīng)用的整體(例如,上傳 W供使 用)來(lái)改變靜態(tài)web應(yīng)用。靜態(tài)網(wǎng)頁(yè)的開(kāi)發(fā)者不能在不整體地替選web應(yīng)用的情況下替換單 獨(dú)web應(yīng)用對(duì)象(例如,網(wǎng)頁(yè)或用戶界面或腳本)。更進(jìn)一步地,驗(yàn)證模塊268可被配置成如果 與應(yīng)用改變相關(guān)聯(lián)的任何信息將應(yīng)用的受信度置于懷疑中,則利用存儲(chǔ)在受信準(zhǔn)則270中 的信息來(lái)從受信狀態(tài)撤消(或去除)web應(yīng)用。驗(yàn)證模塊268可被配置成跟蹤進(jìn)入web應(yīng)用和 從web應(yīng)用出來(lái)的訪問(wèn)。
[0066] 一旦確定(例如,驗(yàn)證)web應(yīng)用受信且是靜態(tài)的,將web應(yīng)用與經(jīng)驗(yàn)證的web應(yīng)用數(shù) 據(jù)存儲(chǔ)272相關(guān)聯(lián)(或?qū)⑵浯鎯?chǔ)在其中)。換言之,一旦驗(yàn)證,web應(yīng)用變成特權(quán)靜態(tài)被托管的 web應(yīng)用。例如,web應(yīng)用對(duì)象、元數(shù)據(jù)、U化等與經(jīng)驗(yàn)證的web應(yīng)用數(shù)據(jù)存儲(chǔ)272相關(guān)聯(lián)。作為 特權(quán)靜態(tài)被托管的web應(yīng)用,經(jīng)驗(yàn)證的受信web應(yīng)用可具有關(guān)聯(lián)URL(相對(duì)或絕對(duì))。因此,不 同于被打包的應(yīng)用,可將與web應(yīng)用相關(guān)聯(lián)的對(duì)象索引(例如,使用web爬取器)。因此,作為 特權(quán)靜態(tài)被托管的web應(yīng)用,web應(yīng)用(及其關(guān)聯(lián)對(duì)象何W是可使用捜索引擎捜索的。進(jìn)一 步地,可經(jīng)由瀏覽器或共享(鏈接到)的其它應(yīng)用來(lái)導(dǎo)航到與特權(quán)靜態(tài)被托管的web應(yīng)用相 關(guān)聯(lián)的對(duì)象或內(nèi)容。
[0067] 其它web應(yīng)用數(shù)據(jù)存儲(chǔ)274可包括并不旨在作為可與受信服務(wù)器260相關(guān)聯(lián)的特權(quán) 靜態(tài)被托管的web應(yīng)用(例如,其它web應(yīng)用可能不是靜態(tài)的)的web應(yīng)用。然而,在某些實(shí)施 方式中,其他web應(yīng)用數(shù)據(jù)存儲(chǔ)274可包括等待驗(yàn)證或者在驗(yàn)證的過(guò)程中的web應(yīng)用。例如, 開(kāi)發(fā)者可加載與其他web應(yīng)用數(shù)據(jù)存儲(chǔ)274相關(guān)聯(lián)的web應(yīng)用版本2.0并將web應(yīng)用2.0 "標(biāo) 記"為web應(yīng)用1.0的替選/升級(jí)。驗(yàn)證web應(yīng)用2.0(例如,檢查為靜態(tài)的、檢查為安全的等), 并且一旦經(jīng)過(guò)驗(yàn)證,web應(yīng)用2.0可與經(jīng)驗(yàn)證的web應(yīng)用數(shù)據(jù)存儲(chǔ)272相關(guān)聯(lián)。為了保持某個(gè) 歷史,web應(yīng)用2.0可與其他web應(yīng)用數(shù)據(jù)存儲(chǔ)274相關(guān)聯(lián)。與其他web應(yīng)用數(shù)據(jù)存儲(chǔ)274相關(guān) 聯(lián)的過(guò)時(shí)或歷史web應(yīng)用可使任何關(guān)聯(lián)ML被禁用,使得訪問(wèn)被禁用。
[0068] 在圖2的示例中,計(jì)算設(shè)備110、受信服務(wù)器260和/或同步服務(wù)器240可W是至少一 個(gè)計(jì)算設(shè)備,并且應(yīng)理解成表示被配置成執(zhí)行本文所述的方法的實(shí)際上任何計(jì)算設(shè)備。同 樣地,可將計(jì)算設(shè)備110、受信服務(wù)器260和/或同步服務(wù)器240理解成包括可被用來(lái)實(shí)現(xiàn)本 文所述技術(shù)或其不同或未來(lái)版本的各種標(biāo)準(zhǔn)組件。舉例來(lái)說(shuō),計(jì)算設(shè)備110、受信服務(wù)器260 和/或同步服務(wù)器240被圖示為分別包括所述至少一個(gè)處理器205、242和262W及分別包括 所述至少一個(gè)存儲(chǔ)器210、250和278(例如,非暫時(shí)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì))。
[0069] 因此,如可認(rèn)識(shí)到的,所述至少一個(gè)處理器205、242和/或262可在基板上被形成, 并且可被用來(lái)執(zhí)行存儲(chǔ)在所述至少一個(gè)存儲(chǔ)器210、250和/或278上的指令,從而由此實(shí)現(xiàn) 本文所述的各種特征和功能或者附加或替選特征和功能。當(dāng)然,可出于各種其它目的利用 所述至少一個(gè)處理器205、242和/或262和所述至少一個(gè)存儲(chǔ)器210、250和/或278。特別地, 可認(rèn)識(shí)到的是可將所述至少一個(gè)存儲(chǔ)器210、250和/或278理解成表示可能被用來(lái)實(shí)現(xiàn)本文 所述的模塊中的任何一個(gè)模塊的各種類型的存儲(chǔ)器和相關(guān)硬件和軟件的示例。上文和/或 下文所述的系統(tǒng)和/或方法可包括數(shù)據(jù)和/或存儲(chǔ)元件。例如,可將該數(shù)據(jù)和/或存儲(chǔ)元件 (例如,數(shù)據(jù)庫(kù)表格)存儲(chǔ)在所述至少一個(gè)存儲(chǔ)器210、250和/或278中。
[0070] 圖3至圖6是根據(jù)示例實(shí)施例的方法的流程圖。由于存儲(chǔ)在與裝置(例如,如圖1和2 中所示)相關(guān)聯(lián)的存儲(chǔ)器(例如,至少一個(gè)存儲(chǔ)器210、250和/或278)中并由與裝置相關(guān)聯(lián)的 至少一個(gè)處理器(例如,至少一個(gè)處理器205、262和/或242)執(zhí)行的軟件代碼的執(zhí)行,可執(zhí)行 關(guān)于圖3至6所述的步驟。然而,可設(shè)想替選的實(shí)施例,諸如體現(xiàn)為專用處理器的系統(tǒng)。雖然 下面描述的步驟被描述為由處理器執(zhí)行,但該步驟不一定由相同處理器執(zhí)行。換言之,至少 一個(gè)處理器可執(zhí)行下面關(guān)于圖3至6所述的步驟。
[0071] 圖3是根據(jù)至少一個(gè)示例實(shí)施例的方法的流程圖。如圖3中所示,在步驟S305中,在 受信服務(wù)器處接收web應(yīng)用。例如,web應(yīng)用開(kāi)發(fā)者可開(kāi)發(fā)作為將變成特權(quán)靜態(tài)被托管的web 應(yīng)用的候選的應(yīng)用??蓪eb應(yīng)用(包括所有或基本上所有應(yīng)用對(duì)象)從開(kāi)發(fā)者計(jì)算設(shè)備(未 示出)通信至受信服務(wù)器(例如,受信服務(wù)器260)。受信服務(wù)器可存儲(chǔ)接收到的web應(yīng)用。例 如,受信服務(wù)器260可將web應(yīng)用存儲(chǔ)在其他web應(yīng)用數(shù)據(jù)存儲(chǔ)274中和/或存儲(chǔ)器278中。
[0072] 在步驟S310中,確認(rèn)web應(yīng)用的保證特性。例如,驗(yàn)證模塊268可確認(rèn)與web應(yīng)用相 關(guān)聯(lián)的保證特性??蓪⒖杀淮_認(rèn)的保證特性和可用來(lái)確認(rèn)保證特性的機(jī)制存儲(chǔ)在受信準(zhǔn)則 270中??蓪⒈WC特性可與跟web應(yīng)用相關(guān)聯(lián)的對(duì)象相關(guān)聯(lián)。例如,可將包括被識(shí)別為惡意軟 件、病毒、特洛伊木馬或某個(gè)其它形式的惡意軟件的對(duì)象的web應(yīng)用認(rèn)為是不可信的。例如, 可將包括到對(duì)象的鏈接或在外部(例如,并未與受信服務(wù)器相關(guān)聯(lián)或被存儲(chǔ)在受信服務(wù)器 上)的對(duì)象的web應(yīng)用認(rèn)為是不可信的或不是靜態(tài)的,因?yàn)榭蒞在受信環(huán)境之外改變對(duì)象。 在某些實(shí)施方式中,可將保證特性與開(kāi)發(fā)者相關(guān)聯(lián)。例如,可將具有有問(wèn)題web應(yīng)用的許多 報(bào)告的開(kāi)發(fā)者認(rèn)為是不可信的,或者其可具有與比其它開(kāi)發(fā)者低的可信度分?jǐn)?shù)相關(guān)聯(lián)的排 名。因此,可將與不可信開(kāi)發(fā)者相關(guān)聯(lián)的web應(yīng)用認(rèn)為是不可信的。
[0073] 如果在步驟S315中確認(rèn)是成功的,則web應(yīng)用被指示為特權(quán)靜態(tài)被托管的web應(yīng) 用,并且處理繼續(xù)至步驟S320。否則,執(zhí)行某個(gè)其它處理。在步驟320中,經(jīng)由識(shí)別公共互聯(lián) 網(wǎng)中的web應(yīng)用的位置的統(tǒng)一資源定位符化RL)來(lái)提供對(duì)web應(yīng)用的訪問(wèn)。例如,與現(xiàn)在的特 權(quán)靜態(tài)被托管的web應(yīng)用相關(guān)聯(lián)的對(duì)象可與然后可經(jīng)由公共互聯(lián)網(wǎng)訪問(wèn)(例如,普遍地從互 聯(lián)網(wǎng)內(nèi)的任何地方可供用戶使用)的經(jīng)驗(yàn)證的web應(yīng)用數(shù)據(jù)存儲(chǔ)272相關(guān)聯(lián)(或被存儲(chǔ)在其 中)Dweb應(yīng)用(例如,特權(quán)靜態(tài)被托管的web應(yīng)用)內(nèi)的每個(gè)對(duì)象可W是相對(duì)于初始或啟動(dòng)對(duì) 象。因此,可公布與初始或啟動(dòng)對(duì)象相關(guān)聯(lián)的URL作為對(duì)web應(yīng)用的訪問(wèn)機(jī)制。替選地,web應(yīng) 用(例如,特權(quán)靜態(tài)被托管的web應(yīng)用)內(nèi)的對(duì)象中的每個(gè)對(duì)象可具有絕對(duì)URL,并且可公布 絕對(duì)U化中的每個(gè)URL。
[0074] 圖4是根據(jù)至少一個(gè)示例實(shí)施例的另一方法的流程圖。如圖4中所示,在步驟S405 中,將服務(wù)器識(shí)別為受信服務(wù)器。例如,可將客戶端計(jì)算設(shè)備(例如,計(jì)算設(shè)備110)可通信地 被禪合到服務(wù)器(例如,受信服務(wù)器260)。服務(wù)器可具有唯一識(shí)別??蛻舳擞?jì)算設(shè)備可W具 有對(duì)受信服務(wù)器列表的訪問(wèn)。例如,可將該受信服務(wù)器列表本地存儲(chǔ)和/或通過(guò)聯(lián)網(wǎng)服務(wù)器 (例如,同步服務(wù)器240)來(lái)訪問(wèn)。在本實(shí)施方式中,使用服務(wù)器的唯一識(shí)別來(lái)捜索受信服務(wù) 器列表W確定服務(wù)器是否是受信服務(wù)器。換言之,如果服務(wù)器被包括在受信服務(wù)器列表中, 則服務(wù)器被識(shí)別為受信服務(wù)器。
[0075] 替選地或另外,服務(wù)器可通信客戶端設(shè)備可W用來(lái)確定服務(wù)器的可信度的某一信 息集合。替選地或者另外,例如,客戶端設(shè)備的用戶可基于服務(wù)器的所有權(quán)而將服務(wù)器選作 受信服務(wù)器。
[0076] 在步驟S410中,經(jīng)由識(shí)別web應(yīng)用的統(tǒng)一資源定位符化化)來(lái)訪問(wèn)與受信服務(wù)器相 關(guān)聯(lián)的web應(yīng)用。例如,如上文所討論的,特權(quán)靜態(tài)被托管的web應(yīng)用可具有關(guān)聯(lián)URLdU化可 與用于具有用于web應(yīng)用的其它對(duì)象的相對(duì)URL的web應(yīng)用的初始或啟動(dòng)對(duì)象相關(guān)聯(lián)和/或 web應(yīng)用的每個(gè)對(duì)象可具有關(guān)聯(lián)絕對(duì)URL。在某些實(shí)施方式中,由于每個(gè)對(duì)象具有關(guān)聯(lián)的相 對(duì)ML或絕對(duì)URL,可使用任何網(wǎng)際協(xié)議來(lái)鏈接到、調(diào)用和/或訪問(wèn)對(duì)象。
[0077] 如上文所討論的,特權(quán)靜態(tài)主機(jī)web應(yīng)用可具有與被打包的web應(yīng)用的那些類似的 性質(zhì)。那些性質(zhì)中的一個(gè)性質(zhì)是離線操作的能力。因此,訪問(wèn)web應(yīng)用可包括下載(例如,經(jīng) 由HTML)與web應(yīng)用相關(guān)聯(lián)的對(duì)象中的所有。如上文所討論的,作為特權(quán)靜態(tài)被托管的web應(yīng) 用的web應(yīng)用是靜態(tài)的。因此,將對(duì)象下載為靜態(tài)對(duì)象確保關(guān)于web應(yīng)用的功能的一致性,其 是被打包的web應(yīng)用的性質(zhì)。
[0078] 在一個(gè)示例實(shí)施方式中,與客戶端(例如,計(jì)算設(shè)備110)相關(guān)聯(lián)的運(yùn)行時(shí)間(例如, 圖2中所示的運(yùn)行時(shí)間218)與主機(jī)服務(wù)器(例如,受信服務(wù)器260)相交互,使得主機(jī)服務(wù)器 包括與web應(yīng)用相關(guān)聯(lián)的對(duì)象,并且運(yùn)行時(shí)間執(zhí)行web應(yīng)用。因此,運(yùn)行時(shí)間與主機(jī)服務(wù)器通 信并在web應(yīng)用(例如,特權(quán)靜態(tài)被托管的web應(yīng)用)的執(zhí)行中與主機(jī)服務(wù)器協(xié)作。與被打包 的應(yīng)用相比,不存在與web應(yīng)用相關(guān)聯(lián)的所有對(duì)象的在先下載。換言之,在沒(méi)有web應(yīng)用對(duì)象 的在先下載的情況下,特權(quán)靜態(tài)被托管的web應(yīng)用由運(yùn)行時(shí)間執(zhí)行。
[0079] 在步驟S415中,在由客戶端設(shè)備執(zhí)行web應(yīng)用期間,準(zhǔn)許運(yùn)用W利用客戶端設(shè)備中 的至少一個(gè)本地資源的至少一個(gè)許可。例如,可對(duì)web應(yīng)用(例如,特權(quán)靜態(tài)被托管的web應(yīng) 用)授予用W訪問(wèn)應(yīng)用編程接口(API)的許可,允許web應(yīng)用改變?yōu)g覽器表現(xiàn)或看起來(lái)的方 式。在某些情況下,web應(yīng)用可在沒(méi)有看起來(lái)在瀏覽器中運(yùn)行的情況下(例如,在沒(méi)有瀏覽器 "chrome"、瀏覽器的標(biāo)簽頁(yè)或其它用戶界面的情況下)操作。在運(yùn)種情況下,web應(yīng)用將在不 訪問(wèn)與瀏覽器狀態(tài)有關(guān)的內(nèi)容腳本或API(諸如cookie、歷史、書簽、打開(kāi)標(biāo)簽頁(yè)等)的情況 下在獨(dú)立窗口中操作。然而,在運(yùn)種情況下,可對(duì)web應(yīng)用授予對(duì)操作系統(tǒng)(例如,Browser- OS或操作系統(tǒng)214)(例如,API的)資源的訪問(wèn)。在各種情況下,作為示例,可授予web應(yīng)用對(duì) USB驅(qū)動(dòng)器、BLUETOOTH設(shè)備、開(kāi)放原始網(wǎng)絡(luò)套接字、充當(dāng)服務(wù)器或訪問(wèn)本地文件系統(tǒng)的訪 問(wèn)。
[0080] 圖5是根據(jù)至少一個(gè)示例實(shí)施例的另一方法的流程圖。如圖5中所示,在步驟S505 中,本方法包括由計(jì)算系統(tǒng)的至少一個(gè)處理器(例如,基于娃的硬件處理器)識(shí)別可用于由 服務(wù)器托管W便由在客戶端計(jì)算設(shè)備上執(zhí)行的瀏覽器來(lái)執(zhí)行的web應(yīng)用。在步驟S510中,當(dāng) 由在客戶端計(jì)算設(shè)備上執(zhí)行的瀏覽器來(lái)執(zhí)行web應(yīng)用時(shí),基于關(guān)于web應(yīng)用的潛在惡意行為 的信號(hào)而自動(dòng)地對(duì)web應(yīng)用進(jìn)行排名。在步驟S515中,基于該排名而選擇該web應(yīng)用作為特 權(quán)靜態(tài)被托管的web應(yīng)用。
[0081] 例如,在某些實(shí)施方式中,可將驗(yàn)證模塊268配置成基于特定web應(yīng)用所使用的許 可來(lái)選擇web應(yīng)用。例如,可W對(duì)可能被web應(yīng)用使用的每個(gè)許可分配分?jǐn)?shù),其中,該分?jǐn)?shù)指 示使用許可的web應(yīng)用的風(fēng)險(xiǎn)水平。例如,由于此許可被利用時(shí)的用于惡意后果的潛在可 能,分配給跨起始點(diǎn)XMLHttpRequest許可的分?jǐn)?shù)可能非常高。類似地,針對(duì)用于web應(yīng)用在 客戶端設(shè)備上運(yùn)行本機(jī)代碼的許可或針對(duì)用于web應(yīng)用訪問(wèn)或存儲(chǔ)用戶的密碼信息的許可 的分?jǐn)?shù)可能非常高。相反地,分配給用W確定web應(yīng)用何時(shí)空閑的時(shí)間的許可的分?jǐn)?shù)可能非 常低。在另一示例中,分配給用W訪問(wèn)被用戶訪問(wèn)的所有網(wǎng)站上的所有用戶數(shù)據(jù)的許可的 分?jǐn)?shù)可高于分配給用W訪問(wèn)在特定單個(gè)網(wǎng)站上或少數(shù)網(wǎng)站上的用戶數(shù)據(jù)的許可的分?jǐn)?shù)。
[0082] 在某些實(shí)施方式中,該分?jǐn)?shù)可W是定量分?jǐn)?shù),范圍從最小值至最大值,并且可W采 取最小值與最大值之間的離散中間值。分?jǐn)?shù)的值可W具有一個(gè)或多個(gè)有效數(shù)字。例如,分?jǐn)?shù) 可W在Wuoi、0.Ol等步幅而在從1至10的范圍內(nèi)。在某些實(shí)施方式中,分配給許可的分?jǐn)?shù) 可由一個(gè)或多個(gè)專家確定,該專家基于web應(yīng)用中的其預(yù)期使用來(lái)分配分?jǐn)?shù)。在某些實(shí)施方 式中,可W基于與使用特定許可的web應(yīng)用相關(guān)聯(lián)的性能指標(biāo)來(lái)確定用于許可的分?jǐn)?shù)。例 如,可W基于web應(yīng)用當(dāng)在客戶端計(jì)算設(shè)備上被執(zhí)行時(shí)使用許可崩潰的頻率來(lái)確定用于許 可的分?jǐn)?shù)。
[0083] 可W自動(dòng)地(即,在沒(méi)有人類交互的情況下)確定由web應(yīng)用聲明的許可。在一個(gè)實(shí) 施方式中,應(yīng)用驗(yàn)證模塊268可W自動(dòng)地解析所提議的應(yīng)用的清單文件W確定將從將訪問(wèn) 所提議的應(yīng)用的用戶尋求的許可。一旦確定了由web應(yīng)用聲明的許可,則可W由驗(yàn)證模塊對(duì) 其進(jìn)行分析W至少部分地基于由web應(yīng)用聲明的許可來(lái)確定web應(yīng)用的分?jǐn)?shù)和排名。
[0084] 在某些實(shí)施方式中,用于web應(yīng)用的潛在惡意行為的分?jǐn)?shù)可W基于web應(yīng)用所使用 的許可的單獨(dú)分?jǐn)?shù)的聚合。例如,在一個(gè)實(shí)施方式中,如下面的表1中所示,web應(yīng)用A、B、C、 D、E、F、G(通過(guò)其在表格中的ID識(shí)別)可W聲明許可口1、口2、口3、口4、口5、口6(其中的每一個(gè)已被 分配單獨(dú)分?jǐn)?shù))中的一個(gè)或多個(gè)的使用。針對(duì)使用特定許可的web應(yīng)用,在表1的對(duì)應(yīng)單元中 示出了許可的分?jǐn)?shù)。然后,web應(yīng)用的分?jǐn)?shù)可W是由web應(yīng)用聲明的許可的單獨(dú)分?jǐn)?shù)的和,如 在表1的最右列中所示,其將web應(yīng)用按其總分?jǐn)?shù)排名。在其它實(shí)施方式中,web應(yīng)用的分?jǐn)?shù) 可W是由web應(yīng)用聲明的許可的單獨(dú)分?jǐn)?shù)的加權(quán)和。在其它實(shí)施方式中,例如,web應(yīng)用的分 數(shù)可W等于由web應(yīng)用聲明的許可的最大分?jǐn)?shù),如下面的表2中所示,其提供了 web應(yīng)用的另 一排名。 「00851 LUUOOJ 衣Z
[0089] 在某些實(shí)施方式中,基于許可而確定web應(yīng)用的分?jǐn)?shù)的方式可W取決于web應(yīng)用是 什么。例如,用來(lái)基于由游戲應(yīng)用所聲明的許可來(lái)確定游戲web應(yīng)用的分?jǐn)?shù)的算法可W不同 于被用來(lái)基于由生產(chǎn)力應(yīng)用聲明的許可來(lái)確定生產(chǎn)力web應(yīng)用的分?jǐn)?shù)的算法。
[0090] 還可W基于由web應(yīng)用聲明的許可所調(diào)用的方法或功能來(lái)確定分配給web應(yīng)用的 分?jǐn)?shù)。一般地,用于聲明特定潛在的危險(xiǎn)許可但并未用該許可對(duì)危險(xiǎn)方法進(jìn)行調(diào)用的web應(yīng) 用的分?jǐn)?shù)將具有與使用在該許可中對(duì)危險(xiǎn)方法進(jìn)行調(diào)用的相同許可的web應(yīng)用相比較低的 分?jǐn)?shù)。例如,聲明跨起始點(diǎn)XMLHttpRequest許可并使用該許可來(lái)請(qǐng)求對(duì)已知是安全的域(例 女日,('http: //ww.google. com/"或ht1:p://ww. gmai 1. com/)的訪問(wèn)的web應(yīng)用可具有與聲 明跨起始點(diǎn)XMLHttpRequest許可并使用該許可來(lái)請(qǐng)求對(duì)所有域(例如,http: //*/)的訪問(wèn) 或者使用該許可來(lái)請(qǐng)求已知不那么安全或者并未明確地已知是安全的訪問(wèn)的web應(yīng)用相比 可具有較低分?jǐn)?shù)。
[0091] 在某些實(shí)施方式中,方法調(diào)用的影響可W通過(guò)增加/減小特定許可否則將接收到 的分?jǐn)?shù)來(lái)影響分配給由web應(yīng)用所聲明的許可的分?jǐn)?shù)。在其它實(shí)施方式中,方法調(diào)用可接收 其自己的分?jǐn)?shù),該分?jǐn)?shù)在算法中被連同用于許可的分?jǐn)?shù)一起考慮W確定web應(yīng)用的分?jǐn)?shù),諸 如上文所解釋的。
[0092] 除檢查所提議的web應(yīng)用的許可之外,驗(yàn)證模塊268可W檢查所提議的web應(yīng)用的 代碼是否與可對(duì)客戶端計(jì)算設(shè)備的用戶造成損害的一個(gè)或多個(gè)已知惡意代碼序列(即,惡 意軟件)匹配。例如,受信準(zhǔn)則270可W存儲(chǔ)惡意代碼序列的多個(gè)已知指紋,并且驗(yàn)證模塊 268可W解析所提議的web應(yīng)用的代碼,并且然后將經(jīng)解析的代碼與所存儲(chǔ)的惡意代碼的指 紋相比較。然后,如果所提議的應(yīng)用的代碼與一個(gè)或多個(gè)已知潛在的惡意代碼序列匹配,貝U 所提議的應(yīng)用可W接收到比所提議的應(yīng)用單獨(dú)地基于其聲明的許可而將接收到的更高的 分?jǐn)?shù)。
[0093] 驗(yàn)證模塊268還可W檢查所提議的web應(yīng)用的代碼是否與一個(gè)或多個(gè)潛在的惡意 代碼序列匹配,所述一個(gè)或多個(gè)潛在的惡意代碼序列可使得客戶端設(shè)備易受到安全攻擊 (例如,跨站腳本(XSS)攻擊,其使得攻擊者能夠向由客戶端計(jì)算設(shè)備執(zhí)行的網(wǎng)頁(yè)內(nèi)注入客 戶端側(cè)腳本)或者指示web應(yīng)用的代碼已明顯地改變且因此可能已改變其目的。如針對(duì)惡意 軟件的掃描的情況一樣,受信準(zhǔn)則270可W存儲(chǔ)可疑代碼序列的多個(gè)已知指紋,并且驗(yàn)證模 塊268可W解析所提議的web應(yīng)用的代碼,并且然后將經(jīng)解析的代碼與存儲(chǔ)在應(yīng)用分析數(shù)據(jù) 庫(kù)中的代碼的指紋相比較。然后,如果所提議的應(yīng)用的代碼與一個(gè)或多個(gè)可疑代碼序列匹 配,則所提議的應(yīng)用可W接收到比所提議的應(yīng)用單獨(dú)地基于其聲明的許可而將接收到的更 高的分?jǐn)?shù)。
[0094] 除用來(lái)基于與web應(yīng)用的潛在惡意行為有關(guān)的信號(hào)來(lái)確定web應(yīng)用的排名的上述 信號(hào)之外,還可W基于基于聲譽(yù)的度量來(lái)對(duì)web應(yīng)用進(jìn)行排名。例如,可W基于可W被用來(lái) 推斷web應(yīng)用的聲譽(yù)的各種信息來(lái)補(bǔ)充(例如,增加或減小)基于由web應(yīng)用所聲明的許可而 針對(duì)web應(yīng)用確定的分?jǐn)?shù)。例如,如果兩個(gè)web應(yīng)用聲明相同的許可,則由過(guò)去已提供具有包 括惡意行為的低概率的其它web應(yīng)用的開(kāi)發(fā)者上傳的web應(yīng)用可接收到其分?jǐn)?shù)的減小,而由 不具有已提供具有包括惡意行為的低概率的其它web應(yīng)用的實(shí)質(zhì)性記錄的開(kāi)發(fā)者上傳的 web應(yīng)用可接收到其分?jǐn)?shù)的增加。在其它實(shí)施方式中,接觸已被確定為包括在被執(zhí)行時(shí)引起 惡意、不安全或危險(xiǎn)行為的代碼的網(wǎng)站的第一 web應(yīng)用可接收到比并未接觸網(wǎng)站的第二web 應(yīng)用更高的分?jǐn)?shù),即使第一和第二web應(yīng)用聲明相同的許可并進(jìn)行相同的方法調(diào)用。
[00M]最后,如果分?jǐn)?shù)和/或排名在第一闊值與第二闊值之間,則可將web應(yīng)用選作特權(quán) 靜態(tài)被托管的web應(yīng)用。例如,如果web應(yīng)用具有在第一闊值W下的對(duì)應(yīng)分?jǐn)?shù)和/或闊值,貝U 風(fēng)險(xiǎn)可W非常低(例如,未請(qǐng)求許可和/或未檢測(cè)到惡意軟件),W致于不需要或期望在受信 服務(wù)器上托管web應(yīng)用。然而,如果web應(yīng)用具有在第二闊值W上的對(duì)應(yīng)分?jǐn)?shù)和/或排名,貝U 風(fēng)險(xiǎn)可能非常高,W致于web應(yīng)用被視為有風(fēng)險(xiǎn)和/或不可信的。在第一闊值與第二闊值之 間的可W是作為用于選作特權(quán)靜態(tài)被托管的web應(yīng)用的候選的web應(yīng)用。替選地,具有在W 上或W下的對(duì)應(yīng)分?jǐn)?shù)和/或排名的web應(yīng)用可被選作特權(quán)靜態(tài)被托管的web應(yīng)用。
[0096] 圖6是根據(jù)至少一個(gè)示例實(shí)施例的另一方法的流程圖。如圖6中所示,在步驟S605 中,由至少一個(gè)處理器接收web應(yīng)用,其中,用于所接收的web應(yīng)用的源代碼包括腳本語(yǔ)言代 碼。在步驟S610中,將所接收的web應(yīng)用的代碼重寫成包括將在重寫web應(yīng)用的執(zhí)行期間跟 蹤所接收的web應(yīng)用的行為的代碼。在步驟S615中,在由計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)處理器運(yùn) 行的瀏覽器中執(zhí)行重寫web應(yīng)用。在步驟S620中,由計(jì)算機(jī)系統(tǒng)的一個(gè)或多個(gè)處理器基于執(zhí) 行重寫web應(yīng)用的結(jié)果的評(píng)估來(lái)確定web應(yīng)用是否違反了一個(gè)或多個(gè)預(yù)定條件。在步驟S515 中,基于該違反而將該web應(yīng)用選作特權(quán)靜態(tài)被托管的web應(yīng)用。
[0097] 例如,在某些實(shí)施方式中,可將受信服務(wù)器260配置成接收請(qǐng)求和所提議的web應(yīng) 用的副本,受信服務(wù)器260可發(fā)起所提議的web應(yīng)用的自動(dòng)審查過(guò)程??蒞在其被作為被托 管的web應(yīng)用提供用于銷售之前由受信服務(wù)器260內(nèi)的驗(yàn)證模塊268執(zhí)行該自動(dòng)審查過(guò)程。 在其被審查并批準(zhǔn)之前,所提議的web應(yīng)用可W被存儲(chǔ)在受信服務(wù)器260的其他web應(yīng)用數(shù) 據(jù)存儲(chǔ)274中。
[0098] 驗(yàn)證模塊268可W包括被配置成用于存儲(chǔ)可執(zhí)行代碼的一個(gè)或多個(gè)存儲(chǔ)器W及一 個(gè)或多個(gè)關(guān)聯(lián)處理器。在一個(gè)實(shí)施方式中,驗(yàn)證模塊268可W自動(dòng)地動(dòng)態(tài)地測(cè)試被提出使用 特權(quán)靜態(tài)被托管的web應(yīng)用(例如,W便包括在經(jīng)驗(yàn)證的web應(yīng)用數(shù)據(jù)存儲(chǔ)272中)的web應(yīng) 用,W確定所提議的web應(yīng)用是否違反將觸發(fā)所提議的web應(yīng)用的排除或所提議的web應(yīng)用 應(yīng)被執(zhí)行的強(qiáng)制性手動(dòng)評(píng)審的一個(gè)或多個(gè)預(yù)定條件。當(dāng)W包格式接收到所提議的web應(yīng)用 時(shí),文件提取器(例如,作為驗(yàn)證模塊268的子元件)可W從該包提取文件。文件提取器可W 提取清單文件,其可W包括諸如web應(yīng)用的名稱、版本和構(gòu)建數(shù)據(jù)的信息W及到包括在包中 的源代碼文件的位置路徑。為了提取web應(yīng)用的源代碼文件,文件提取器可W訪問(wèn)清單文件 W檢索包括源代碼的文件列表。在另一實(shí)施方式中,文件提取器可W掃描包括在web應(yīng)用包 中的文件的文件擴(kuò)展并識(shí)別具有特定于源代碼文件的擴(kuò)展的文件。
[0099] 可W將所接收的web應(yīng)用的源代碼重寫成包括用W在重寫web應(yīng)用的執(zhí)行期間跟 蹤web應(yīng)用的行為的代碼。可W由受信服務(wù)器260來(lái)執(zhí)行web應(yīng)用的重寫代碼。在某些實(shí)施方 式中,可W由在受信服務(wù)器260的虛擬機(jī)內(nèi)運(yùn)行的瀏覽器來(lái)執(zhí)行web應(yīng)用的重寫代碼。雖然 重寫web應(yīng)用在瀏覽器內(nèi)執(zhí)行,但其可W通過(guò)代理連接到網(wǎng)絡(luò)(諸如互聯(lián)網(wǎng))。在重寫web應(yīng) 用執(zhí)行的同時(shí),可W記錄并分析其動(dòng)態(tài)行為。
[0100] 基于對(duì)執(zhí)行重寫web應(yīng)用的結(jié)果的評(píng)估,可W對(duì)關(guān)于所提議的web應(yīng)用是否將違反 與所提議的web應(yīng)用是否應(yīng)被選作特權(quán)靜態(tài)被托管的web應(yīng)用有關(guān)的一個(gè)或多個(gè)預(yù)定條件 做出自動(dòng)確定(即,在沒(méi)有人類輸入或干預(yù)的情況下)。然后,基于對(duì)web應(yīng)用是否違反預(yù)定 條件的結(jié)果的評(píng)估,可W進(jìn)行所提議的web應(yīng)用是否可W是特權(quán)靜態(tài)被托管的web應(yīng)用或者 是否應(yīng)拒絕所提議的web應(yīng)用作為特權(quán)靜態(tài)被托管的web應(yīng)用或者是否將所提議的web應(yīng)用 標(biāo)記為用于進(jìn)一步手動(dòng)評(píng)審的自動(dòng)確定(例如,在沒(méi)有人類輸入或干預(yù)的情況下)。
[0101] 利用腳本語(yǔ)言源代碼(例如,JavaScript)的web應(yīng)用可W接收可W被用作源代碼 中的變量的值的多種輸入。例如JavaScript事件處理機(jī)可執(zhí)行為用戶動(dòng)作的結(jié)果,該用戶 動(dòng)作諸如點(diǎn)擊按鈕或提交當(dāng)代碼被執(zhí)行時(shí)呈現(xiàn)給用戶的表格。另外,諸如,例如, JavaScript可W接受用戶輸入,由用戶的文本輸入作為用于代碼中的變量的值。 化vaScript還可W接受統(tǒng)一資源定位符化化)作為用于代碼中的變量的值,并且在其它標(biāo) 簽或帖上托管的信息(不同于其中執(zhí)行web應(yīng)用的化vaScript代碼的標(biāo)簽或帖)可W通過(guò)帖 內(nèi)通信抽象(諸如IMJ卒片標(biāo)識(shí)符和HTML5的PostMessage操作)來(lái)與web應(yīng)用的化vaScript 代碼通信。到腳本語(yǔ)言代碼的運(yùn)些各種輸入中的所有可W影響web應(yīng)用的動(dòng)態(tài)行為,有時(shí)是 W難W預(yù)見(jiàn)的方式。因此,可W使用受信服務(wù)器260來(lái)自動(dòng)地評(píng)估所提議的web應(yīng)用的所有 或者至少大量的控制路徑,并確定影響由web應(yīng)用在其代碼的執(zhí)行期間采取的控制路徑的 輸入。
[0102] 為此,驗(yàn)證模塊268可W重寫所提議的web應(yīng)用的源代碼W用符號(hào)變量來(lái)替換某些 輸入,使得在重寫web應(yīng)用的執(zhí)行期間傳播符號(hào)信息。然而,每當(dāng)化vaScript操作的操作對(duì) 象是符號(hào)時(shí),可W通過(guò)根據(jù)被用于操作對(duì)象的符號(hào)信息創(chuàng)建用于操作結(jié)果的公式來(lái)模擬該 操作。當(dāng)符號(hào)值被傳播到用于web應(yīng)用的代碼的控制路徑的節(jié)點(diǎn)(從其發(fā)生多個(gè)分支)時(shí),驗(yàn) 證模塊268可W確定將使得代碼執(zhí)行沿著每個(gè)分支傳播的輸入。
[0103] 控制路徑中的節(jié)點(diǎn)可W與源代碼中的控制字相關(guān)聯(lián)。例如,JavaScript代碼中的 控制字許多包括"如果"、"否則"、"用于"、"容易"、"切換"、"默認(rèn)"、"中斷"等??刂谱挚蒞是 特定于被用于web應(yīng)用的源代碼的特定編程語(yǔ)言。因此,在執(zhí)行重寫源代碼的同時(shí),驗(yàn)證模 塊268可W監(jiān)視符號(hào)信息的傳播W確定哪些與所提議的web應(yīng)用的代碼中的變量相對(duì)應(yīng)的 符號(hào)影響被執(zhí)行的代碼所采取的控制路徑。重寫代碼的符號(hào)執(zhí)行可W被用來(lái)完全執(zhí)行所提 議的web應(yīng)用的源代碼中的所有可能控制代碼路徑。
[0104] 例如,在源代碼語(yǔ)句中:
[0105] ifvarv=(x>l)f(a):f(b),
[0106] 可W將詞語(yǔ)"如果"識(shí)別為控制字,并且驗(yàn)證模塊268可W確定當(dāng)?shù)谝槐磉_(dá)式(x>
1)為真時(shí),變量V'被設(shè)置成第二表達(dá)式(v = f (a)),但是如果第一表達(dá)式為假,則"V"被設(shè) 置成第=表達(dá)式(v = f(b))。因此,針對(duì)每個(gè)控制語(yǔ)句或者控制路徑中的節(jié)點(diǎn),驗(yàn)證模塊268 分析web應(yīng)用的動(dòng)態(tài)行為??蒞在下面的圖中W圖形方式呈現(xiàn)上述源代碼語(yǔ)句,其中,"x> 1,,塊錄志巧曲慨的巧占-並曰'V二f 和'V=f (b r塊表示圖的兩個(gè)分支。
[0107;
[0108] 通過(guò)重寫所提議的web應(yīng)用,使得在重寫web應(yīng)用的執(zhí)行期間傳播符號(hào)信息,可W 使用標(biāo)準(zhǔn)化vaScript解釋器來(lái)解釋經(jīng)重寫的web應(yīng)用。換言之,用來(lái)解釋所提議的web應(yīng)用 的化vaScript解釋器還可W被用來(lái)解釋重寫web應(yīng)用的代碼,并且不需要使用特殊解釋器。
[0109] 上述符號(hào)執(zhí)行技術(shù)可W用來(lái)自動(dòng)地確定所提議的web應(yīng)用的代碼中的控制路徑。 例如,然后,所確定的控制路徑中的某些控制路徑可W被模擬客戶端計(jì)算設(shè)備的虛擬機(jī)執(zhí) 行,并且該執(zhí)行的結(jié)果可W被用來(lái)確定所提議的web應(yīng)用是否違反一個(gè)或多個(gè)預(yù)定條件,所 述一個(gè)或多個(gè)預(yù)定條件將阻止所提議的web應(yīng)用作為特權(quán)靜態(tài)被托管的web應(yīng)用或者將要 求在所提議的web應(yīng)用可W是特權(quán)靜態(tài)被托管的web應(yīng)用之前手動(dòng)地審查所提議的web應(yīng) 用。在某些實(shí)施方式中,由于操作所做的事或者由于操作用來(lái)執(zhí)行其功能的輸入,可W將包 括操作的控制路徑標(biāo)識(shí)為潛在地可疑。
[0110] 可W執(zhí)行包括潛在地可疑操作的運(yùn)樣的控制路徑(例如,由虛擬機(jī))W觀察所提議 的web應(yīng)用的動(dòng)態(tài)行為。在web應(yīng)用執(zhí)行的同時(shí),驗(yàn)證模塊268可W監(jiān)視所提議的web應(yīng)用的 動(dòng)態(tài)行為,包括潛在地可疑操作的行為。監(jiān)視所提議的web應(yīng)用的動(dòng)態(tài)行為可W包括記錄由 web應(yīng)用作出的登錄網(wǎng)絡(luò)請(qǐng)求、記錄對(duì)本地儲(chǔ)存器的寫入、記錄由于代碼的執(zhí)行而出現(xiàn)的對(duì) 話框等。
[0111] 由于該符號(hào)執(zhí)行技術(shù)可W被用來(lái)確定輸入,所述輸入確定在web應(yīng)用的執(zhí)行期間 采取哪些特定控制路徑,所W可W快速地且自動(dòng)地識(shí)別引起所提議的web應(yīng)用的執(zhí)行中的 異常或不期望行為的輸入。例如,驗(yàn)證模塊268可列出具有代碼塊的web應(yīng)用,該代碼塊只有 當(dāng)U化輸入等于特定值時(shí)才執(zhí)行,作為在重寫web應(yīng)用的動(dòng)態(tài)執(zhí)行期間將尋求的預(yù)定條件。 運(yùn)樣的web應(yīng)用可在幾乎所有情況下良好地操作,除了當(dāng)TOL輸入等于特定值(例如, "WWW. facebook. com")時(shí),并且然后在異常情況下,web應(yīng)用可執(zhí)行不期望動(dòng)作(例如,發(fā)送 垃圾郵件、發(fā)送不想要的廣告或者自動(dòng)地下載新的web應(yīng)用)。在另一示例中,驗(yàn)證模塊268 可列出具有代碼塊的web應(yīng)用,該代碼塊提示用戶下載并安裝Windows二進(jìn)制文件,作為在 重寫web應(yīng)用的動(dòng)態(tài)執(zhí)行期間將尋求的預(yù)定條件。
[0112] 所提議的web應(yīng)用的重寫還可W被用來(lái)自動(dòng)地檢測(cè)敏感信息跨網(wǎng)絡(luò)從在計(jì)算設(shè)備 上執(zhí)行的web應(yīng)用到第S方站點(diǎn)的泄露??蒞將運(yùn)種方式的所提議的web應(yīng)用的重寫稱為 "污點(diǎn)跟蹤",其中可W自動(dòng)地監(jiān)視信息在web應(yīng)用內(nèi)和外的信息流。例如,可W向在所提議 的web應(yīng)用的代碼中識(shí)別的被污染變量(例如,所接收的和/或存儲(chǔ)用戶的個(gè)人和敏感信息 的變量)添加"污點(diǎn)"性質(zhì)。示例被污染變量是接收諸如"Get化owserBookmarks()"或 "Get化owserCookiesO"的函數(shù)的結(jié)果的變量。被污染變量的其它示例包括接收或存儲(chǔ)用 戶的個(gè)人或敏感信息的那些變量,所述個(gè)人或敏感信息諸如關(guān)于用戶的瀏覽歷史、用戶的 瀏覽器書簽、用戶的cookie、HTML表格、用戶偏好、所保存的密碼、用戶的鍵盤或鼠標(biāo)移動(dòng)、 HTML數(shù)據(jù)、與用戶相關(guān)聯(lián)的ML等的信息。被污染變量可被拷貝、復(fù)制或發(fā)送到另一變量。例 如,在下面的源代碼中,
[0113]
[0114] 變量V'是被污染變量,因?yàn)槠浣邮盏綀?zhí)行代碼的瀏覽器和用戶的書簽的列表。變 量V'也是被污染變量,因?yàn)槠浔恢辽俨糠值卦O(shè)置成變量V'中的數(shù)據(jù)。
[0115] 當(dāng)所提議的web應(yīng)用的腳本語(yǔ)言是化vaScript時(shí),可W將原語(yǔ)數(shù)據(jù)類型重寫為對(duì) 象,并且可W向每個(gè)對(duì)象添加"污點(diǎn)"性質(zhì)。例如,可W將表示原語(yǔ)數(shù)據(jù)類型的 "document. cookie"重寫為對(duì)象,使得操作讀取的結(jié)果(document. cookie)返回對(duì)象而不是 原語(yǔ)串,并且對(duì)象可W包含額外信息,該額外信息將操作的結(jié)果識(shí)別為被污染變量。
[0116] 驗(yàn)證模塊268還可W確定充當(dāng)用于被污染源的匯點(diǎn)(sinks)的源代碼中的操作,并 傳送用戶的個(gè)人或敏感信息。例如,操作XMLHttpRequestO可W充當(dāng)個(gè)人或敏感信息的匯 點(diǎn)。可使用跨起始點(diǎn)XMLHttpRequest許可來(lái)使得web應(yīng)用或擴(kuò)展應(yīng)用能夠請(qǐng)求對(duì)在其起始 點(diǎn)外的遠(yuǎn)程服務(wù)器的訪問(wèn)。所提議的web應(yīng)用的重寫代碼可W被執(zhí)行,并且可W隨著代碼執(zhí) 行而通過(guò)代碼的操作傳播污點(diǎn)性質(zhì)。驗(yàn)證模塊268可W監(jiān)視被污染源何時(shí)通過(guò)匯點(diǎn),使得信 息跨網(wǎng)絡(luò)從web應(yīng)用泄露。基于對(duì)執(zhí)行web應(yīng)用的重寫代碼的結(jié)果的評(píng)估,驗(yàn)證模塊268可W 進(jìn)行web應(yīng)用是否違反一個(gè)或多個(gè)預(yù)定條件(例如,與被污染變量相關(guān)聯(lián)的個(gè)人用戶信息是 否被跨網(wǎng)絡(luò)從web應(yīng)用被泄露)的自動(dòng)確定。然后,基于web應(yīng)用是否違反預(yù)定條件中的一個(gè) 或多個(gè)的確定,驗(yàn)證模塊268可W將web應(yīng)用與分?jǐn)?shù)相關(guān)聯(lián)。該分?jǐn)?shù)然后可W被用來(lái)自動(dòng)地 確定web應(yīng)用是否可W是特權(quán)靜態(tài)被托管的web應(yīng)用、是否抑制web應(yīng)用成為特權(quán)靜態(tài)被托 管的web應(yīng)用或者是否標(biāo)記web應(yīng)用W用于手動(dòng)檢查。
[0117] 由于分析所提議的web應(yīng)用的動(dòng)態(tài)行為的web應(yīng)用審查過(guò)程的自動(dòng)化性質(zhì),如果所 提議的web應(yīng)用不包括已被預(yù)定為過(guò)于冒險(xiǎn)的代碼,則在開(kāi)發(fā)者商人請(qǐng)求將應(yīng)用列出之后 所提議的web應(yīng)用可W非??焖俚爻蔀樘貦?quán)靜態(tài)被托管的web應(yīng)用。例如,可W在已經(jīng)在受 信服務(wù)器260處接收到請(qǐng)求之后小于10分鐘、小于5分鐘、小于3分鐘或者小于1分鐘內(nèi)將所 提議的web應(yīng)用選作特權(quán)靜態(tài)被托管的web應(yīng)用。用來(lái)在開(kāi)發(fā)者商人已經(jīng)請(qǐng)求將web應(yīng)用列 出之后可W列出web應(yīng)用W便分發(fā)給消費(fèi)者的速度可W為商人和開(kāi)發(fā)者提供令人滿意的體 驗(yàn)。在某些實(shí)施方式中,與web應(yīng)用相關(guān)聯(lián)的請(qǐng)求許可可W與一個(gè)或多個(gè)預(yù)定許可匹配。如 果所請(qǐng)求許可與一個(gè)或多個(gè)預(yù)定許可匹配,則在將所提議的web應(yīng)用設(shè)置為特權(quán)靜態(tài)主機(jī) web應(yīng)用之前將所提議的web應(yīng)用標(biāo)記為用于手動(dòng)審查過(guò)程。
[0118] 在某些實(shí)施方式中,可執(zhí)行web應(yīng)用達(dá)一段時(shí)間,或者在沒(méi)有用W利用客戶端設(shè)備 的所述至少一個(gè)本地資源的許可的情況下使用。然后,在該時(shí)間段或使用之后,可對(duì)web應(yīng) 用授予用W利用客戶端設(shè)備的所述至少一個(gè)本地資源的許可。W運(yùn)種方式,一旦開(kāi)發(fā)在web 應(yīng)用的安全方面的某種置信度,用戶可W授予許可。例如,特權(quán)靜態(tài)主機(jī)web應(yīng)用可與編輯 照片相關(guān)聯(lián)。最初,可不對(duì)應(yīng)用給定用W將已編輯(已改變)照片本地存儲(chǔ)(例如,到本地硬 盤驅(qū)動(dòng)或閃速驅(qū)動(dòng))的許可。在用戶利用照片編輯應(yīng)用達(dá)一段時(shí)間或一定次數(shù)之后,用戶可 信任應(yīng)用并對(duì)作為特權(quán)靜態(tài)主機(jī)web應(yīng)用的照片編輯應(yīng)用給定用W本地地存儲(chǔ)已編輯(已 改變)照片的許可。
[0119] 作為另一示例,例如,可在將web應(yīng)用購(gòu)買為被打包的web應(yīng)用之前在一定的試用 時(shí)段內(nèi)利用web應(yīng)用。例如,使用數(shù)字市場(chǎng)(上文所述),客戶端設(shè)備的用戶可捜索期望的web 應(yīng)用。用典型的被打包的應(yīng)用,用戶必須在使用之前下載整個(gè)應(yīng)用。此下載可能花費(fèi)大量的 時(shí)間和/或利用大量的資源。然而,用特權(quán)靜態(tài)被托管的web應(yīng)用,用戶可使用web應(yīng)用,并判 定web應(yīng)用滿足還是不滿足用戶的需要。因此,在網(wǎng)頁(yè)具有特權(quán)靜態(tài)主機(jī)web應(yīng)用的試驗(yàn)之 后,用戶可W選擇不將web應(yīng)用安裝為被打包的應(yīng)用。相反地,如果用戶喜歡該web應(yīng)用,貝U 用戶可W下載并安裝所試驗(yàn)的web應(yīng)用的被打包的web應(yīng)用版本。通過(guò)使用特權(quán)靜態(tài)主機(jī) web應(yīng)用,用戶可W具有特權(quán)靜態(tài)主機(jī)web應(yīng)用和被打包的應(yīng)用表現(xiàn)相同的某種保證。此"試 驗(yàn)"實(shí)施方式可包括或者可不包括具有用W利用客戶端設(shè)備的本地資源的許可的縮減或有 限集的應(yīng)用的執(zhí)行。
[0120] 如將認(rèn)識(shí)到的,可將圖2中所圖示的系統(tǒng)200(和/或其元件)實(shí)現(xiàn)為下面關(guān)于圖7所 述的通用計(jì)算機(jī)設(shè)備700和/或通用移動(dòng)計(jì)算機(jī)設(shè)備750的元件和/或擴(kuò)展。替選地或另外, 可在與通用計(jì)算機(jī)設(shè)備700和/或通用移動(dòng)計(jì)算機(jī)設(shè)備750分開(kāi)的具有下面關(guān)于通用計(jì)算機(jī) 設(shè)備700和/或通用移動(dòng)計(jì)算機(jī)設(shè)備750所述的某些或所有特征的系統(tǒng)中實(shí)現(xiàn)圖2中所圖示 的系統(tǒng)200。
[0121] 如將認(rèn)識(shí)到的,可將圖2中所圖示的系統(tǒng)200(和/或其元件)實(shí)現(xiàn)為下面關(guān)于圖7所 述的通用計(jì)算機(jī)設(shè)備700和/或通用移動(dòng)計(jì)算機(jī)設(shè)備750的元件和/或擴(kuò)展。替選地或另外, 可在與通用計(jì)算機(jī)設(shè)備700和/或通用移動(dòng)計(jì)算機(jī)設(shè)備750分開(kāi)的具有下面關(guān)于通用計(jì)算機(jī) 設(shè)備700和/或通用移動(dòng)計(jì)算機(jī)設(shè)備750所述的某些或所有特征的系統(tǒng)中實(shí)現(xiàn)圖2中所圖示 的系統(tǒng)200。
[0122] 圖7示出了可與運(yùn)里所述的技術(shù)一起使用的通用計(jì)算機(jī)設(shè)備700和通用移動(dòng)計(jì)算 機(jī)設(shè)備750的示例。計(jì)算設(shè)備700旨在表示各種形式的數(shù)字式計(jì)算機(jī),諸如膝上型計(jì)算機(jī)、臺(tái) 式計(jì)算機(jī)、工作站、個(gè)人數(shù)字助理、服務(wù)器、刀片服務(wù)器、主機(jī)及其它適當(dāng)計(jì)算機(jī)。計(jì)算設(shè)備 750旨在表示各種形式的移動(dòng)設(shè)備,諸如個(gè)人數(shù)字助理、蜂窩式電話、智能電話及其它類似 計(jì)算設(shè)備。運(yùn)里所示的組件、其連接和關(guān)系W及其功能旨在僅僅是示例性的,并不旨在限制 在本文中描述要求保護(hù)的本發(fā)明的實(shí)施方式。
[0123] 計(jì)算設(shè)備700包括處理器702、存儲(chǔ)器704、存儲(chǔ)設(shè)備706、連接到存儲(chǔ)器704和高速 擴(kuò)展端口710的高速接口 W及連接到低速總線714和存儲(chǔ)設(shè)備706的低速接口712。組件702、 704、706、708、710和712中的每一個(gè)被使用各種總線互連,并且可在公共母板上或視情況^ 其它方式安裝。處理器702可W處理用于在計(jì)算設(shè)備700內(nèi)執(zhí)行的指令,包括存儲(chǔ)在存儲(chǔ)器 704中或存儲(chǔ)設(shè)備706上W在外部輸入/輸出設(shè)備(諸如被禪合到高速接口 708的顯示器716) 上顯示用于GUI的圖形信息。在其它實(shí)施方式中,可視情況使用多個(gè)處理器和/或多個(gè)總線 W及多個(gè)存儲(chǔ)器和存儲(chǔ)器類型。并且,可連接多個(gè)計(jì)算設(shè)備700,每個(gè)設(shè)備提供所需操作的 部分(例如,作為服務(wù)器群、一組刀片服務(wù)器或多處理器系統(tǒng))。
[0124] 存儲(chǔ)器704存儲(chǔ)計(jì)算設(shè)備700內(nèi)的信息。在一個(gè)實(shí)施方式中,存儲(chǔ)器704是易失性存 儲(chǔ)器單元。在另一實(shí)施方式中,存儲(chǔ)器704是非易失性存儲(chǔ)器單元。存儲(chǔ)器704也可W是其他 形式的非暫時(shí)計(jì)算機(jī)可讀介質(zhì),諸如磁盤或光盤。
[0125] 存儲(chǔ)設(shè)備706能夠?yàn)橛?jì)算設(shè)備700提供大容量存儲(chǔ)。在一個(gè)實(shí)施方式中,存儲(chǔ)設(shè)備 706可W是或包含計(jì)算機(jī)可讀介質(zhì),諸如軟盤設(shè)備、硬盤設(shè)備、光盤設(shè)備或磁帶設(shè)備、閃速存 儲(chǔ)器或其它類似的固態(tài)存儲(chǔ)器設(shè)備或設(shè)備陣列,包括在存儲(chǔ)區(qū)域網(wǎng)絡(luò)或其它配置中的設(shè) 備??蒞在信息載體中有形地體現(xiàn)計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)程序產(chǎn)品還可包含在被執(zhí)行時(shí) 執(zhí)行一個(gè)或多個(gè)方法(諸如上文所述的那些)的指令。信息載體是計(jì)算機(jī)或機(jī)器可讀介質(zhì), 諸如存儲(chǔ)器704、存儲(chǔ)設(shè)備706或處理器702上的存儲(chǔ)器。
[0126] 高速控制器708管理用于計(jì)算設(shè)備700的帶寬密集操作,而低速控制器712管理較 低帶寬密集操作。功能的運(yùn)樣的分配可W僅僅是示例性的。在一個(gè)實(shí)施方式中,高速控制器 708被禪合到存儲(chǔ)器704、顯示器716(例如,通過(guò)圖形處理器或加速器)W及高速擴(kuò)展端口 710,其可接受各種擴(kuò)展卡(未示出)。在本實(shí)施方式中,低速控制器712被禪合到存儲(chǔ)設(shè)備 706和低速擴(kuò)展端口 714。例如,可包括各種通信端口(例如,USB、藍(lán)牙、W太網(wǎng)、無(wú)線W太網(wǎng) 等)的低速擴(kuò)展端口可通過(guò)網(wǎng)絡(luò)適配器禪合到一個(gè)或多個(gè)輸入/輸出設(shè)備,諸如鍵盤、指針 設(shè)備、掃描儀或聯(lián)網(wǎng)設(shè)備,諸如交換機(jī)或路由器。
[0127] 可用許多不同的形式來(lái)實(shí)現(xiàn)計(jì)算設(shè)備700,如圖中所示。例如,可將其實(shí)現(xiàn)為標(biāo)準(zhǔn) 服務(wù)器720或者在一組運(yùn)樣的服務(wù)器中實(shí)現(xiàn)多次。還可將其實(shí)現(xiàn)為機(jī)架服務(wù)器系統(tǒng)724的一 部分。另外,可將其在諸如膝上型計(jì)算機(jī)722的個(gè)人計(jì)算機(jī)中實(shí)現(xiàn)。替選地,可將來(lái)自計(jì)算設(shè) 備700的組件與移動(dòng)設(shè)備(未示出)(諸如設(shè)備750)中的其它組件組合。運(yùn)樣的設(shè)備中的每一 個(gè)可包含計(jì)算設(shè)備700、750中的一個(gè)或多個(gè),并且整個(gè)系統(tǒng)可由相互通信的多個(gè)計(jì)算設(shè)備 700、750 構(gòu)成。
[01%]計(jì)算設(shè)備750包括處理器752、存儲(chǔ)器764、諸如顯示器754的輸入/輸出設(shè)備、通信 接口 766W及收發(fā)器768W及其它組件。設(shè)備750還可提供有存儲(chǔ)設(shè)備,諸如微型驅(qū)動(dòng)或其它 設(shè)備,W提供附加存儲(chǔ)。組件750、752、764、754、766和768中的每一個(gè)被使用各種總線互連, 并且組件中的多個(gè)可在公共母板上或視情況W其它方式安裝。
[0129] 處理器752可W執(zhí)行計(jì)算設(shè)備750內(nèi)的指令,包括存儲(chǔ)在存儲(chǔ)器764中的指令。可將 處理器實(shí)現(xiàn)為包括單獨(dú)和多個(gè)模擬和數(shù)字處理器的忍片的忍片集。例如,處理器可提供設(shè) 備750的其它組件的協(xié)作,所述其它組件諸如用戶接口的控件、由設(shè)備750運(yùn)行的應(yīng)用W及 設(shè)備750的無(wú)線通信。
[0130] 處理器752可通過(guò)控制接口 758和被禪合到顯示器754的顯示接口 756與用戶通信。 例如,顯示器754可W是TFTLCD(薄膜晶體管液晶顯示器)或化抓(有機(jī)發(fā)光二極管)顯示器 或其它適當(dāng)?shù)娘@示技術(shù)。顯示接口 756可包括用于驅(qū)動(dòng)顯示器754W向用戶呈現(xiàn)圖形及其它 信息的適當(dāng)電路??刂平涌?758可從用戶接收命令并對(duì)其進(jìn)行轉(zhuǎn)換W便提交到處理器752。 另外,可提供與處理器752通信的外部接口 762,從而使得能夠?qū)崿F(xiàn)設(shè)備750與其它設(shè)備的近 區(qū)域通信。例如,外部接口 762可在某些實(shí)施方式中提供有線通信或者在其它實(shí)施方式中提 供無(wú)線通信,并且還可使用多個(gè)接口。
[0131] 存儲(chǔ)器764存儲(chǔ)計(jì)算設(shè)備750內(nèi)的信息??蒞將存儲(chǔ)器764實(shí)現(xiàn)為計(jì)算機(jī)可讀介質(zhì)、 易失性存儲(chǔ)器單元或非易失性存儲(chǔ)器單元中的一個(gè)或多個(gè)。例如,還可提供擴(kuò)展存儲(chǔ)器774 并通過(guò)擴(kuò)展接口 772將其連接到設(shè)備750,該擴(kuò)展接口 772可包括SIMM(單列直插式存儲(chǔ)器模 塊)卡接口。運(yùn)樣的擴(kuò)展存儲(chǔ)器774可為設(shè)備750提供額外存儲(chǔ)空間,或者還存儲(chǔ)用于設(shè)備 750的應(yīng)用或其它信息。具體地,擴(kuò)展存儲(chǔ)器774可包括用W執(zhí)行或補(bǔ)充上述過(guò)程的指令,并 且也可包括安全信息。因此,例如,可將擴(kuò)展存儲(chǔ)器774提供為用于設(shè)備750的安全模塊,并 且可用許可設(shè)備750的安全使用的指令進(jìn)行編程。另外,可經(jīng)由SIMM卡來(lái)提供運(yùn)樣的應(yīng)用, 連同附加信息一起,諸如W不可入侵方式在SIMM卡上放置識(shí)別信息。
[0132] 例如,存儲(chǔ)器可包括閃速存儲(chǔ)器和/或NVRAM存儲(chǔ)器,如下面所討論的。在一個(gè)實(shí)施 方式中,在信息載體中有形地體現(xiàn)計(jì)算機(jī)程序產(chǎn)品。該計(jì)算機(jī)程序產(chǎn)品包含指令,該指令在 被執(zhí)行時(shí)執(zhí)行一個(gè)或多個(gè)方法,諸如上文所述的那些。例如,該信息載體是計(jì)算機(jī)或機(jī)器可 讀介質(zhì),諸如存儲(chǔ)器764、擴(kuò)展存儲(chǔ)器774或者可通過(guò)收發(fā)器768或外部接口 762接收的處理 器752上的存儲(chǔ)器。
[0133] 設(shè)備750可通過(guò)通信接口 766來(lái)無(wú)線地進(jìn)行通信,該通信接口 766在必要時(shí)可包括 數(shù)字信號(hào)處理電路。通信接口 766可提供各種模式或協(xié)議下的通信,諸如GSM語(yǔ)音呼叫、SMS、 EMS或MMS通訊、LTE、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS及其它。例如,運(yùn)樣的通信可通 過(guò)射頻收發(fā)器768發(fā)生。另外,近程通信可諸如使用藍(lán)牙、WiFi或其它運(yùn)樣的收發(fā)器(未示 出)發(fā)生。另外,GPS(全球定位系統(tǒng))接收器模塊770可向設(shè)備750提供附加導(dǎo)航和/或位置相 關(guān)無(wú)線數(shù)據(jù),其可視情況被在設(shè)備750上運(yùn)行的應(yīng)用使用。
[0134] 設(shè)備750還可使用音頻編解碼器760W可聽(tīng)方式通信,其可從用戶接收說(shuō)出的信息 并將其轉(zhuǎn)換成可用數(shù)字信息。例如,音頻編解碼器760可同樣地在設(shè)備750的收集中諸如通 過(guò)揚(yáng)聲器來(lái)為用戶生成可聽(tīng)聲音。運(yùn)樣的聲音可包括來(lái)自語(yǔ)音電話呼叫的聲音,可包括所 記錄的聲音(例如,語(yǔ)音消息、音樂(lè)文件等),并且還可包括由在設(shè)備750上操作的應(yīng)用生成 的聲音。
[0135] 可W許多不同的形式來(lái)實(shí)現(xiàn)計(jì)算設(shè)備750,如圖中所示。例如,可將其實(shí)現(xiàn)為蜂窩 式電話780。還可將其實(shí)現(xiàn)為智能電話782、個(gè)人數(shù)字助理或其它類似移動(dòng)設(shè)備的一部分。
[0136] 在運(yùn)方面,可W用數(shù)字式電子電路、集成電路、特殊設(shè)計(jì)ASIC(專用集成電路)、計(jì) 算機(jī)硬件、固件、軟件和/或其組合來(lái)實(shí)現(xiàn)運(yùn)里所述的系統(tǒng)和技術(shù)的各種實(shí)施方式。運(yùn)些不 同實(shí)施方式可W包括用一個(gè)或多個(gè)計(jì)算機(jī)程序來(lái)實(shí)現(xiàn),其可W在可編程系統(tǒng)上執(zhí)行和/或 解釋,所述可W編程系統(tǒng)包括可W W是通用或?qū)S玫摹⒈欢U合W從存儲(chǔ)系統(tǒng)接收數(shù)據(jù)指令 W及向其發(fā)射數(shù)據(jù)和指令的至少一個(gè)可W編程處理器、至少一個(gè)輸入設(shè)備W及至少一個(gè)輸 出設(shè)備。
[0137] 運(yùn)些計(jì)算機(jī)程序(也稱為程序、軟件、軟件應(yīng)用或代碼)包括用于可編程處理器的 機(jī)器指令,并且可W用高級(jí)面向過(guò)程和/或面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言和/或用匯編/機(jī)器語(yǔ)言 來(lái)實(shí)現(xiàn)。如本文所使用的,術(shù)語(yǔ)"機(jī)器可讀介質(zhì)"、"計(jì)算機(jī)可讀介質(zhì)"指的是計(jì)算機(jī)程序產(chǎn) 品、裝置和/或設(shè)備(例如,磁盤、光盤、存儲(chǔ)器W及可編程邏輯設(shè)備(PLD)),其被用來(lái)向可編 程處理器提供機(jī)器指令和/或數(shù)據(jù),包括接收機(jī)器指令作為機(jī)器可讀信號(hào)的機(jī)器可讀介質(zhì)。 術(shù)語(yǔ)"機(jī)器可讀信號(hào)"指的是被用來(lái)向可編程處理器提供機(jī)器指令和/或數(shù)據(jù)的任何信號(hào)。
[0138] 為了提供與用戶的交互,可W在具有用于向用戶顯示信息的顯示設(shè)備(例如,CRT (陰極射線管)或LCD(液晶顯示器)監(jiān)視器)和用戶可W用來(lái)向計(jì)算機(jī)提供輸入的鍵盤和指 針設(shè)備(例如,鼠標(biāo)或軌跡球)的計(jì)算機(jī)上實(shí)現(xiàn)運(yùn)里所述的系統(tǒng)和技術(shù)。也可W使用其它種 類的設(shè)備來(lái)提供與用戶的交互;例如,提供給用戶的反饋可W是任何形式的感覺(jué)反饋(例 如,視覺(jué)反饋、聽(tīng)覺(jué)反饋或觸覺(jué)反饋);并且可W W任何形式接收來(lái)自用戶的輸入,包括聲 學(xué)、話音或觸覺(jué)輸入。
[0139] 可W在計(jì)算系統(tǒng)中實(shí)現(xiàn)運(yùn)里所述的系統(tǒng)和技術(shù),該計(jì)算系統(tǒng)包括后端組件(例如, 作為數(shù)據(jù)服務(wù)器),或者其包括中間件組件(例如,應(yīng)用服務(wù)器),或者其包括前端組件(例 如,客戶端計(jì)算機(jī),其具有用戶可W通過(guò)其與運(yùn)里所述的系統(tǒng)和技術(shù)的實(shí)施方式相交互的 圖形用戶界面或web瀏覽器)或運(yùn)樣的后端、中間件或前端組件的任何組合。可W W用數(shù)字 數(shù)據(jù)通信的任何形式或介質(zhì)(例如,通信網(wǎng)絡(luò))將系統(tǒng)的組件互連。通信網(wǎng)絡(luò)的示例包括局 域網(wǎng)("LAN")、廣域網(wǎng)("WAN"似及互聯(lián)網(wǎng)。
[0140] 計(jì)算系統(tǒng)可W包括客戶端和服務(wù)器??蛻舳撕头?wù)器一般地相互遠(yuǎn)離并通常通過(guò) 通信網(wǎng)絡(luò)進(jìn)行交互??蛻魴C(jī)和服務(wù)器的關(guān)系借助于計(jì)算機(jī)程序產(chǎn)生。
[0141] 將上述示例實(shí)施例中的某些描述為被描述為流程圖的過(guò)程或方法。雖然流程圖可 將操作描述為連續(xù)過(guò)程,但可許多操作可并行地、并發(fā)地或同時(shí)地執(zhí)行。另外,可重新布置 操作的順序。過(guò)程在其操作完成時(shí)可終止,但是也可具有圖中未包括的附加步驟。該過(guò)程可 對(duì)應(yīng)于方法、功能、規(guī)程、子例程、子程序等。
[0142] 可通過(guò)硬件、軟件、固件、中間件、微代碼、硬件描述語(yǔ)言或其任何組合來(lái)實(shí)現(xiàn)上文 所討論的方法,通過(guò)流程圖舉圖示了其中的某些。當(dāng)用軟件、固件、中間件或微代碼來(lái)實(shí)現(xiàn) 時(shí),可將執(zhí)行必要任務(wù)的程序或代碼段存儲(chǔ)在諸如存儲(chǔ)介質(zhì)和/或非暫時(shí)計(jì)算機(jī)可讀存儲(chǔ) 介質(zhì)的機(jī)器或計(jì)算機(jī)可讀介質(zhì)中。處理器(例如,在娃或神化嫁基底上形成的處理器)可執(zhí) 行所需任務(wù)。
[0143] 出于描述示例實(shí)施例的目的,在本文中公開(kāi)的特定結(jié)構(gòu)和功能細(xì)節(jié)僅僅是代表性 的。然而,可用許多替選形式來(lái)體現(xiàn)示例實(shí)施例,并且不應(yīng)將其理解為僅限于本文所闡述的 實(shí)施例。
[0144] 將理解的是雖然在本文中可使用術(shù)語(yǔ)第一、第二等來(lái)描述各種元件,但運(yùn)些元件 不應(yīng)受到運(yùn)些術(shù)語(yǔ)的限制。運(yùn)些術(shù)語(yǔ)僅用來(lái)將一個(gè)元件與另一個(gè)區(qū)別開(kāi)。例如,在不脫離示 例實(shí)施例的范圍的情況下,可W將第一元件稱為第二元件,同樣地,可W將第二元件稱為第 一元件。如本文所使用的術(shù)語(yǔ)"和/或"包括關(guān)聯(lián)開(kāi)列項(xiàng)目中的一個(gè)或多個(gè)的任何和所有組 厶 1=1 O
[0145] 將理解的是當(dāng)將元件稱為"連接"或"禪合"到另一元件時(shí),其可W被直接地連接或 禪合到該另一元件或者可存在中間元件。相反地,當(dāng)將元件被稱為"直接地被連接"或"直接 地被禪合"到另一元件時(shí),不存在中間元件。應(yīng)W類似方式解釋用來(lái)描述元件之間的關(guān)系的 其它詞語(yǔ)(例如,巧...之阿'對(duì)比"直接地化..之間"、"鄰近于"或"直接地鄰近于'等)。
[0146] 在本文中使用的術(shù)語(yǔ)僅僅是出于描述特定實(shí)施例的目的且并不旨在限制示例實(shí) 施例。如本文所使用的單數(shù)形式"一(a)"、"一(an)"和"所述(the)"旨在也包括復(fù)數(shù)形式,除 非上下文另外清楚地指明。將進(jìn)一步理解的是術(shù)語(yǔ)"包括"和/或"包含"當(dāng)在本文中使用時(shí) 指定所述特征、整體、步驟、操作、元件和/或組件的存在,但不排除一個(gè)或多個(gè)其它特征、整 體、步驟、操作、元件、組件和/或其群組的存在或添加。
[0147] 還應(yīng)注意到的是在某些替選實(shí)施方式中,所述功能/動(dòng)作可不按照?qǐng)D中所述的順 序發(fā)生。例如,取決于設(shè)及到的功能/動(dòng)作,連續(xù)地示出的兩個(gè)圖實(shí)際上可基本上同時(shí)地執(zhí) 行或者有時(shí)被按照相反順序執(zhí)行。
[0148] 除非另外定義,本文所使用的所有術(shù)語(yǔ)(包括技術(shù)和科學(xué)術(shù)語(yǔ))具有如示例實(shí)施例 所屬技術(shù)領(lǐng)域的技術(shù)人員一般地理解的相同意義。將進(jìn)一步理解的是應(yīng)將術(shù)語(yǔ)(例如,在一 般使用的詞典中所定義的那些)理解為具有與其在相關(guān)技術(shù)的背景中的意義一致的意義, 并且不應(yīng)在理想化或過(guò)度形式化的意義上解釋,除非在本文中明確地運(yùn)樣定義。
[0149] 在對(duì)計(jì)算機(jī)存儲(chǔ)器內(nèi)的數(shù)據(jù)位的操作的軟件或算法和符號(hào)表示方面提出了上述 示例實(shí)施例和對(duì)應(yīng)詳細(xì)描述的部分。運(yùn)些描述和表示是本領(lǐng)域的技術(shù)人員用來(lái)向本領(lǐng)域的 其他技術(shù)人員有效地傳達(dá)其工作的主旨的一些。將算法(如在運(yùn)里所使用術(shù)語(yǔ)并且如其一 般地使用的那樣)設(shè)想為是導(dǎo)致期望結(jié)果的步驟的自相一致序列。該步驟是要求物理量的 物理操縱的那些。通常但不一定,運(yùn)些量采取能夠被存儲(chǔ)、傳送、組合、比較W及另外操縱的 光、電或磁信號(hào)的形式。將運(yùn)些信號(hào)稱為位、值、元素、符號(hào)、字符、項(xiàng)、數(shù)等有時(shí)已被證明是 方便的,主要是由于常見(jiàn)使用的原因。
[0150] 在上述說(shuō)明性實(shí)施例中,對(duì)可實(shí)現(xiàn)為程序模塊或功能過(guò)程的操作的動(dòng)作和符號(hào)表 示(例如,W流程圖的形式)的提及包括例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等,其執(zhí)行特定任 務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型,并且可使用現(xiàn)有結(jié)構(gòu)元件處的現(xiàn)有硬件來(lái)描述和/或?qū)崿F(xiàn)。運(yùn) 樣的現(xiàn)有硬件可包括一個(gè)或多個(gè)中央處理單元(CPU)、數(shù)字信號(hào)處理器(DSP)、專用集成電 路、現(xiàn)場(chǎng)可編程口陣列(FPGA)計(jì)算機(jī)等。
[0151] 然而,應(yīng)記住的是所有運(yùn)些和類似術(shù)語(yǔ)將與適當(dāng)?shù)匚锢砹肯嚓P(guān)聯(lián),并且僅僅是應(yīng) 用于運(yùn)些量的方便標(biāo)記。除非另外具體地?cái)⑹?,或者從本討論顯而易見(jiàn),諸如"處理"或"運(yùn) 算"或"計(jì)算"、"確定"或"顯示"等術(shù)語(yǔ)指代計(jì)算機(jī)系統(tǒng)或類似電子計(jì)算設(shè)備的動(dòng)作和過(guò)程, 其操縱被表示為計(jì)算機(jī)系統(tǒng)的寄存器和存儲(chǔ)器內(nèi)的物理、電子量的數(shù)據(jù)并將其變換成同樣 地表示為計(jì)算機(jī)系統(tǒng)存儲(chǔ)器或寄存器或其它運(yùn)樣的信息存儲(chǔ)、傳輸或顯示設(shè)備內(nèi)的物理量 的其它數(shù)據(jù)。
[0152] 還請(qǐng)注意,示例實(shí)施例的軟件實(shí)現(xiàn)方面通常是在某種形式的非暫時(shí)程序存儲(chǔ)介質(zhì) 上編碼或者在某種類型的傳輸介質(zhì)上實(shí)現(xiàn)。程序存儲(chǔ)介質(zhì)可W是磁性(例如,軟盤或硬盤驅(qū) 動(dòng))或光學(xué)的(例如,光盤只讀存儲(chǔ)器或乂DROM"),并且可W是只讀的或隨機(jī)存取的。類似 地,傳輸介質(zhì)可W是扭絞線對(duì)、同軸電纜、光纖或本領(lǐng)域已知的某種其它適當(dāng)傳輸介質(zhì)。示 例實(shí)施例不受任何給定實(shí)施方式的運(yùn)些方面的限制。
[0153] 最后,還應(yīng)注意的是雖然附圖闡述了本文所述的特征的特定組合,但本公開(kāi)的范 圍不限于此后要求保護(hù)的特定組合,而是替代地?cái)U(kuò)展至包含在本文中公開(kāi)的特征或?qū)嵤├?的任何組合,無(wú)論運(yùn)時(shí)是否已具體地在附圖中枚舉了該特定組合。
【主權(quán)項(xiàng)】
1. 一種方法,包括: 在受信服務(wù)器處接收靜態(tài)web應(yīng)用; 確認(rèn)所述靜態(tài)web應(yīng)用的保證特性;以及 一旦成功確認(rèn)所述靜態(tài)web應(yīng)用,提供經(jīng)由統(tǒng)一資源定位符URL的對(duì)所述靜態(tài)web應(yīng)用 的訪問(wèn),所述統(tǒng)一資源定位符URL識(shí)別在公共互聯(lián)網(wǎng)內(nèi)的受信服務(wù)器位置處的所述靜態(tài)web 應(yīng)用,并且能被用來(lái)從在客戶端設(shè)備上運(yùn)行的瀏覽器導(dǎo)航到所述靜態(tài)web應(yīng)用,其中 所述靜態(tài)web應(yīng)用當(dāng)在所述客戶端設(shè)備上運(yùn)行的所述瀏覽器上被執(zhí)行時(shí),被授予用以 在由所述瀏覽器對(duì)所述靜態(tài)web應(yīng)用的執(zhí)行期間利用所述客戶端設(shè)備的本地資源的至少一 個(gè)許可,并且 一旦接收到對(duì)所述靜態(tài)web應(yīng)用的對(duì)象的改變,在使得對(duì)所述對(duì)象的所述改變經(jīng)由所 述URL可訪問(wèn)之前作為整體來(lái)執(zhí)行對(duì)所述靜態(tài)web應(yīng)用的所述保證特性的所述確認(rèn)。2. 根據(jù)權(quán)利要求1所述的方法,其中,所述靜態(tài)web應(yīng)用是基于在先驗(yàn)證和審查過(guò)程而 被授予所述至少一個(gè)許可的,所述在先驗(yàn)證和審查過(guò)程基于所述web應(yīng)用設(shè)法聲明的至少 一個(gè)許可。3. 根據(jù)權(quán)利要求1或2所述的方法,其中,所述靜態(tài)web應(yīng)用是基于在先惡意排名和閾值 而被授予所述至少一個(gè)許可的。4. 根據(jù)權(quán)利要求1至3中的任一項(xiàng)所述的方法,其中,所述靜態(tài)web應(yīng)用包含在所述客戶 端計(jì)算設(shè)備上執(zhí)行所述應(yīng)用所需的所有資源,并且其中,由所述客戶端計(jì)算設(shè)備執(zhí)行所述 應(yīng)用所需的代碼并不是動(dòng)態(tài)生成的。5. 根據(jù)權(quán)利要求1至4中的任一項(xiàng)所述的方法,進(jìn)一步包括: 在所述受信服務(wù)器上托管所述靜態(tài)web應(yīng)用,其中,所述托管包括向web爬取器提供對(duì) 所述靜態(tài)web應(yīng)用以及與所述靜態(tài)web應(yīng)用相關(guān)聯(lián)的代碼的訪問(wèn)。6. 根據(jù)權(quán)利要求1至5中的任一項(xiàng)所述的方法,其中,確認(rèn)所述靜態(tài)web應(yīng)用的保證特性 包括驗(yàn)證所述靜態(tài)web應(yīng)用的對(duì)象不包括被識(shí)別為以下至少一個(gè)的對(duì)象:惡意軟件、病毒以 及特洛伊木馬。7. 根據(jù)權(quán)利要求1至6中的任一項(xiàng)所述的方法,其中,確認(rèn)所述靜態(tài)web應(yīng)用的保證特性 包括驗(yàn)證所述靜態(tài)web應(yīng)用的開(kāi)發(fā)者的可信度排名。8. 根據(jù)權(quán)利要求1至7中的任一項(xiàng)所述的方法,其中,更新所述靜態(tài)web應(yīng)用包括用經(jīng)重 新確認(rèn)的整個(gè)應(yīng)用替換所述靜態(tài)web應(yīng)用的對(duì)象。9. 根據(jù)權(quán)利要求1至8中的任一項(xiàng)所述的方法,其中,由所述瀏覽器在對(duì)所述靜態(tài)web應(yīng) 用執(zhí)行期間請(qǐng)求利用所述客戶端設(shè)備的本地資源的至少一個(gè)許可之前,在沒(méi)有利用所述客 戶端設(shè)備的本地資源的許可的情況下,所述靜態(tài)web應(yīng)用在所述客戶端設(shè)備上執(zhí)行。10. -種服務(wù)器,包括: 存儲(chǔ)器,所述存儲(chǔ)器被配置成存儲(chǔ)靜態(tài)web應(yīng)用; 驗(yàn)證模塊,所述驗(yàn)證模塊被配置成確認(rèn)所述靜態(tài)web應(yīng)用的保證特性;以及 應(yīng)用服務(wù)器,一旦成功確認(rèn)所述靜態(tài)web應(yīng)用,所述應(yīng)用服務(wù)器被配置成提供經(jīng)由統(tǒng)一 資源定位符URL的對(duì)所述靜態(tài)web應(yīng)用的訪問(wèn),所述統(tǒng)一資源定位符URL識(shí)別在公共互聯(lián)網(wǎng) 內(nèi)的受信服務(wù)器位置處的所述靜態(tài)web應(yīng)用,并且能被用來(lái)從在客戶端設(shè)備上運(yùn)行的瀏覽 器導(dǎo)航到所述靜態(tài)web應(yīng)用,其中, 所述靜態(tài)web應(yīng)用當(dāng)在所述客戶端設(shè)備上運(yùn)行的所述瀏覽器上被執(zhí)行時(shí),被授予用以 在由所述瀏覽器對(duì)所述靜態(tài)web應(yīng)用執(zhí)行期間利用所述客戶端設(shè)備的本地資源的至少一個(gè) 許可,并且 一旦接收到對(duì)所述靜態(tài)web應(yīng)用的對(duì)象的改變,所述驗(yàn)證模塊被進(jìn)一步配置成在使得 對(duì)所述對(duì)象的所述改變經(jīng)由所述URL可訪問(wèn)之前作為整體重復(fù)對(duì)所述靜態(tài)web應(yīng)用的所述 保證特性的所述確認(rèn)。11. 根據(jù)權(quán)利要求10所述的服務(wù)器,其中,所述靜態(tài)web應(yīng)用是基于在先驗(yàn)證和審查過(guò) 程而被授予所述至少一個(gè)許可的,所述在先驗(yàn)證和審查過(guò)程基于所述web應(yīng)用設(shè)法聲明的 至少一個(gè)許可。12. 根據(jù)權(quán)利要求10或11所述的服務(wù)器,其中,所述靜態(tài)web應(yīng)用是基于在先惡意排名 和閾值而被授予所述至少一個(gè)許可的。13. 根據(jù)權(quán)利要求10至12中的任一項(xiàng)所述的服務(wù)器,其中,所述靜態(tài)web應(yīng)用包含在所 述客戶端計(jì)算設(shè)備上執(zhí)行所述應(yīng)用所需的所有資源,并且其中,由所述客戶端計(jì)算設(shè)備執(zhí) 行所述應(yīng)用所需的代碼并不是動(dòng)態(tài)生成的。14. 根據(jù)權(quán)利要求10至13中的任一項(xiàng)所述的服務(wù)器,還包括: 在所述服務(wù)器上托管所述靜態(tài)web應(yīng)用,其中,所述托管包括向web爬取器提供對(duì)所述 靜態(tài)web應(yīng)用以及與所述靜態(tài)web應(yīng)用相關(guān)聯(lián)的代碼的訪問(wèn)。15. 根據(jù)權(quán)利要求10至14中的任一項(xiàng)所述的服務(wù)器,其中,由所述驗(yàn)證模塊確認(rèn)所述靜 態(tài)web應(yīng)用的保證特性包括驗(yàn)證所述靜態(tài)web應(yīng)用的對(duì)象不包括被識(shí)別為以下至少一個(gè)的 對(duì)象:惡意軟件、病毒以及特洛伊木馬。16. 根據(jù)權(quán)利要求10至15中的任一項(xiàng)所述的服務(wù)器,其中,由所述驗(yàn)證模塊確認(rèn)所述靜 態(tài)web應(yīng)用的保證特性包括驗(yàn)證所述靜態(tài)web應(yīng)用的開(kāi)發(fā)者的可信度排名。17. 根據(jù)權(quán)利要求10至16中的任一項(xiàng)所述的服務(wù)器,其中,更新所述靜態(tài)web應(yīng)用包括 用經(jīng)重新確認(rèn)的整個(gè)應(yīng)用替換所述靜態(tài)web應(yīng)用的對(duì)象。18. -種具有存儲(chǔ)在其上面的計(jì)算機(jī)可執(zhí)行程序代碼的非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介 質(zhì),所述計(jì)算機(jī)可執(zhí)行程序代碼當(dāng)在計(jì)算機(jī)系統(tǒng)上被執(zhí)行時(shí)使所述計(jì)算機(jī)系統(tǒng)執(zhí)行步驟, 所述步驟包括: 在受信服務(wù)器處接收靜態(tài)web應(yīng)用; 確認(rèn)所述靜態(tài)web應(yīng)用的保證特性;以及 一旦成功確認(rèn)所述靜態(tài)web應(yīng)用,提供經(jīng)由統(tǒng)一資源定位符URL的對(duì)靜態(tài)web應(yīng)用的訪 問(wèn),所述統(tǒng)一資源定位符URL識(shí)別在公共互聯(lián)網(wǎng)內(nèi)的受信服務(wù)器位置處的所述靜態(tài)web應(yīng) 用,并且能被用來(lái)從在客戶端設(shè)備上運(yùn)行的瀏覽器導(dǎo)航到所述靜態(tài)web應(yīng)用,其中 所述靜態(tài)web應(yīng)用當(dāng)在所述客戶端設(shè)備上運(yùn)行的所述瀏覽器上被執(zhí)行時(shí),被授予用以 在由所述瀏覽器對(duì)所述靜態(tài)web應(yīng)用的執(zhí)行期間利用所述客戶端設(shè)備的本地資源的至少一 個(gè)許可,并且 一旦接收到對(duì)所述靜態(tài)web應(yīng)用的對(duì)象的改變,在使得對(duì)所述對(duì)象的所述改變經(jīng)由所 述URL可訪問(wèn)之前作為整體執(zhí)行對(duì)所述靜態(tài)web應(yīng)用的所述保證特性的所述確認(rèn)。19. 根據(jù)權(quán)利要求18所述的非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中,所述靜態(tài)web應(yīng)用是 基于在先驗(yàn)證和審查過(guò)程而被授予所述至少一個(gè)許可的,所述在先驗(yàn)證和審查過(guò)程基于所 述web應(yīng)用設(shè)法聲明的至少一個(gè)許可。20.根據(jù)權(quán)利要求18或19所述的非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中,所述靜態(tài)web應(yīng) 用包含在所述客戶端計(jì)算設(shè)備上執(zhí)行所述應(yīng)用所需的所有資源,并且其中,由所述客戶端 計(jì)算設(shè)備執(zhí)行所述應(yīng)用所需的代碼并不是動(dòng)態(tài)生成的。
【文檔編號(hào)】G06F21/62GK105940654SQ201480074274
【公開(kāi)日】2016年9月14日
【申請(qǐng)日】2014年12月17日
【發(fā)明人】埃里克·凱
【申請(qǐng)人】谷歌公司