TWI387933B - 用於安全模組間通訊機制之方法及裝置 - Google Patents
用於安全模組間通訊機制之方法及裝置 Download PDFInfo
- Publication number
- TWI387933B TWI387933B TW097131175A TW97131175A TWI387933B TW I387933 B TWI387933 B TW I387933B TW 097131175 A TW097131175 A TW 097131175A TW 97131175 A TW97131175 A TW 97131175A TW I387933 B TWI387933 B TW I387933B
- Authority
- TW
- Taiwan
- Prior art keywords
- module
- message
- transmitter
- source
- inline
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 46
- 238000004891 communication Methods 0.000 title claims description 15
- 230000007246 mechanism Effects 0.000 title description 2
- 230000004044 response Effects 0.000 claims description 6
- 230000003993 interaction Effects 0.000 claims description 5
- 238000013461 design Methods 0.000 claims description 4
- 230000002452 interceptive effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 15
- 238000013507 mapping Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- Economics (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Information Transfer Between Computers (AREA)
Description
本發明揭示一般係關聯於多個程式碼物件之間的通訊,此等物件可在一由一瀏覽器或其他客戶端應用程式所處理之網頁或其他結構化文件的背景內容內執行。
由像是網際網路之廣域網路所連接的互動系統既已穩定地演進為用於資訊交換、社交互動與數位媒體分享的重要媒體。網際網路使用者通常會向各式服務提供者維護有一或更多的帳戶,而該等提供者提供客製化個人頁面的特點,像是個人首頁(即如my.yahoo.com等等)、社交網路網站上的個人頁面(即如facebook.com、myspace.com等等),及其類似者。為強化此等頁面對於末端使用者的運用度及客製化,服務提供者有時會藉一或更多的功能性模組或小工具(以下稱為模組)以讓使用者能夠客製化其等的頁面。
在網頁或網際網路環境之下,這些模組可含有HTML程式碼及描述法(像是JavaScript,以及「非同步JavaScript和XML(AJAX,“Asynchronous JavaScript and XML”)」),此等可在一像是瀏覽器之客戶端應用程式的背景內容中執行,藉以獲致各種有用或娛樂功能。例如,可開發許多模組以顯示獲自「真實簡易聯合組織(RSS,“Really Simple Syndication”)」饋點的內容,像是部落格項目、新聞標題或播客。可開發其他模組以顯示於一內容集合網站的幻燈片顯示,像是flickr.com。其他模組則可顯示即時股票報價。在許多實例裡,該等模組係如同視框或「內聯框架(內聯框架,“Inline Frame”)」,出現在一基底HTML文件裡,其可使另一HTML文件嵌入於該基底HTML文件之內。
維護這些客製化頁面的服務提供者可開發出許多模組,而使用者可在其中選定並增置於其頁面。然而由於該等模組可執行各種廣泛功能以及使用者不受限制的創意,有些服務提供者亦提供一讓第三方也能進行模組開發的開放開發環境。不過,由於第三方模組牽涉到安全課題,服務提供者通常亦仰賴於一些措施藉以將關於第三方模組的安全疑慮降至最低。具體而言,在一網頁之不同視窗及視框裡的內容可藉由文件物件模型敘述法以有效地互動。然而,由於一瀏覽器客戶端可同時地顯示出像是基底頁面及一或更多模組的無關內容,因此必須在其各式視窗及視框裡施用一些政策藉以保護資訊的整體性及隱私性。若未採取安全措施,則在一視框之內執行的模組可能會得知在其他模組或該基底文件之內的資訊。而按此方式提供無受限存取則可能會侵害使用者隱私。
從而,多數的公眾可獲用瀏覽器客戶端(像是MozillaFirefox以及MicrosoftInternet Explorer)都支援網域安全模型,而僅供允與來自相同來源之內容的互動。例如,若此內容是源自於另一網域(即如https://example.com/
),一對應於一網域(即如http://yahoo.com/)之內聯框架之物件可能無法存取另一視框或基底文件的內容。而至於Javascript,為例如防止跨網站安全問題,瀏覽器會在該Javascript物件模型裡施行相同的來來源政策。亦即,於一內聯框架之內運作的描述法無法存取在另一內聯框架之內的任何物件,除非在該等內聯框架之內的兩者頁面皆來自於相同來源。有些瀏覽器是在若對於兩者頁面之協定、連接埠(倘經給定)及主機為相同,則會將該等兩者頁面視為具有相同來源。而無網域安全,則一流氓頁面可窺伺另一頁面、存取在其網域外的cookies或者利用「動態超文字標記語言(DHTML,“Dynamic HyperText Markup Language”)」來操縱內容。
服務提供者可充分運用由連接第三方模組的標準瀏覽器所支持的網域安全模型。例如,一服務提供者可在對應於一不同於該基底文件之來源或網域的內聯框架裡伺服HTML文件,其中含有一第三方模組或是對該第三方模組的參考(即如src屬性),如同伺服已嵌入於其他內聯框架內的文件。按此方式,即可將一給定第三方模組之操作有效地納入在其相對應內聯框架的背景內容之內。
本發明揭示一種方法、設備及系統,此者係針對於協助多個程式碼模組之間的安全、結構化互動,而該等模組係在一由一實施網域安全模型之使用者代理者,像是一瀏覽器客戶端,所處理的文件之背景內容下所執行。在一特定具體實施例中,一經載入至一基底文件之模組連接器描述法或物件發現對應於不同來源或網域的收聽者模組及發送者模組,並居中傳遞資訊。按此方式,一收聽者模組可藉由讓一末端使用者將兩者模組增置至一網頁,以在相同頁面上使用並運用來自一發送者模組的資訊,而無須明確地定義任何形式的互動。例如,一相片模組可在一遠端相片共享網站處存取一使用者帳戶,並且將一個以上的相片提供至一在一幻燈片秀呈現該等相片的模組。
第一圖說明一許多特定具體實施例可運作於其中的網路環境。即如第一圖所示,本發明之特定具體實施例可運作於一網路環境下,此環境含有服務提供者網站30及一或更多的客戶端系統28。該服務提供者網站30包含一網路應用程式伺服器31,其主置「超文字傳送協定(HTTP,“HyperText Transfer Protocol”)」伺服器26及網路應用程式27;一可運作地耦接於一資料庫22的資料庫系統20;以及一耦接於模組資訊的資料儲存器36的模組主置平台34。路由器27可運作以將該服務提供者網站30耦接至網路雲端24。該網路雲端24通常代表一或更多的互連網路,而本揭所述系統及主機即可經此以進行通訊。該網路雲端24可包含封包式廣域網路(像是網際網路)、私屬網路、無線網路、衛星網路、細胞式網路、傳呼網路及其類似者。
該資料庫系統20係一網路可定址系統,其可主置一資料庫應用程式,同時可併同於各式網路應用程式,像是社交網路系統、可客製化之使用者首頁(即如my.yahoo.com)等等而運作。該資料庫系統20可透過一電腦網路而由一或更多的主機所存取。在一實施裡,該資料庫22可儲存各種類型的資訊,像是使用者帳戶資訊、使用者背景資料、住址、偏好、財務帳戶資訊。該資料庫22亦可儲存像是數位內容資料物件及其他媒體資產的內容。在特定具體實施例裡,一內容資料物件或一內容物件係且通常為經儲存或嵌入在一資料檔案或記錄之中的一個別數位資訊項目。內容物件可採取許多形式,包含:文字(即如ASCII、SGML、HTML)、影像(即如jpeg、tif及gif)、圖形(向量式或位元映圖)、音訊、視訊(即如mpeg),或者其他多媒體,以及其等組合。內容物件資料亦可包含可執行程式碼物件(即如遊戲,可於一瀏覽器視窗或視框內執行)、播客等等。在結構上,該資料庫22可代表眾多類型的資料儲存及管理系統。在特定具體實施例裡,該資料庫22可為藉由任何含有像是資料庫伺服器、大量儲存媒體、媒體貯館系統及其類似者之元件的適當實體系統所實施。該模組主置平台34主置由服務提供者網站30所內部開發的模組,以及由第三方所開發的模組。該資料儲存器36儲存有模組定義資料,像是電腦程式碼、HTML程式碼、描述法、AdobeFlash(swf)物件及其類似者。
在一特定具體實施例裡,一網路應用程式27可存取該資料庫系統20以視需要擷取、增置或修改經儲存於其內的資料,藉以將一網路應用程式提供予一或更多的使用者,像是一社交網路應用程式或可客製首頁。回應於來自一給定使用者對於一首頁的請求,該網路應用程式伺服器27可存取該資料庫系統20以自一相對應使用者帳戶擷取出頁面格式及配置資訊。除他者外,該配置資訊可識別出使用者既已增置於其頁面的模組。然後該網路應用程式27可存取模組主置平台34以獲得或產生HTML程式碼及其他內容,以增置在該配置資訊之中所識別出的模組。接著,該網路應用程式27可將此內容併入於一基底文件或頁面模板內,並且將經合併頁面傳送至該使用者。
該等客戶端系統28可透過一網路服務提供者或是任何其他適當方式以運作連接於該網路環境。該等客戶端系統28可包含個人電腦或行動裝置,像是膝上型電腦、個人數位助理(PDA,“Personal Digital Assistant”)等等。該等客戶端系統28可含有一或更多的處理器、一記憶體、一網路介面、一或更多輸入/輸出(I/O,“Input/Output”)裝置以及一互連這些元件的系統匯流排。該等客戶端系統28亦可含有一作業系統及一使用者代理者,像是一瀏覽器客戶端,此者可運作以與該服務提供者網站30互動。該等瀏覽器客戶端可包含MicrosoftInternet Explorer、Mozilla Firefox、AppleSafari、NetscapeNavigator以及任何其他適當的使用者代理者。此等瀏覽器客戶端支援一網域安全模型,此模型禁制在由不同來源所伺服之內容(即如程式碼物件及描述法)間的互動。在一特定具體實施例裡,一來源可定義為一主機名稱、連接埠及協定的組合。一主機名稱可為一IP位址或一網域名稱。一連接埠是指一「傳送控制協定/網際網路協定(TCP/IP,“Transport Control Protocol/Internet Protocol”)」連接埠,而協定是指高於該傳送層的協定層,像是HTTP、S-HTTP、「安全上HTTP,插槽層(HTTPS,“HTTP over Secure Sockets Layer”)」。又進一步,當關聯於內聯框架而運用時,有些瀏覽器會將一IP位址(即如66.213.145.93),以及一解析至該IP位址之網域名稱,視為不同來源。
A.1.範例伺服器系統架構
在此所描述的該等伺服器主機系統(像是網路應用程式伺服器31)可按在廣泛的各種計算系統及架構中實施。又進一步,該等客戶端系統28的系統架構可為相當地類似於伺服器系統架構。例如,該系統架構可進一步含有I/O系統,像是一滑鼠、鍵盤及一顯示裝置。後文中描述為教示性而非限制性目的之範例計算架構。
第二圖說明一範例計算系統架構,此者可用以實施一實體伺服器。在一具體實施例裡,該硬體系統200含有一處理器202、一快取記憶體204以及一或更多針對於此處所述功能的軟體應用程式與驅動程式。此外,該硬體系統200包含一高效能輸入/輸出(I/O)匯流排206及一標準I/O匯流排208。一主機橋接器210將該處理器202耦接於該高效能I/O匯流排206,而該I/O匯流排橋接器212將此二者匯流排206及208彼此耦接。一系統記憶體214及一網路/通訊介面216耦接於匯流排206。該硬體系統200可進一步包含視訊記憶體(未顯示於圖)及一耦接於該視訊記憶體的顯示裝置。該大量儲存218及該I/O連接埠220耦接於該匯流排208。該硬體系統200可選擇性地含有一鍵盤及指向裝置,以及一經耦接於該匯流排208的顯示裝置(未顯示於圖)。總體而言,這些構件係為以表示廣泛類別的電腦硬體系統,包含但然不限於,基於由美國加州Santa Clara市之Intel Corporation公司所製造的x86相容處理器,以及由美國加州Sunnyvale市之Advanced Micro Devices(AMD),Inc.公司所製造的x86相容處理器,和任何其他適當處理器的通用目的電腦系統。
後文中更加詳細描述該硬體系統200的構件。尤其,該網路介面216提供該硬體系統200與例如乙太網路(即如IEEE 802.3)的網路任一廣泛區域間的通訊。該大量儲存裝置218可供以永久地儲存資料及程式設計指令,其係用以執行前述在該位置伺服器22中所實施之功能,而該系統記憶體214(即如DRAM)則可在該處理器202執行該等資料及程式設計指令時提供暫時儲存。該等I/O連接埠220為一或更多的序列及/或平行通訊連接埠,此等提供耦接於該硬體系統200之額外週邊裝置間的通訊。
該硬體系統200可含有各種系統架構;並且可將該硬體系統200的各式元件重新排置。例如,該快取204可連同與該處理器202而位於晶片上。或另者,可將該快取204及該處理器202封裝在一起作為「處理器模組」,而該處理器202被稱為「處理器核心」。此外,部份的本發明具體實施例可能並不需要亦不含有前述的所有元件。例如,所顯示為耦接於該標準I/O匯流排208的週邊裝置可為耦接於高效能I/O匯流排206。此外,在一些具體實施例裡,可僅存在一單一匯流排,而該硬體系統200的元件則為耦接於該單一匯流排。此外,該硬體系統200可含有額外元件,像是額外的處理器、儲存裝置或記憶體。
即如後述,在一實施裡,一或更多個此處所述之實體伺服器的操作係如同一系列由該硬體系統200所運行的軟體副程式所實施。這些軟體副程式包含複數個或一系列的指令,其可由一硬體系統內之處理器,例如處理器202所執行。首先,該指令系列可儲存在一儲存裝置上,例如大量儲存裝置218。然而,該指令系列可為儲存在任何適當的儲存媒體上,像是一卡匣、CD-ROM、ROM、EEPROM等等。此外,該指令系列無須為本地方式儲存,並且可為透過網路/通訊介面216而接收自一遠端儲存裝置,像是網路上的一伺服器。可將該等指令系列自該儲存裝置,像是該大量儲存裝置218,拷貝至該記憶體214之中,然後再由該處理器202存取和執行。
一作業系統管理並控制該硬體系統200的操作,包含往返於軟體應用程式(未顯示於圖)的資料輸入及輸出。該作業系統在由該系統所執行的軟體應用程式與該系統的硬體元件之間提供一介面。根據本發明之一具體實施例,該作業系統為可購獲自美國華盛頓州Redmond市Microsoft Corporation公司的Windows95/98/NT/XP/Vista作業系統。不過,本發明可運用於其他的適當作業系統,像是可購獲自美國加州Cupertino市Apple Computer Inc.公司的Apple Macintosh作業系統、UNIX作業系統、LINUX作業系統及其類似者。當然,其他實施亦為可能。例如,此處所描述之伺服器功能性可為藉由在一骨幹上進行通訊之複數個伺服器刀鋒所實施。
第三圖說明一在一瀏覽器視窗304之內所呈現的範例基底網頁302。該基底網頁302含有兩個模組視窗306a、306b,此等是按如內聯框架s的方式所嵌入於該基底網頁302內。第四圖說明該基底網頁302之HTML程式碼(包含一些虛擬程式碼)的子集合,而一瀏覽器客戶端可加以處理以於該瀏覽器視窗304內呈現該基底網頁302。該基底網頁302的HTML程式碼包含一第一內聯框架構件402及一第二內聯框架構件404。該「src」構件可令該瀏覽器客戶端載入在該內聯框架之背景內容裡對應於該通用資源***(URL,Uniform Resource Locator”)的內容。在一實施裡,該服務提供者網站30伺服在來自不同於基底網頁302之來源的來源之該等內聯框架構件402、404內的模組來源來源。為便於描述,此處將該等內聯框架402、404稱為模組內聯框架。這些內聯框架為該基底網頁302的子代構件。例如對應於一第一模組(為教示之目的而予標註為模組A)之內容可為自一稱作modulehost1.com的主機所伺服,一第二模組可為自一稱作modulehost2.com的主機所伺服。即如第三圖所示,該基底網頁302係自一關聯於http://my.yahoo.com/的主機所伺服。即如第四圖所示,該基底網頁302的HTML程式碼進一步含有一模組連接器描述法構件406(為教示之目的而稱作「Conduit」)。在所示實施裡,該模組連接器描述法係一經載入至該頁面中的Javascript物件。該描述法構件406亦將內聯框架標記(iFtoken)納入在模組識別碼(moduleId)對映資訊408內。即如第四圖所示,該等內聯框架構件402、404含有可識別一模組的識別碼(id)(即如module_A、module_B),而該位置(src)字串則含有一標記(token)參數,此者可識別一對應於一給定模組的標記值(iFtokenA、iFtokenB等等)。該對映資訊408將這些標記對映至相對應的模組識別碼。該模組連接器描述法可利用這些對映資料來確保一在一內聯框架內執行的模組無法偽裝成另一模組。例如,經傳送至該模組連接器描述法的訊息可包含多個標記,而該模組連接器描述法可利用此等標記以針對於該模組內聯框架的識別碼(id)以及對該模組對映資訊408的標記來對訊息進行驗核。在一實施裡,該模組連接器描述法利用該等標記來識別模組以及應將訊息增置於此的訊息佇列。其他實施亦為可能。例如,該等模組的一或更多者並不需在該瀏覽器視窗304中可見地呈現。
第五圖說明一對應於「Module A」之HTML文件的範例HTML程式碼(包含一些虛擬程式碼以表示模組互連性與其他函式)。該所述程式碼純為教示目的。對於Module B的類似文件可連同相同或類似的結構和命令而載入。即如後文進一步詳述,該等模組可為經註冊如發送者及收聽者。第.五圖顯示該HTML程式碼含有一描述法構件502,此者可令以將一傳訊器描述法物件載入於該模組內聯框架內。對於該傳訊器描述法的資料載入器亦含有該標記(iFtokenA),其係由該服務提供者網站30所接收並且連同傳訊器描述法納入,藉以將該標記嵌入在一如後文所述的傳訊器內聯框架構件之內。除此之外,該傳訊器描述法在經載入且執行時,可運作以將另一內聯框架(在此稱之為一「傳訊器內聯框架」)嵌入在該模組內聯框架內。在一具體實施例裡,該傳訊器描述法存取該模組內聯框架之HTML文件的物件模型,並且增置HTML程式碼以在執行時間處建立該傳訊器內聯框架。這些傳訊器內聯框架係該模組內聯框架的一子代構件。在一實施裡,該傳訊器內聯框架並非在該瀏覽器視窗304之內可見或呈現。底下為說明之目的提供範例程式碼。
由於在該傳訊器內聯框架構件之src屬性中所表述的來源是與該基底網頁302相同的來源,因此該基底網頁302的物件可與該傳訊器內聯框架的內容進行互動。不過,該模組內聯框架的內容則無法與該基底網頁302或該傳訊器內聯框架的內容進行互動。該傳訊器內聯框架的src屬性亦包括標記值(在此為iFtokenA)。即如前述,該傳訊器描述法亦含有令該傳訊器描述法將該傳訊器內聯框架註冊於該基底網頁302((top. conduit. register(window,token))之模組連接器描述法的程式碼。該模組連接器描述法可利用經傳送至其之標記以及經傳通至該標記對映資訊408的模組識別碼來識別該傳訊器描述法及傳訊器內聯框架與之相對應的模組內聯框架(藉由存取該模組內聯框架的id屬性)。該模組連接器描述法亦可藉由存取該內聯框架及傳訊器內聯框架構件,並且將該等比較於其對映資訊408,來驗核該註冊訊息。此外,該模組連接器描述法可利用標記值以識別應增置各式訊息的傳訊器內聯框架訊息佇列。該傳訊器內聯框架構件的src URL亦含有一運作如一訊息佇列的經編碼字串(在#之後)。而在該井號(#)後方之字串值內的變化並不會令該瀏覽器客戶端發送新的請求。在一特定具體實施例裡,該經編碼字串利用「JavaScript物件註記(JSON,“JavaScript Object Notation”)」以實施該訊息佇列,其中各個訊息係利用JSON語法所分隔。根據多數瀏覽器客戶端的網域安全模型,首先該傳訊器描述法可設定該傳訊器內聯框架構件的位置(src),並在該傳訊器內聯框架被創造後重新設定該位置。此外,給定該傳訊器內聯框架構件的位置(src)被設定為與該基底網頁302相同的來源,則該模組連接器描述法可存取該位置(src)及該經編碼字串以決定哪些訊息是在該訊息佇列內。該模組連接器描述法亦能夠修改該訊息佇列以增置新訊息並刪除逾期者。又進一步,即使是在該模組內聯框架的背景內容之內運作,該傳訊器描述法亦仍能讀取並修改該位置(src)屬性。在其他具體實施例裡,亦可將該模組連接器描述法嵌入於一內聯框架內。在此一實施裡,該傳訊器描述法會建立經識別為與該模組連接器描述法之來源為相同來源(若異於該基底網頁302者)的傳訊器內聯框架構件。即如後述,該傳訊器內聯框架構件可為回應於一由一模組所發送的第一訊息而動態地建立。
又進一步,該傳訊器描述法亦可宣告一傳訊應用程式設計介面(API,“Application Programming Interface”),藉以讓模組能夠註冊如發送者及接收者,並且發送和接收訊息。該傳訊API亦為一可由第三方模組開發商獲取的公開規格。該傳訊API可供模組開發商建立能夠註冊於該模組連接器描述法,並且從其他模組發送和接收訊息的模組。在第五圖的範例程式碼裡,例如該模組含有一loadPhotosFromFlickr函式,此者可存取該網站flickr.com,藉以獲得通往一或更多上載於該使用者帳戶的照片的URL。該advertisePhotos函式利用由該傳訊器描述法所宣告的介面以發送訊息。在所示實施裡,該函式含有一發送命令504,而此者根據該傳訊API可令該傳訊器描述法將該等相片URL張貼於該相對應傳訊器內聯框架之位置(src)屬性的訊息佇列內(參見後文)。在一特定具體實施例裡,該模組連接器描述法可支援複數個通道。各訊息識別一通道,並且含有要在該通道上發送的相對應資料。即如第五圖所示,該發送命令502識別一稱為「pictures」的通道。各通道亦關聯於一收聽模組可預期的輸出格式。額外通道可含有文字、圖像、音樂、視訊等等。例如,圖像通道可能要求該輸出為連至相片的URL,而該視訊通道則可能要求該輸出為連至視訊的URL。在一實施裡,一模組亦可藉由在一「收聽者」通道上發出一發送命令以在一或更多的通道上註冊如一收聽者。例如,根據一可能傳訊API,一模組開發商可建立呼叫一接收函式之模組而具有下列API:receive("pictures",handler),並且定義一處理器處理器(即如handler=function(msg))。該底層傳訊實施可執行一發送操作(像是send({channel:"listener",data:"pictures"})),藉以廣宣該模組可收聽一特定通道的能力。該傳訊實施可儲存指向該處理器處理器的指標以供未來參考,因此當在該通道上收到一訊息時,可將該訊息路由傳送至該處理器處理器函式。按此方式,仰賴於該接收傳訊API的模組在該收聽者通道上發出一發送命令,其可識別出可於其上接收訊息之通道。該接收函式進一步識別一用於所接收訊息的處理器,此處理器定義一處理該訊息的函式。例如,若該訊息係一連至一相片的URL,則該處理器函式可定義一程序,此程序可擷取該相片,並將其增置至一向該使用者顯示的幻燈片顯示。
B.1.傳訊器描述法-發送
第六圖說明一根據本發明之一實施可由一傳訊器描述法所實施以自一模組發送訊息的方法。該傳訊器描述法收聽來自一在該模組內聯框架之背景內容內運作的模組所發出之發送命令(602)。回應於一發送命令,該傳訊器描述法根據經傳送於其的參數資訊建構一訊息,並且建立一時間印記(604)。若尚未建立該傳訊器內聯框架(606),則該傳訊器描述法在該模組內聯框架內建立該傳訊器內聯框架構件,將該訊息及時間印記增置於該訊息佇列以作為對該位置(src)屬性(參見前文)的經編碼參數(608)。若該傳訊器內聯框架為既經建立,則該傳訊器描述法檢查該訊息佇列以根據該時間印記移除逾期訊息(610),並且將新訊息及時間印記增置於該訊息佇列(612)。然後,經增置於該傳訊器內聯框架之位置(src)屬性的訊息可由該模組連接器描述法取得以存取並讀取。
B.2.模組連接器描述法
第七圖說明一根據本發明之一可能具體實施例而由一模組連接器描述法所實施的方法。第七圖所述之處理程序流程可為回應於一第一傳訊器內聯框架的註冊(參見前文)而啟動。即如第七圖所示,該訊息連接器描述法係按一週期方式運作(702),像是每20毫秒,以檢查任何經註冊的傳訊器內聯框架(704)。若有任何傳訊器內聯框架已註冊,則該訊息連接器描述法針對所有的經註冊傳訊器內聯框架(706)決定是否已將任何新訊息增置於該訊息佇列(708)。若是,則對於所有的新訊息(710),該訊息連接器描述法將該訊息傳通至在個別訊息內所表述之通道的任何收聽者(712、714)。
第八圖說明一根據本發明之一可能實施,針對於將一訊息傳通至一收聽者模組而由一模組連接器描述法所實施的處理程序。即如第八圖所示,該訊息連接器描述法存取對應於該收聽者模組之傳訊器內聯框架的位置(src)屬性(802),並且解碼該訊息佇列的參數資訊(804)。利用該訊息佇列內之各個訊息的時間印記,該訊息連接器描述法藉由刪除方式以自該訊息佇列使舊有訊息逾期失效(806),並且將新訊息增置至該訊息佇列(808)。按此方式,該訊息可由在該相對應收聽者模組之模組內聯框架的背景內容內運作之傳訊器描述法存取。
其他實施亦為可能。例如,末端使用者可調整該訊息連接器描述法的操作,該使用者可組態設定一或更多規則,而此等規則定義一給定模組可與之進行互動的模組,或是一模組可於其上接收訊息的通道。又進一步,該模組連接器描述法按此而運作的時間間隔可為一固定值,或是可在每次操作時逐漸增加。
B.3.傳訊器描述法-收聽
第九圖說明一根據本發明之一實施可由一傳訊器描述法所實施以供收聽訊息並且將該等訊息提供至一模組的方法。即如第九圖所示,該傳訊器描述法執行一按一週期方式運作的收聽程序(902)。在一給定時間間隔之後,該傳訊器描述法解碼該傳訊器內聯框架的位置(src)屬性以檢查在該訊息佇列內的訊息(904),並且將任何新訊息傳通至經註冊以接收該訊息的處置器(參見前文)(906)。按此方式,一模組可接收一或更多訊息並加以進行處理,例如藉此產生一呈現於該瀏覽器視窗304內的輸出。此外,此一用於模組間通訊的結構化機制可讓模組能夠互動而同時仍保留安全性,原因在於該等模組僅具有本揭所示方式以與其他頁面物件進行通訊和互動。
本發明已參照於特定具體實施例而解釋。例如,本發明具體實施例雖係關聯於HTTP、HTML及JavaScript以說明,然本發明確可關聯於任何適當的協定環境以運用。其他具體實施例對於熟諳本項技藝之人士是顯而易知的。因此,本發明除如後載申請專利範圍所表述者外,並不受任何限制。
20...資料庫系統
22...資料庫
24...網路雲端
26...HTTP伺服器
27...網路應用程式
27...路由器
28...客戶端系統
30...服務供應商網站
31...網路應用程式伺服器
34...模組主置平台
36...資料儲存器
50...網路雲端
200...硬體系統
202...處理器
204...快取記憶體
206...高效能輸入/輸出(I/O)匯流排
208...標準I/O匯流排
210...主機橋接器
212...I/O匯流排橋接器
214...系統記憶體
216...網路/通訊介面
218...大量儲存
220...I/O連接埠
302...基底網頁
304...瀏覽器視窗
306a...模組視窗
306b...模組視窗
402...第一內聯框架構件
404...第二內聯框架構件
406...模組連接器敘述法構件
408...模組識別碼對映資訊
502...敘述法構件
504...發送命令
第一圖係一示意圖,此圖說明本發明之特定具體實施例實施可運作於其中的網路環境。
第二圖說明一範例計算系統架構,此者可用以實施一實體伺服器。
第三圖係一範例圖形使用者介面。
第四圖係一範例程式碼,此者說明一對應於一基底網頁或文件之HTML文件的構件。
第五圖係一範例程式碼,此者說明一對應於一模組之HTML文件的構件。
第六至九圖為流程圖,該等說明根據本發明之一特定具體實施例實施的模組間通訊程序。
20...資料庫系統
22...資料庫
26...HTTP伺服器
27...網路應用程式
27...路由器
28...客戶端系統
30...服務提供者網站
31...網路應用程式伺服器
34...模組主置平台
36...資料儲存器
50...網路雲端
Claims (20)
- 一種用於安全模組間通訊機制之方法,該方法包含:在一第一來源處,自一使用者代理者接收一對於一網頁的請求,其中該使用者代理者可運作以實施一禁止不同來源之內容間橫跨內聯框架的互動的網域安全模型;存取一配置資訊之資料儲存器以識別一或更多模組物件來新增至一基底文件;以及將該基底文件自該第一來源處傳送至該使用者代理者,其中該基底文件包含一或更多的模組內聯框架構件,其各可運作以令該使用者代理者自一第二來源處將一模組文件載入至一內聯框架中,其中該模組文件包含一傳訊器物件以及該等經識別模組物件的一或更多者;其中各傳訊器物件可在該使用者代理者之背景內容內運作,以在一相對應模組內聯框架裡建立一含有一可識別該第一來源的位置屬性的傳訊器內聯框架構件;回應於一由該模組物件所發送的訊息,將該訊息增置至該位置屬性;以及將一在該傳訊器內聯框架構件之位置屬性中所偵測到的新訊息提供至該模組物件;其中該基底文件進一步含有一在該使用者代理者之背景內容內運作之模組連接器物件,其操作以存取該等一或更多傳訊器內聯框架構件的位置屬性以檢查新訊息;以及回應於一新訊息,將該新訊息增置至對應傳訊器 內聯框架構件的一或更多位置屬性。
- 如申請專利範圍第1項之方法,其中該傳訊器物件可進一步運作以註冊於該模組連接器物件。
- 如申請專利範圍第1項之方法,其中該傳訊器物件可進一步運作以對於該模組物件定義一傳訊應用程式設計介面。
- 如申請專利範圍第1項之方法,其中該傳訊器物件可進一步運作以使先前增置於該傳訊器內聯框架構件之位置屬性的訊息逾期失效。
- 如申請專利範圍第1項之方法,其中該模組連接器物件可進一步運作以使先前增置於該傳訊器內聯框架構件之位置屬性的訊息逾期失效。
- 如申請專利範圍第1項之方法,其中該模組連接器物件可進一步運作以註冊為一通道上的收聽者;以及其中該模組物件可運作以根據一該新訊息的通道以及該通道上的經註冊收聽者,將該新訊息選擇性地增置至該相對應傳訊器內聯框架構件的一或更多位置屬性。
- 如申請專利範圍第1項之方法,其中該第一來源及該第二來源係相關於一主機名稱、連接埠及協定之組合所定義。
- 如申請專利範圍第1項之方法,其中該請求識別出一使用者,並且其中該配置資訊是自一關聯於該使用者之使用者帳戶加以存取。
- 一種用於安全模組間通訊機制之裝置,該裝置包含:一或更多處理器;一網路介面,其連接該些處理器以提供通訊; 一記憶體,其連接該些處理器以儲存一或更多的電腦可讀取指令;以及網路應用程式邏輯,其中含有該些電腦可讀取指令,其在執行時可運作使該等一或更多處理器以:在一第一來源處,自一使用者代理者接收一對於一網頁的請求,其中該使用者代理者可運作以實施一禁止不同來源之內容間橫跨內聯框架的互動的網域安全模型;存取一配置資訊之資料儲存器以識別一或更多模組物件來新增至一基底文件;以及將該基底文件自該第一來源處傳送至該使用者代理者,其中該基底文件包含一或更多的模組內聯框架構件,而各者可運作以令該使用者代理者自一第二來源處將一模組文件載入至一內聯框架中,其中該模組文件包含一傳訊器物件以及該等經識別模組物件的一或更多者;其中各傳訊器物件可在該使用者代理者之背景內容內運作,以在一相對應模組內聯框架裡建立一含有一可識別該第一來源的位置屬性的傳訊器內聯框架構件;回應於一由該模組物件所發送的訊息,將該訊息增置至該位置屬性;以及將一在該傳訊器內聯框架構件之位置屬性中所偵測到的新訊息提供至該模組物件;其中該基底文件進一步含有一在該使用者代理者之背景內容內運作之模組連接器物件,其操作以存取該等一或更多傳訊器內聯框架構件的位置屬性以 檢查新訊息;以及回應一新訊息,將該新訊息增置至相對傳訊器內聯框架構件的一或更多位置屬性。
- 如申請專利範圍第9項之裝置,其中該傳訊器物件可進一步運作以註冊於該模組連接器物件。
- 如申請專利範圍第9項之裝置,其中該傳訊器物件可進一步運作以對於該模組物件定義一傳訊應用程式設計介面。
- 如申請專利範圍第9項之裝置,其中該傳訊器物件可進一步運作以使先前增置於該傳訊器內聯框架構件之位置屬性的訊息逾期失效。
- 如申請專利範圍第9項之裝置,其中該模組連接器物件可進一步運作以使先前增置於該傳訊器內聯框架構件之位置屬性的訊息逾期失效。
- 如申請專利範圍第9項之裝置,其中該模組物件可進一步運作以註冊為一通道上的收聽者;以及其中該模組連接器物件可運作以根據一該新訊息的通道以及該通道上的已註冊收聽者,將該新訊息選擇性地增置至該相對應傳訊器內聯框架構件的一或更多位置屬性。
- 如申請專利範圍第9項之裝置,其中該第一來源及該第二來源係關連於一主機名稱、連接埠及協定之組合所定義。
- 如申請專利範圍第9項之裝置,其中該請求識別出一使用者,並且其中該配置資訊是自一關聯於該使用者之使用者帳戶加以存取。
- 一種用於安全模組間通訊機制之方法,該方法包含: 實施一禁止不同來源之內容間橫跨內聯框架的互動的網域安全模型;自一第一來源接收並呈現一基底文件,其中該基底文件包含一或更多模組內聯框架構件,對於各個模組內聯框架構件,分別自個別的第二來源處將一模組文件載入至一內聯框架中,其中該模組文件包含一傳訊器物件以及一或更多經識別的模組物件;其中各個傳訊器物件可運作,以在一相對應模組內聯框架裡建立一傳訊器內聯框架構件,其含有一可識別該第一來源的位置屬性;回應一由該模組物件所發送的訊息,將該訊息增置至該位置屬性;以及將一在該傳訊器內聯框架構件之位置屬性中所偵測到的新訊息提供至該模組物件;其中該基底文件進一步含有一模組連接器物件,此者可運作以存取該等一或更多傳訊器內聯框架構件的位置屬性以檢查新訊息;以及回應一新訊息,將該新訊息增置至對應傳訊器內聯框架構件的一或更多位置屬性。
- 如申請專利範圍第17項之方法,其中該第一來源及個別的第二來源係關連於一主機名稱、連接埠及協定之組合所定義。
- 如申請專利範圍第17項之方法,其進一步包含定義一可由該等模組物件存取的傳訊應用程式設計介面。
- 如申請專利範圍第17項之方法,進一步包含將一傳訊器物件註冊於該模組連接器物件。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/845,538 US8108770B2 (en) | 2007-08-27 | 2007-08-27 | Secure inter-module communication mechanism |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200926043A TW200926043A (en) | 2009-06-16 |
TWI387933B true TWI387933B (zh) | 2013-03-01 |
Family
ID=40388089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097131175A TWI387933B (zh) | 2007-08-27 | 2008-08-15 | 用於安全模組間通訊機制之方法及裝置 |
Country Status (8)
Country | Link |
---|---|
US (3) | US8108770B2 (zh) |
EP (1) | EP2183721B1 (zh) |
JP (1) | JP5017453B2 (zh) |
KR (1) | KR101145005B1 (zh) |
CN (1) | CN101790747B (zh) |
HK (1) | HK1145558A1 (zh) |
TW (1) | TWI387933B (zh) |
WO (1) | WO2009029404A2 (zh) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120203831A1 (en) | 2011-02-03 | 2012-08-09 | Kent Schoen | Sponsored Stories Unit Creation from Organic Activity Stream |
US9990652B2 (en) | 2010-12-15 | 2018-06-05 | Facebook, Inc. | Targeting social advertising to friends of users who have interacted with an object associated with the advertising |
US8799068B2 (en) | 2007-11-05 | 2014-08-05 | Facebook, Inc. | Social advertisements and other informational messages on a social networking website, and advertising model for same |
US20090299862A1 (en) * | 2008-06-03 | 2009-12-03 | Microsoft Corporation | Online ad serving |
WO2010014800A2 (en) * | 2008-07-31 | 2010-02-04 | Google Inc. | Modular workflow management |
WO2010071843A1 (en) * | 2008-12-19 | 2010-06-24 | Privatetree, Llc. | Systems and methods for facilitating relationship management |
GB2466810A (en) * | 2009-01-08 | 2010-07-14 | Visa Europe Ltd | Processing payment authorisation requests |
US9459936B2 (en) * | 2009-05-01 | 2016-10-04 | Kaazing Corporation | Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications |
US8601364B2 (en) | 2009-08-31 | 2013-12-03 | Ebay Inc. | System and method to provide a domain split display |
US8819701B2 (en) * | 2009-12-12 | 2014-08-26 | Microsoft Corporation | Cloud computing monitoring and management system |
US8250478B2 (en) * | 2010-01-28 | 2012-08-21 | Microsoft Corporation | State persistence and background initialization for post-back web applications |
US9082127B2 (en) | 2010-03-31 | 2015-07-14 | Cloudera, Inc. | Collecting and aggregating datasets for analysis |
US9317572B2 (en) * | 2010-03-31 | 2016-04-19 | Cloudera, Inc. | Configuring a system to collect and aggregate datasets |
US9081888B2 (en) | 2010-03-31 | 2015-07-14 | Cloudera, Inc. | Collecting and aggregating log data with fault tolerance |
US8874526B2 (en) | 2010-03-31 | 2014-10-28 | Cloudera, Inc. | Dynamically processing an event using an extensible data model |
US8707296B2 (en) | 2010-04-27 | 2014-04-22 | Apple Inc. | Dynamic retrieval of installation packages when installing software |
WO2012013893A1 (fr) * | 2010-07-28 | 2012-02-02 | France Telecom | Communication de données entre modules |
US20120047223A1 (en) * | 2010-08-20 | 2012-02-23 | Nokia Corporation | Method and apparatus for distributed storage |
US9418388B1 (en) * | 2010-09-08 | 2016-08-16 | Imdb.Com, Inc. | Techniques for displaying third party content |
US9058174B2 (en) | 2010-10-18 | 2015-06-16 | International Business Machines Corporation | Wiring web widgets of a web mashup |
FR2967856A1 (fr) * | 2010-11-23 | 2012-05-25 | France Telecom | Communication entre deux applications web |
US8689099B1 (en) * | 2010-12-23 | 2014-04-01 | Amazon Technologies, Inc. | Cross-domain communication |
US9239932B2 (en) * | 2011-02-18 | 2016-01-19 | Telefonaktiebolaget L M Ericsson (Publ) | Secure handling of user related information between web applications |
US8880592B2 (en) | 2011-03-31 | 2014-11-04 | Cloudera, Inc. | User interface implementation for partial display update |
US9037963B1 (en) | 2011-04-22 | 2015-05-19 | Amazon Technologies, Inc. | Secure cross-domain web browser communications |
US20120317486A1 (en) * | 2011-06-07 | 2012-12-13 | Microsoft Corporation | Embedded web viewer for presentation applications |
US8365061B1 (en) * | 2011-11-02 | 2013-01-29 | Google Inc. | Cross-origin communication in browser frames |
CN103207873B (zh) * | 2012-01-17 | 2017-02-15 | 腾讯科技(深圳)有限公司 | 用户专属页面的展示方法和*** |
US9128949B2 (en) | 2012-01-18 | 2015-09-08 | Cloudera, Inc. | Memory allocation buffer for reduction of heap fragmentation |
US11205200B1 (en) | 2012-01-24 | 2021-12-21 | Integral Ad Science, Inc. | Systems, methods, and media for detecting advertisements with advertising cues |
US9172608B2 (en) | 2012-02-07 | 2015-10-27 | Cloudera, Inc. | Centralized configuration and monitoring of a distributed computing cluster |
US9405692B2 (en) | 2012-03-21 | 2016-08-02 | Cloudera, Inc. | Data processing performance enhancement in a distributed file system |
US9338008B1 (en) | 2012-04-02 | 2016-05-10 | Cloudera, Inc. | System and method for secure release of secret information over a network |
US9842126B2 (en) | 2012-04-20 | 2017-12-12 | Cloudera, Inc. | Automatic repair of corrupt HBases |
US9753954B2 (en) | 2012-09-14 | 2017-09-05 | Cloudera, Inc. | Data node fencing in a distributed file system |
MY179529A (en) * | 2013-02-10 | 2020-11-10 | Wix Com Ltd | Third party application communication api |
US9342557B2 (en) | 2013-03-13 | 2016-05-17 | Cloudera, Inc. | Low latency query engine for Apache Hadoop |
US9189466B2 (en) | 2013-09-13 | 2015-11-17 | Linkedin Corporation | Cross document communication |
US9477731B2 (en) | 2013-10-01 | 2016-10-25 | Cloudera, Inc. | Background format optimization for enhanced SQL-like queries in Hadoop |
US9934382B2 (en) | 2013-10-28 | 2018-04-03 | Cloudera, Inc. | Virtual machine image encryption |
US9690671B2 (en) | 2013-11-01 | 2017-06-27 | Cloudera, Inc. | Manifest-based snapshots in distributed computing environments |
US9747333B2 (en) | 2014-10-08 | 2017-08-29 | Cloudera, Inc. | Querying operating system state on multiple machines declaratively |
US10368121B2 (en) * | 2014-11-07 | 2019-07-30 | Roku, Inc. | System and method for collecting data |
US10915232B1 (en) * | 2015-04-09 | 2021-02-09 | Integral Ad Science, Inc. | Methods, systems, and media for specifying different content management techniques across various publishing platforms |
US10554692B2 (en) | 2017-06-16 | 2020-02-04 | Google Llc | Cross-origin communication in restricted computer environments |
US10884834B2 (en) * | 2018-09-24 | 2021-01-05 | Microsoft Technology Licensing, Llc | Invoking application programming interfaces across isolated parts of a web application |
US11611629B2 (en) * | 2020-05-13 | 2023-03-21 | Microsoft Technology Licensing, Llc | Inline frame monitoring |
EP4002788A1 (en) * | 2020-11-13 | 2022-05-25 | Secure Thingz Limited | A system and devices for secure and efficient provisioning of electronic devices |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3305769B2 (ja) * | 1992-09-18 | 2002-07-24 | 株式会社東芝 | 通信装置 |
US5649099A (en) * | 1993-06-04 | 1997-07-15 | Xerox Corporation | Method for delegating access rights through executable access control program without delegating access rights not in a specification to any intermediary nor comprising server security |
JP3361661B2 (ja) * | 1995-09-08 | 2003-01-07 | 株式会社キャディックス | ネットワーク上の認証方法 |
US6167409A (en) | 1996-03-01 | 2000-12-26 | Enigma Information Systems Ltd. | Computer system and method for customizing context information sent with document fragments across a computer network |
US5983227A (en) * | 1997-06-12 | 1999-11-09 | Yahoo, Inc. | Dynamic page generator |
AU2471399A (en) | 1998-01-27 | 1999-08-09 | Sun Microsystems, Inc. | Importing and exporting file system entities from a browser |
US6278448B1 (en) | 1998-02-17 | 2001-08-21 | Microsoft Corporation | Composite Web page built from any web content |
JP2000105775A (ja) | 1998-07-29 | 2000-04-11 | Fujitsu Ltd | ブラウザを利用したスライドショ―システムおよび方法 |
US6212640B1 (en) | 1999-03-25 | 2001-04-03 | Sun Microsystems, Inc. | Resources sharing on the internet via the HTTP |
US6538673B1 (en) | 1999-08-23 | 2003-03-25 | Divine Technology Ventures | Method for extracting digests, reformatting, and automatic monitoring of structured online documents based on visual programming of document tree navigation and transformation |
US6874121B1 (en) | 1999-11-24 | 2005-03-29 | Xerox Corporation | Document editor for editing structure documents |
US20040210845A1 (en) | 2000-04-18 | 2004-10-21 | Glenn Paul | Internet presentation system |
WO2001090908A1 (en) | 2000-05-22 | 2001-11-29 | Sap Portals Inc. | Snippet selection |
JP2002140277A (ja) | 2000-11-01 | 2002-05-17 | Dsi Telecom Japan Kk | 業務用ファイルのウェブ上同時提供の統合通信システム |
KR100407206B1 (ko) | 2000-11-29 | 2003-11-28 | 링크플러스(주) | 프리프로세서 및 그를 이용한 웹문서 처리방법 및 장치 |
KR20010044189A (ko) | 2000-12-29 | 2001-06-05 | 유진우 | 멀티브라우즈 기능을 구비한 웹문서 처리방법 및 장치 |
US6725219B2 (en) | 2001-03-13 | 2004-04-20 | Seiko Epson Corporation | Internet presentation system |
IL142815A (en) * | 2001-04-25 | 2010-06-16 | Gal Trifon | A method for dynamically changing one web page to another web page |
JP4843867B2 (ja) | 2001-05-10 | 2011-12-21 | ソニー株式会社 | 文書処理装置、文書処理方法および文書処理プログラム、ならびに、記録媒体 |
CA2354993C (en) * | 2001-08-10 | 2010-11-09 | Ibm Canada Limited-Ibm Canada Limitee | Method of indicating links to external urls |
US7315848B2 (en) | 2001-12-12 | 2008-01-01 | Aaron Pearse | Web snippets capture, storage and retrieval system and method |
US7124358B2 (en) | 2002-01-02 | 2006-10-17 | International Business Machines Corporation | Method for dynamically generating reference identifiers in structured information |
WO2003067470A1 (fr) | 2002-02-08 | 2003-08-14 | Fujitsu Limited | Appareil de delivrance de documents, appareil de reception de documents, procede de delivrance de documents, programme de delivrance de documents et systeme de delivrance de documents |
US7237192B1 (en) | 2002-04-30 | 2007-06-26 | Oracle International Corporation | Methods and systems for naming and indexing children in a hierarchical nodal structure |
US7392296B2 (en) | 2002-06-19 | 2008-06-24 | Eastman Kodak Company | Method and computer software program for sharing images over a communication network among a plurality of users in accordance with a criteria |
US7181682B1 (en) | 2002-06-27 | 2007-02-20 | Siebel Systems, Inc. | Document publishing and rendering |
JP2004193702A (ja) | 2002-12-09 | 2004-07-08 | Kozo Keikaku Engineering Inc | ビデオ画像共有システム |
WO2004068320A2 (en) | 2003-01-27 | 2004-08-12 | Vincent Wen-Jeng Lue | Method and apparatus for adapting web contents to different display area dimensions |
US7685631B1 (en) * | 2003-02-05 | 2010-03-23 | Microsoft Corporation | Authentication of a server by a client to prevent fraudulent user interfaces |
US7299409B2 (en) * | 2003-03-07 | 2007-11-20 | International Business Machines Corporation | Dynamically updating rendered content |
US7119716B2 (en) * | 2003-05-28 | 2006-10-10 | Legalview Assets, Limited | Response systems and methods for notification systems for modifying future notifications |
US7293034B2 (en) * | 2004-02-23 | 2007-11-06 | Microsoft Coporation | Dynamically customizing a user interface for the aggregation of content |
JP2006079294A (ja) * | 2004-09-08 | 2006-03-23 | Fuji Xerox Co Ltd | 情報処理装置、実行制御方法及び実行制御プログラム |
GB0420673D0 (en) * | 2004-09-17 | 2004-10-20 | Ibm | Data sharing system, method and software tool |
US7487214B2 (en) * | 2004-11-10 | 2009-02-03 | Microsoft Corporation | Integrated electronic mail and instant messaging application |
US20060248192A1 (en) | 2005-04-29 | 2006-11-02 | Morris Stanley S Iii | Method for pulling images from the internet for viewing on a remote digital display |
US9495072B2 (en) | 2006-02-02 | 2016-11-15 | At&T Intellectual Property I, L.P. | System and method for sharing content with a remote device |
US8250082B2 (en) * | 2006-06-23 | 2012-08-21 | Microsoft Corporation | Cross domain communication |
US20080172704A1 (en) | 2007-01-16 | 2008-07-17 | Montazemi Peyman T | Interactive audiovisual editing system |
US8125510B2 (en) | 2007-01-30 | 2012-02-28 | Ankur Agarwal | Remote workspace sharing |
US7958516B2 (en) * | 2007-04-18 | 2011-06-07 | Google Inc | Controlling communication within a container document |
US10019570B2 (en) * | 2007-06-14 | 2018-07-10 | Microsoft Technology Licensing, Llc | Protection and communication abstractions for web browsers |
US7979791B2 (en) * | 2007-07-30 | 2011-07-12 | Google Inc. | Cross-domain communication |
-
2007
- 2007-08-27 US US11/845,538 patent/US8108770B2/en not_active Expired - Fee Related
-
2008
- 2008-08-11 KR KR1020107006722A patent/KR101145005B1/ko active IP Right Grant
- 2008-08-11 EP EP08797588.4A patent/EP2183721B1/en not_active Not-in-force
- 2008-08-11 WO PCT/US2008/072757 patent/WO2009029404A2/en active Application Filing
- 2008-08-11 CN CN2008801048833A patent/CN101790747B/zh active Active
- 2008-08-11 JP JP2010523018A patent/JP5017453B2/ja active Active
- 2008-08-15 TW TW097131175A patent/TWI387933B/zh not_active IP Right Cessation
- 2008-09-09 US US12/207,430 patent/US8108771B2/en not_active Expired - Fee Related
-
2010
- 2010-12-20 HK HK10111864.8A patent/HK1145558A1/xx not_active IP Right Cessation
-
2012
- 2012-01-30 US US13/361,721 patent/US9424551B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
KR101145005B1 (ko) | 2012-05-21 |
JP5017453B2 (ja) | 2012-09-05 |
CN101790747A (zh) | 2010-07-28 |
US20120131448A1 (en) | 2012-05-24 |
TW200926043A (en) | 2009-06-16 |
US8108771B2 (en) | 2012-01-31 |
HK1145558A1 (en) | 2011-04-21 |
US8108770B2 (en) | 2012-01-31 |
US9424551B2 (en) | 2016-08-23 |
EP2183721A4 (en) | 2015-03-11 |
EP2183721B1 (en) | 2019-03-13 |
JP2011501829A (ja) | 2011-01-13 |
WO2009029404A3 (en) | 2009-05-22 |
CN101790747B (zh) | 2012-06-13 |
WO2009029404A2 (en) | 2009-03-05 |
KR20100049669A (ko) | 2010-05-12 |
EP2183721A2 (en) | 2010-05-12 |
US20090063613A1 (en) | 2009-03-05 |
US20090064183A1 (en) | 2009-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI387933B (zh) | 用於安全模組間通訊機制之方法及裝置 | |
Hernández Ramos et al. | Mqtt security: A novel fuzzing approach | |
US9436763B1 (en) | Infrastructure enabling intelligent execution and crawling of a web application | |
US20200304562A1 (en) | Instance backed mobile devices | |
TWI639132B (zh) | 訊息中影像的傳送方法、執行此傳送方法的計算系統及用於此方法的儲存媒體 | |
US9350763B1 (en) | HTTP tunnelling over websockets | |
KR101768793B1 (ko) | 토큰 피기백킹 시스템 및 방법 | |
JP6676080B2 (ja) | 近距離通信を介してアプリケーションバージョンをインストールする方法およびシステム | |
US7984170B1 (en) | Cross-domain communication in domain-restricted communication environments | |
US10257315B2 (en) | Secure proxied data retrieval from third-party services | |
US20100082771A1 (en) | Mechanism for inserting trustworthy parameters into ajax via server-side proxy | |
CN108416021B (zh) | 一种浏览器网页内容处理方法、装置、电子设备及可读介质 | |
US9672052B1 (en) | Secure inter-process communication | |
JP2022546073A (ja) | サードパーティ・クッキーなしにウェブ・パブリッシャー・インベントリをプログラマティック・エクスチェンジに接続すること | |
EP2813051B1 (en) | Dynamic sharing of a webservice | |
AU2018390863B2 (en) | Computer system and method for extracting dynamic content from websites | |
US20130132508A1 (en) | Low latency referrer free requests | |
CN112347382A (zh) | 产品页面分享方法、装置及电子设备 | |
US20230396591A1 (en) | Server-Side Anonymous Identifier Web Service | |
JP6818517B2 (ja) | 位置情報管理装置及び位置情報管理方法 | |
EP2595359B1 (en) | Low Latency Referrer Free Requests | |
CN116149876A (zh) | 资源共享方法及装置、电子设备和计算机可读存储介质 | |
KR20060082184A (ko) | 인터넷 광고서버시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |