TWI521373B - 在保護使用者隱私的同時進行單次登入之方法與系統 - Google Patents

在保護使用者隱私的同時進行單次登入之方法與系統 Download PDF

Info

Publication number
TWI521373B
TWI521373B TW103116742A TW103116742A TWI521373B TW I521373 B TWI521373 B TW I521373B TW 103116742 A TW103116742 A TW 103116742A TW 103116742 A TW103116742 A TW 103116742A TW I521373 B TWI521373 B TW I521373B
Authority
TW
Taiwan
Prior art keywords
user identifier
application
user
identifier
container
Prior art date
Application number
TW103116742A
Other languages
English (en)
Other versions
TW201506666A (zh
Inventor
德里克S 胡恩
傑若米M 維納
艾默V 帕德克爾
Original Assignee
蘋果公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 蘋果公司 filed Critical 蘋果公司
Publication of TW201506666A publication Critical patent/TW201506666A/zh
Application granted granted Critical
Publication of TWI521373B publication Critical patent/TWI521373B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Description

在保護使用者隱私的同時進行單次登入之方法與系統
所描述實施例大體上係關於用於在資料中心中開發應用程式之方法、器件及系統。更特定言之,本文所揭示之實施例係關於在保護使用者隱私的同時進行單次登入且針對以網路為基礎之軟體應用程式之使用者進行通訊錄探索的方法及系統。
用戶端運算器件--諸如,智慧型電話及平板電腦--之激增已急劇地改變軟體應用程式被設計及執行之方式。軟體應用程式依賴於諸如經設計成與軟體應用程式互動之程式開發伺服器(development server)的存取伺服器運算器件。當軟體應用程式聯絡伺服器時,進行使用者鑑認以便使伺服器釋放及提供資料及服務。在許多例項中,應用程式提供者或開發人員運用程式開發伺服器來處置登入處理序中之使用者個人資訊。雖然此組態簡化軟體應用程式之操作,但其向協力廠商(至少是開發人員)曝露使用者之隱私。隨著開發人員利用其可處置之資訊,使用者變得遭到垃圾廣告、徵詢及電子垃圾郵件的轟擊。最終,軟體應用程式變得不風行且失去使用者訂用。
因此,需要一種保護使用者隱私免於協力廠商的用於以網路為基礎之軟體應用程式之登入組態。
在一第一實施例中,提供一種用於使應用程式能夠參考使用者資訊之方法。該方法可包括:自一應用程式接收針對參考該應用程式之一使用者之一第一使用者識別符的一第一請求;及將針對該第一使用者識別符之一第二請求發送至一伺服器。因此,該第二請求包括參考該使用者之一第二使用者識別符,及用於該第二使用者識別符之一第二鑑認符記,其中該第二使用者識別符及該第二鑑認符記係不可由該使用者存取。該方法亦可包括:自該伺服器接收該第一使用者識別符及用於該第一使用者識別符之一第一鑑認符記,其中在一些實施例中,該第一使用者識別符對應於該第二識別符。最後,該方法包括:將該第一使用者識別符及該第一鑑認符記提供至該應用程式。
在一第二實施例中,提供一種用於使一應用程式能夠識別與該應用程式之一第一使用者相關聯之一或多個使用者的方法。該方法包括:自一應用程式接收可用以識別一或多個使用者之聯絡人資訊。該方法進一步包括:自該應用程式接收針對參考該一或多個使用者之一或多個使用者識別符的一請求;及將該聯絡人資訊及針對參考該一或多個使用者之一或多個使用者識別符的該請求發送至一伺服器。在一些實施例中,該方法包括:自該伺服器接收參考一或多個使用者之該一或多個使用者識別符。此外,該方法可包括:自該伺服器接收該一或多個使用者識別符與該一或多個使用者之間的一相關;及另外將該一或多個使用者識別符及該一或多個使用者識別符與該一或多個使用者之間的該相關提供至該應用程式。
在一第三實施例中,提供一種用於使一應用程式能夠識別與該應用程式之一第一使用者相關聯之一或多個使用者的方法。該方法包括:自一應用程式接收針對參考該第一使用者之一聯絡人清單中之一或多個使用者之一或多個使用者識別符的一請求,其中該聯絡人清單係不可由該應用程式存取。又,該方法可包括:將針對參考該聯絡人 清單中之一或多個使用者之一或多個使用者識別符的該請求發送至一伺服器;自該伺服器接收參考一或多個使用者之該一或多個使用者識別符;及最後將該一或多個使用者識別符提供至該應用程式。
本發明之其他態樣及優點將自結合隨附圖式而採取之以下詳細描述變得顯而易見,該等圖式作為實例而說明所描述實施例之原理。
10‧‧‧單次登入組態
100‧‧‧程式開發伺服器
101‧‧‧容器
101-1‧‧‧容器
101-2‧‧‧容器
101-3‧‧‧容器
111‧‧‧處理器電路
112‧‧‧記憶體電路
120‧‧‧應用程式
120-1‧‧‧應用程式A
120-2‧‧‧應用程式B
120-3‧‧‧應用程式C
150‧‧‧用戶端器件
151‧‧‧處理器電路
152‧‧‧記憶體電路
181‧‧‧網路連結
185‧‧‧使用者識別符(ID)
185-1‧‧‧使用者ID
185-m‧‧‧使用者ID
185-n‧‧‧使用者ID
190‧‧‧精靈協助程式
191‧‧‧目的地傳信ID(DSID)
191-1‧‧‧DSID
191-n‧‧‧DSID
192‧‧‧鑑認符記
192-1‧‧‧鑑認符記
192-n‧‧‧鑑認符記
271‧‧‧應用程式名稱
272‧‧‧容器名稱
300‧‧‧資料表
400‧‧‧通訊錄探索組態
401‧‧‧提示
402‧‧‧映像
410-1‧‧‧使用者個人資訊
410-m‧‧‧使用者個人資訊
450‧‧‧通訊錄
451‧‧‧名稱
452‧‧‧個人資訊/清單
500‧‧‧方法
510‧‧‧步驟
520‧‧‧步驟
530‧‧‧步驟
540‧‧‧步驟
600‧‧‧方法
610‧‧‧步驟
620‧‧‧步驟
630‧‧‧步驟
700‧‧‧方法
710‧‧‧步驟
720‧‧‧步驟
730‧‧‧步驟
740‧‧‧步驟
750‧‧‧步驟
800‧‧‧方法
810‧‧‧步驟
820‧‧‧步驟
830‧‧‧步驟
840‧‧‧步驟
850‧‧‧步驟
860‧‧‧步驟
900‧‧‧方法
910‧‧‧步驟
920‧‧‧步驟
930‧‧‧步驟
940‧‧‧步驟
950‧‧‧步驟
1000‧‧‧方法
1010‧‧‧步驟
1020‧‧‧步驟
1030‧‧‧步驟
1040‧‧‧步驟
1050‧‧‧步驟
1100‧‧‧方法
1110‧‧‧步驟
1120‧‧‧步驟
1125‧‧‧步驟
1130‧‧‧步驟
1140‧‧‧步驟
1145‧‧‧步驟
1150‧‧‧步驟
1160‧‧‧步驟
1170‧‧‧步驟
1180‧‧‧步驟
可藉由參考以下描述及隨附圖式來較好地理解所描述實施例。另外,可藉由參考以下描述及隨附圖式來較好地理解所描述實施例之優點。此等圖式並不限制可對所描述實施例進行之任何形式及細節改變。任何此等改變不脫離所描述實施例之精神及範疇。
圖1說明根據一些實施例的呈單次登入組態之程式開發伺服器及用戶端器件的方塊圖。
圖2說明根據一些實施例的經調適用於單次登入組態之用戶端器件的方塊圖。
圖3說明根據一些實施例的經調適用於單次登入組態之程式開發伺服器中之容器的方塊圖。
圖4說明根據一些實施例的呈通訊錄探索組態之用戶端及容器的方塊圖。
圖5說明根據一些實施例的包括用於單次登入組態之方法中之步驟的流程圖。
圖6說明根據一些實施例的包括用於包括多個使用者識別符之單次登入組態之方法中之步驟的流程圖。
圖7說明根據一些實施例的包括用於在以網路為基礎之軟體應用程式中探索通訊錄之方法中之步驟的流程圖。
圖8說明根據一些實施例的包括用於在以網路為基礎之軟體應用程式中探索通訊錄之方法中之步驟的流程圖,該方法包括接收選自通 訊錄之資訊。
圖9說明根據一些實施例的包括用於在以網路為基礎之軟體應用程式中探索通訊錄之方法中之步驟的流程圖。
圖10說明根據一些實施例的包括用於在如上以網路為基礎之軟體應用程式中探索通訊錄之方法中之步驟的流程圖,該方法包括探索具有給定地址之使用者。
圖11說明根據一些實施例的包括用於建立電子郵件使用者清單之方法中之步驟的流程圖。
在該等圖中,運用相同或相似參考數字所提及之元件包括與該參考數字之第一出現例項中描述之結構、用途或程序相同或相似的結構、用途或程序。
此章節中描述根據本申請案之方法及裝置的代表性應用。提供此等實例以僅僅添加上下文且幫助理解所描述實施例。因此,對於熟習此項技術者而言將顯而易見,可在無此等特定細節中之一些或全部的情況下實踐所描述實施例。在其他例項中,尚未詳細地描述熟知之處理序步驟以便避免不必要地混淆所描述實施例。其他應用係可能的,使得不應將以下實例視為限制性的。
在以下詳細描述中,參考隨附圖式,該等圖式形成該描述之部分且在該等圖式中作為說明而展示根據所描述實施例之特定實施例。雖然足夠詳細地描述此等實施例以使熟習此項技術者能夠實踐所描述實施例,但應理解,此等實例不為限制性的;使得在不脫離所描述實施例之精神及範疇的情況下可使用其他實施例且可進行改變。
以網路為基礎之軟體應用程式的使用已歸因於能夠耦接至網路之多種攜帶型或手持型電子器件的可用性而快速地增加。諸如智慧型電話、平板電腦或膝上型電腦之用戶端器件可藉由使用可經由網路伺 服器而存取之遠端資源來執行軟體應用程式。網路伺服器可為將儲存及資料處理能力提供至軟體應用程式(在下文中被稱作「應用程式」)之程式開發伺服器。為了執行應用程式,用戶端器件呈現唯一鑑認符記以向程式開發伺服器進行登入。在運用鑑認符記的情況下,程式開發伺服器可關於軟體應用程式來判定處置用戶端器件之使用者的屬性及特殊權限。因此,在本文所揭示之實施例中,使用者個人資訊被保持私密免於協力廠商。
在與本發明一致之實施例中,應用程式登入使用者而不向使用者詢問私密資訊或任何其他註冊協定。鑑認處理序對處置用戶端器件之使用者透明,因此產生愉快體驗。來自使用者之任何經鑑認資訊或私密資訊向應用程式自身隱藏。應用程式查看與儲存於程式開發伺服器中之資料清單一致的穩定使用者ID。因此,根據本文所揭示之實施例,保護使用者隱私之單次登入組態能夠建立穩定使用者ID以供橫越多個應用程式而使用。來自使用者之私密資訊不與應用程式或應用程式開發人員共用。此情形對於執行多個應用程式之使用者而言更加相關,該多個應用程式中之一些可將用戶端器件連結至協力廠商網路伺服器。處置用戶端器件之使用者可需要使個人資訊保持私密,且不使個人資訊與協力廠商網路伺服器共用。
圖1說明根據一些實施例的呈單次登入組態10之程式開發伺服器100及用戶端器件150的方塊圖。在單次登入組態10中,用戶端器件150經由網路連結181而與程式開發伺服器100互動。用戶端器件150、程式開發伺服器100及使用者電子器件150中每一者可包括一記憶體電路及一處理器電路。該等記憶體電路儲存在執行時使該等處理器電路執行根據本文所揭示之實施例之操作的命令及資料。舉例而言,用戶端器件150包括處理器電路151及記憶體電路152;且程式開發伺服器100包括處理器電路111及記憶體電路112。
程式開發伺服器100包括複數個容器101-1、101-2及101-3(在下文中被集體地稱為容器101)。容器101包括與應用程式120-1(應用程式A)、120-2(應用程式B)及120-3(應用程式C)(在下文中被一般地稱作應用程式120)相關聯之資料結構。容器101包括在由用戶端器件150請求後即由處理器電路111操縱之資料結構。容器101與應用程式120-1、120-2及120-3之間的特定相關可不為一對一。舉例而言,圖1說明與容器101-1及101-2相關聯之應用程式A、與容器101-3相關聯之應用程式B,及亦與容器101-3相關聯之應用程式C。容器101係可由多個應用程式及多個用戶端器件共用。熟習此項技術者將認識到,程式開發伺服器100中之容器101及應用程式的特定數目並不限制與本發明一致之實施例。換言之,任何數目個應用程式及容器101可包括於程式開發伺服器100中。此外,應用程式120之數目可不同於容器101之數目。
用戶端器件150包括應用程式120及精靈協助程式(daemon)190。應用程式120可為任何類型之以網路為基礎之可執行軟體程式碼,包括應用程式120-1、120-2及120-3中任一者。精靈協助程式190可包括由執行於用戶端器件上之應用程式產生的獨立作業系統處理序。在一些實施例中,單次登入組態10涉及在該等用戶端運算器件中每一者上實施精靈協助程式190以與程式開發伺服器100互動。
因此,在一些實施例中,程式開發伺服器100自用戶端器件150接收對建立或查閱給定使用者識別符(ID)185之請求。程式開發伺服器100接著判定處置用戶端器件150之使用者是否已經向程式開發伺服器100進行註冊。若使用者尚未註冊,則程式開發伺服器100建立與目的地傳信ID(DSID)191相關聯之使用者ID 185。包括DSID 191之用戶端器件150可與鑑認符記192相關聯。鑑認符記192可為諸如密碼之經加密程式碼,使得伺服器100安全地識別用戶端器件150。在一些實施 例中,鑑認符記192亦可關聯至應用程式120。在彼點上,當處置用戶端器件150之使用者輕觸應用程式120時,應用程式120可提示使用者鍵入鑑認符記192。程式開發伺服器100接著傳回被約制於該程式開發伺服器中之容器的與DSID 191及鑑認符記192相關聯之使用者ID 185。DSID 191可為用於用戶端器件之識別符,且鑑認符記192可為與DSID 191及應用程式名稱相關聯之密碼或某一其他經加密程式碼。舉例而言,給定應用程式可具有供處置用戶端器件之使用者存取的密碼。
圖2說明根據一些實施例的經調適用於單次登入組態10之用戶端器件150的方塊圖。用戶端器件150包括應用程式120、精靈協助程式190、處理器電路151及記憶體電路152。在一些實施例中,應用程式120進一步包括由用戶端器件150向精靈協助程式190提供以在單次登入組態10中使用之應用程式名稱271及容器名稱272。如上文所論述,精靈協助程式190包括DSID 191及鑑認符記192。在一些實施例中,由使用者經由密碼或某一其他程式碼、簽名或生物識別度量而將鑑認符記192提供至精靈協助程式190。
根據一些實施例,精靈協助程式190將DSID 191、鑑認符記192及應用程式名稱271提供至程式開發伺服器100。精靈協助程式190可自程式開發伺服器100接收使用者ID 185以在用戶端器件150中執行應用程式120。精靈協助程式190可在應用程式120之執行期間將請求自程式開發伺服器100傳輸至用戶端器件150。此等請求可關於由程式開發伺服器100進行之安全性程序及維護操作。
用戶端器件150可為諸如膝上型電腦或平板電腦之攜帶型電子器件、諸如智慧型電話或任何其他蜂巢式電話之手持型電子器件。在一些實施例中,用戶端器件150可為位於由用戶端操作之網路伺服器中的網站。另外,在一些實施例中,用戶端器件150可為位於由協力廠 商供應商操作之網路伺服器中的網站,且應用程式120之使用者登入至該網站。
圖3說明根據一些實施例的經調適用於單次登入組態10之程式開發伺服器100中之容器101的方塊圖。容器101可包括具有若干行之資料表300,該等行使複數個DSID 191-1至191-n中每一者及複數個鑑認符記192-1至192-n中每一者與複數個使用者ID 185-1至185-n相關聯。一般熟習此項技術者將認識到,值「n」可為資料表300中之行的任何數目。
在單次登入組態10之一些實施例中,程式開發伺服器100自用戶端器件150接收包括應用程式名稱271之請求。接著,程式開發伺服器100識別與應用程式名稱271相關聯之容器101(參看圖1)中任一者。程式開發伺服器100接著判定在經識別容器中是否存在DSID 191與使用者ID 185之間的關聯(映射)。若在DSID 191與使用者ID 185之間不存在關聯,則程式開發伺服器100建立使用者ID 185。程式開發伺服器接著將一行新增至容器中之資料表300。該行使請求存取應用程式120之用戶端器件150的新建立之使用者ID 185與DSID 191相關聯。因此,程式開發伺服器100將新建立之使用者ID 185及鑑認符記192傳回至用戶端器件150。若在資料表300中存在DSID 191與使用者ID 185之間的關聯,則程式開發伺服器100將現有使用者ID 185及鑑認符記192傳回至用戶端器件150。因此,與本發明一致之實施例使能夠在保護使用者隱私的同時使用單次登入程序而自用戶端器件150執行以網路為基礎之軟體應用程式。舉例而言,用戶端器件150可登入至程式開發伺服器100僅一次且準備好執行複數個應用程式120。由於資料表300(包括與DSID 191及鑑認符記192相關聯之使用者ID 185)儲存於程式開發伺服器中之容器中,故獲得平滑且安全之操作。
圖4說明根據一些實施例的呈通訊錄探索組態400之用戶端器件 150及容器101的方塊圖。用戶端器件150包括應用程式120、精靈協助程式190、處理器電路151及記憶體電路152,如上文詳細地所描述(參看圖1至圖3)。用戶端器件150亦可包括通訊錄450。在一些實施例中,通訊錄450可儲存於記憶體電路152中。因此,通訊錄450包括複數個名稱451(名稱1至k)。與複數個名稱451中每一者相關聯,通訊錄450包括複數個清單452(清單1至k)。清單452包括用於每一名稱451之個人資訊。在一些實施例中,名稱451對應於訂用應用程式120之使用者。另外,根據一些實施例,名稱451可對應於訂用程式開發伺服器100中含有之應用程式的使用者。個人資訊452可包括使用者電子郵件、使用者電話號碼、地址、郵寄地址,及與名稱相關聯之其他個人資訊。通訊錄探索組態400可包括容器101中之映像402。映像402包括使用者ID 185-1至185-m之清單。使用者ID 185-1至185-m中每一者係與一使用者個人資訊410-1至410-m相關聯。使用者個人資訊410包括使用者電子郵件420、使用者電話號碼430,及與使用者ID 185相關聯之任何其他個人資訊。
在通訊錄探索組態400之一些實施例中,程式開發伺服器100將提示401提供至用戶端器件150以允許探索通訊錄450。在由處置用戶端器件150之使用者接受後,程式開發伺服器100即可執行通訊錄450之探索。該探索可包括搜尋通訊錄450中之輸入項目與容器101中之映像402中或資料表300中的輸入項目中任一者之間的匹配。舉例而言,可在探索期間尋找名稱451與資料表300(參看圖3)中之使用者ID 185之間的匹配。因此,伺服器100搜尋通訊錄450中與複數個容器101中之映像402及資料表300的匹配。舉例而言,通訊錄探索組態之一些實施例包括未必與應用程式120相關聯之容器101中的通訊錄450之匹配搜尋。
圖5說明根據一些實施例的包括用於單次登入組態之方法500中 之步驟的流程圖。如圖5所說明之單次登入組態可包括經由網路連結而耦接至用戶端器件之程式開發伺服器(例如,單次登入組態10、程式開發伺服器100及用戶端器件150,參看以上圖1)。用戶端器件可正執行以網路為基礎之軟體應用程式(例如,應用程式120,參看圖1)。可部分地或完全地由程式開發伺服器中之處理器電路執行方法500中之步驟,其中該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路111及記憶體電路112,參看圖1)。在一些實施例中,可部分地或完全地由用戶端器件中之處理器電路執行方法500中之步驟,該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路151及記憶體電路152,參看圖1)。
步驟510包括接收針對第一使用者識別符(例如,使用者ID 185)之第一請求。可在使用者嘗試執行以網路為基礎之軟體應用程式後即由伺服器提供該請求。步驟520包括將針對第一使用者識別符之第二請求發送至伺服器(例如,開發人員伺服器)。舉例而言,在一些實施例中,可由處置用戶端器件之使用者所執行的第二以網路為基礎之軟體應用程式產生該請求。在一些實施例中,步驟520可包括向伺服器提供DSID及鑑認符記(例如,DSID 191及鑑認符記192,參看圖1)。步驟530包括自伺服器接收第一使用者識別符及鑑認符記(例如,使用者ID 185及鑑認符記192,參看圖1)。根據一些實施例,可部分地或完全地由用戶端器件中之精靈協助程式(例如,精靈協助程式190,參看圖1)執行步驟520及530。步驟540包括將第一使用者識別符及第一鑑認符記提供至應用程式。因此,在一些實施例中,由用戶端器件中之精靈協助程式執行步驟540。
圖6說明根據一些實施例的包括用於包括多個使用者識別符之單次登入組態之方法600中之步驟的流程圖。如圖6所說明之單次登入組態可包括經由網路連結而耦接至用戶端器件之程式開發伺服器(例 如,單次登入組態10、程式開發伺服器100及用戶端器件150,參看以上圖1)。用戶端器件可正執行以網路為基礎之軟體應用程式(例如,應用程式120,參看圖1)。可部分地或完全地由程式開發伺服器中之處理器電路執行方法600中之步驟,其中該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路111及記憶體電路112,參看圖1)。在一些實施例中,可部分地或完全地由用戶端器件中之處理器電路執行方法600中之步驟,該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路151及記憶體電路152,參看圖1)。
步驟610可包括自應用程式接收針對一或多個使用者ID(例如,使用者ID 185,參看圖1)之請求。步驟620可包括將來自步驟610的針對一或多個使用者ID之請求發送至伺服器(例如,程式開發伺服器)。步驟630可包括自伺服器接收一或多個使用者ID。因此,在一些實施例中,部分地或完全地由耦接至用戶端器件中之精靈協助程式處理序(精靈協助程式190,參看圖1)的程式開發伺服器執行步驟610至630。
圖7說明根據一些實施例的包括用於在以網路為基礎之軟體應用程式中探索通訊錄之方法700中之步驟的流程圖。方法700可包括經由網路連結而耦接至用戶端器件之程式開發伺服器(例如,程式開發伺服器100及用戶端器件150,參看以上圖1)。可部分地或完全地由程式開發伺服器中之處理器電路執行方法700中之步驟,其中該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路111及記憶體電路112,參看圖1)。在一些實施例中,可部分地或完全地由用戶端器件中之處理器電路執行方法700中之步驟,該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路151及記憶體電路152,參看圖1)。
步驟710包括查詢用戶端器件中之通訊錄。在一些實施例中,步驟710可包括由伺服器提供向處置用戶端器件之使用者請求通訊錄查 詢的提示(例如,提示401,參看圖4)。步驟720包括將通訊錄提供至伺服器。步驟730包括自伺服器選擇經審查地址。因此,步驟730可包括比較通訊錄中之地址與儲存於伺服器中之容器(例如,容器101中之一者,參看圖1)中的地址。經審查地址可為容器中包括的已註冊使用者之地址。步驟740包括查詢使用者ID以得到通訊錄中之電子郵件及電話號碼。步驟750包括將聯絡人至使用者ID映射提供至用戶端器件。因此,步驟750可包括在容器中建立映像,或將一行新增至容器中之已經存在的映像(例如,映像402,參看圖4)。
圖8說明根據一些實施例的包括用於在以網路為基礎之軟體應用程式中探索通訊錄之方法800中之步驟的流程圖,方法800包括接收選自通訊錄之資訊。方法800可包括經由網路連結而耦接至用戶端器件之程式開發伺服器(例如,程式開發伺服器100及用戶端器件150,參看以上圖1)。方法800中之通訊錄可儲存於用戶端器件中(例如,通訊錄450,參看圖4)。用戶端器件可正執行以網路為基礎之軟體應用程式(例如,應用程式120,參看圖1)。可部分地或完全地由程式開發伺服器中之處理器電路執行方法800中之步驟,其中該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路111及記憶體電路112,參看圖1)。在一些實施例中,可部分地或完全地由用戶端器件中之處理器電路執行方法800中之步驟,該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路151及記憶體電路152,參看圖1)。此外,可由經由網路連結而將用戶端器件與伺服器耦接之精靈協助程式處理序執行方法800中之步驟(例如,精靈協助程式190及連結181,參看圖1)。
步驟810包括自應用程式接收可用以識別一或多個使用者之聯絡人資訊。因此,步驟810可包括自用戶端器件中之通訊錄擷取的個人資訊(例如,個人資訊452,圖4)。步驟820包括自應用程式接收針對 一或多個使用者識別符之請求。一或多個使用者識別符可與正由一或多個用戶端器件執行之一或多個以網路為基礎之軟體應用程式相關聯。步驟830包括將聯絡人資訊及針對一或多個使用者識別符之請求發送至伺服器(例如,程式開發伺服器100)。步驟840包括自伺服器接收參考一或多個使用者之一或多個使用者識別符。舉例而言,在一些實施例中,處置用戶端器件之單一使用者可與用於一或多個應用程式之一或多個使用者識別符相關聯。步驟850包括自伺服器接收使用者識別符與使用者之間的相關。因此,步驟850可包括自伺服器接收映像(例如,映像402,參看圖4)。步驟860包括將使用者識別符及使用者識別符與使用者之間的相關提供至應用程式。因此,可由與用戶端器件中之以網路為基礎之軟體應用程式互動的精靈協助程式執行步驟860。
圖9說明根據一些實施例的包括用於在以網路為基礎之軟體應用程式中探索通訊錄之方法900中之步驟的流程圖。方法900可包括經由網路連結而耦接至用戶端器件之程式開發伺服器(例如,程式開發伺服器100及用戶端器件150,參看以上圖1)。方法900中之通訊錄可儲存於用戶端器件中(例如,通訊錄450,參看圖4)。可部分地或完全地由程式開發伺服器中之處理器電路執行方法900中之步驟,其中該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路111及記憶體電路112,參看圖1)。在一些實施例中,可部分地或完全地由用戶端器件中之處理器電路執行方法900中之步驟,該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路151及記憶體電路152,參看圖1)。可由與執行於用戶端器件中之精靈協助程式處理序(精靈協助程式190,參看圖1)互動的伺服器執行方法900中之步驟。
步驟910包括向用戶端器件請求使用者ID及通訊錄。步驟920包括查詢用戶端器件中之通訊錄。步驟920可包括在通訊錄中搜尋可儲 存於伺服器中包括之容器中的名稱(例如,名稱450及容器101,參看圖4)。步驟930包括在伺服器(例如,程式開發伺服器)中接收通訊錄。因此,步驟930可包括自用戶端器件接收整個通訊錄。在一些實施例中,步驟930包括在伺服器中僅接收具有通訊錄中之名稱與儲存於容器中之名稱之間的匹配的通訊錄之部分。步驟940包括將聯絡人映射至被約制於使用者ID之以網路為基礎之軟體應用程式。因此,步驟940可包括將若干行新增於容器中包括之映像中。所新增之行可包括自通訊錄擷取之使用者電子郵件值及使用者電話號碼值(例如,使用者電子郵件420及使用者電話號碼430,參看圖4)。步驟950包括將應用程式約制式使用者ID提供至伺服器中註冊之使用者。因此,伺服器中註冊之使用者可為不同於處置已供查詢通訊錄之用戶端器件之使用者的使用者。
圖10說明根據一些實施例的包括用於在以網路為基礎之軟體應用程式中探索通訊錄之方法1000中之步驟的流程圖,方法1000包括探索具有給定地址之使用者。方法1000可包括經由網路連結而耦接至用戶端器件之程式開發伺服器(例如,程式開發伺服器100及用戶端器件150,參看以上圖1)。方法1000中之通訊錄可儲存於用戶端器件中(例如,通訊錄450,參看圖4)。可部分地或完全地由程式開發伺服器中之處理器電路執行方法1000中之步驟,其中該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路111及記憶體電路112,參看圖1)。在一些實施例中,可部分地或完全地由用戶端器件中之處理器電路執行方法1000中之步驟,該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路151及記憶體電路152,參看圖1)。可由與執行於用戶端器件中之精靈協助程式處理序(精靈協助程式190,參看圖1)互動的伺服器執行方法900中之步驟。
步驟1010包括自註冊至伺服器之使用者擷取通訊錄。步驟1020 包括探索通訊錄中具有給定地址之使用者。舉例而言,步驟1020可包括尋找儲存於伺服器中包括之容器中之已知地址與用戶端器件中包括之通訊錄中之地址的匹配。步驟1030包括在伺服器中接收通訊錄。因此,步驟1030可包括自用戶端器件接收整個通訊錄。在一些實施例中,步驟1030包括在伺服器中僅接收具有通訊錄中之地址與儲存於容器(例如,容器101,參看圖4)中之地址之間的匹配的通訊錄之部分。步驟1040包括將聯絡人映射至被約制於使用者ID之以網路為基礎之軟體應用程式。因此,步驟1040可包括使映像(例如,映像402)中之使用者ID及使用者個人資訊與容器中包括之複數個應用程式相關聯。步驟1050包括將約制式使用者ID提供至伺服器中註冊之使用者。因此,伺服器中註冊之使用者可為不同於處置已供查詢通訊錄之用戶端器件之使用者的使用者。
圖11說明根據一些實施例的包括用於建立電子郵件使用者清單之方法1100中之步驟的流程圖。方法1100可包括經由網路連結而耦接至用戶端器件之程式開發伺服器(例如,程式開發伺服器100、用戶端器件150及網路連結181,參看以上圖1)。可部分地或完全地由程式開發伺服器中之處理器電路執行方法1100中之步驟,其中該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路111及記憶體電路112,參看圖1)。在一些實施例中,可部分地或完全地由用戶端器件中之處理器電路執行方法1100中之步驟,該處理器電路執行儲存於記憶體電路中之命令(例如,處理器電路151及記憶體電路152,參看圖1)。
步驟1110包括請求針對通訊錄中之探索範疇的使用者權限。方法1100中之通訊錄可儲存於用戶端器件中(例如,通訊錄450,參看圖4)。若在步驟1120中使用者不接受,則步驟1125包括使通訊錄變得不可探索。若在步驟1120中使用者接受,則步驟1130包括使通訊錄變得 可探索。舉例而言,步驟1130可包括向用戶端器件中之精靈協助程式提供允許伺服器執行諸如以上方法700、800及900之方法的組態。步驟1140判定使用者是否接受來自伺服器之電子郵件。若使用者拒絕來自伺服器之電子郵件,則步驟1145包括自電子郵件清單移除使用者。若使用者接受來自伺服器之電子郵件,則步驟1150包括將使用者新增至電子郵件清單。步驟1160包括自伺服器(例如,開發人員伺服器100)接收使用者介面以產生電子郵件。步驟1170包括向伺服器提供用以將電子郵件發送至電子郵件清單中之使用者的中心。步驟1180包括允許使用者雙態觸發可探索性設定及電子郵件提醒設定。在一些實施例中,可根據伺服器中之複數個容器(例如,容器101,參看圖1)來分組雙態觸發。
可分離地使用或以任何組合來使用所描述實施例之各種態樣、實施例、實施或特徵。可藉由軟體、硬體或硬體與軟體之組合來實施所描述實施例之各種態樣。所描述實施例亦可被體現為用於控制生產操作之電腦可讀媒體上的電腦可讀程式碼,或被體現為用於控制生產線之電腦可讀媒體上的電腦可讀程式碼。電腦可讀媒體為可儲存資料之任何資料儲存器件,該資料此後可由電腦系統讀取。電腦可讀媒體之實例包括唯讀記憶體、隨機存取記憶體、CD-ROM、HDD、DVD、磁帶及光學資料儲存器件。電腦可讀媒體亦可遍及網路耦接電腦系統而分散,使得以分散方式儲存及執行電腦可讀程式碼。
出於解釋之目的,前述描述使用特定術語以提供對所描述實施例之透徹理解。然而,對於熟習此項技術者而言將顯而易見,無需特定細節來實踐所描述實施例。因此,出於說明及描述之目的而呈現特定實施例之前述描述。該等描述並不意欲為詳盡的或將所描述實施例限於所揭示之精確形式。對於一般熟習此項技術者而言將顯而易見,鑒於以上教示,許多修改及變化係可能的。
100‧‧‧程式開發伺服器
101‧‧‧容器
120‧‧‧應用程式
150‧‧‧用戶端器件
151‧‧‧處理器電路
152‧‧‧記憶體電路
181‧‧‧網路連結
185-1‧‧‧使用者ID
185-m‧‧‧使用者ID
190‧‧‧精靈協助程式
400‧‧‧通訊錄探索組態
401‧‧‧提示
402‧‧‧映像
410-1‧‧‧使用者個人資訊
410-m‧‧‧使用者個人資訊
450‧‧‧通訊錄
451‧‧‧名稱
452‧‧‧個人資訊/清單

Claims (20)

  1. 一種用於使一應用程式能夠識別該應用程式之一使用者之方法,該方法包含:於正在執行該應用程式之一運算器件處:自該應用程式接收針對一第一使用者識別符的一第一請求,該第一使用者識別符僅參考該應用程式之一約制(scope)內的該使用者;回應於該第一請求,將針對該第一使用者識別符之一第二請求發送至一伺服器,其中該第二請求包括:參考該使用者之一第二使用者識別符,及用於該第二使用者識別符之一第二鑑認符記(authentication token),其中該第二使用者識別符及該第二鑑認符記不可由該應用程式存取;自該伺服器接收該第一使用者識別符及用於該第一使用者識別符之一第一鑑認符記,其中該第一使用者識別符對應於該第二使用者識別符;及將該第一使用者識別符提供至該應用程式。
  2. 如請求項1之方法,其中該第二請求進一步包括識別與該應用程式相關聯之一容器的一容器識別符,且當一或多個應用程式係與該容器相關聯時,該第一使用者識別符係可由該一或多個應用程式存取。
  3. 如請求項1之方法,其進一步包含:在該伺服器處及自該運算器件接收該第二請求,該第二請求包括該第二使用者識別符及該第二鑑認符記;判定在該第二使用者識別符與一應用程式可存取使用者識別 符之間是否存在一關聯;及將該應用程式可存取使用者識別符發送至該運算器件,其中該第一使用者識別符為該應用程式可存取使用者識別符。
  4. 如請求項3之方法,其中接收該第二請求包括:接收該第二請求包含接收識別與該應用程式相關聯之一容器的一容器識別符及識別與該容器識別符相關聯之一容器;及判定該關聯是否存在進一步包含判定該容器識別符與該第二使用者識別符之間是否存在一關聯,其中當該關聯存在時該第一使用者識別符可由與該容器相關聯之應用程式所存取。。
  5. 如請求項4之方法,其中判定是否存在一關聯進一步包含:判定在該容器識別符與該第二使用者識別符之間是否存在一關聯。
  6. 如請求項5之方法,其中當存在該關聯時,該第一使用者識別符係可由與該容器相關聯之應用程式存取。
  7. 如請求項3之方法,其進一步包含:回應於判定出在該第二使用者識別符與該應用程式可存取使用者識別符之間不存在該關聯:產生一新應用程式可存取使用者識別符;及在該第二使用者識別符與該新應用程式可存取使用者識別符之間建立一關聯。
  8. 如請求項7之方法,其中該關聯係由一映射資料表(mapping table)所表示,且在該第二使用者識別符與該新應用程式可存取使用者識別符之間建立該關聯包含在該映射資料表中建立一輸入項目(entry),該輸入項目將該第二使用者識別符映射至該新應用程式可存取使用者識別符。
  9. 如請求項3之方法,其中該關聯係由一映射資料表(mapping table)所表示,且判定在該第二使用者識別符與該應用程式可存 取使用者識別符之間是否存在該關聯包含搜尋該映射資料表以得到包括該第二使用者識別符之一輸入項目。
  10. 如請求項1之方法,其中該第一及第二鑑認符記之至少一者可用以驗證該使用者之一身分識別。
  11. 一種非暫時性電腦可讀媒體,其經組態以儲存多個指令,當由包含於一運算器件中之一處理器執行該等指令時,該運算器件使執行於其上之一應用程式識別該應用程式之一使用者,上述識別係藉由以下步驟實施:自該應用程式接收針對一第一使用者識別符的一第一請求,該第一使用者識別符僅參考該應用程式之一約制內的該使用者;回應於該第一請求,將針對該第一使用者識別符之一第二請求發送至一伺服器,其中該第二請求包括:參考該使用者之一第二使用者識別符,及用於該第二使用者識別符之一第二鑑認符記,其中該第二使用者識別符及該第二鑑認符記不可由該應用程式進行存取;自該伺服器接收該第一使用者識別符及用於該第一使用者識別符之一第一鑑認符記,其中該第一使用者識別符對應於該第二使用者識別符;及將該第一使用者識別符提供至該應用程式。
  12. 如請求項11之非暫時性電腦可讀媒體,其中該伺服器經組態以實施以下步驟:自該運算器件接收該第二請求,該第二請求包含該第二使用者識別符及該第二鑑認符記;判定在該第二使用者識別符與一應用程式可存取使用者識別 符之間是否存在一關聯;及將該應用程式可存取使用者識別符發送至該運算器件,其中該第一使用者識別符為該應用程式可存取使用者識別符。
  13. 如請求項12之非暫時性電腦可讀媒體,其中:接收該第二請求包含接收識別與該應用程式相關聯之一容器的一容器識別符及識別與該容器識別符相關聯之一容器;及判定該關聯是否存在進一步包含判定該容器識別符與該第二使用者識別符之間是否存在一關聯,其中當該關聯存在時該第一使用者識別符可由與該容器相關聯之應用程式所存取。
  14. 如請求項12之非暫時性電腦可讀媒體,其中該伺服器經進一步組態以實施以下步驟:回應於判定出在該第二使用者識別符與該應用程式可存取使用者識別符之間不存在該關聯:產生一新應用程式可存取使用者識別符;及在該第二使用者識別符與該新應用程式可存取使用者識別符之間建立一關聯。
  15. 一種用於使一應用程式識別該應用程式之一使用者之系統,該系統包括:一伺服器;及一運算器件,其上正執行該應用程式,其中該運算器件經組態以實施以下步驟:自該應用程式接收針對一第一使用者識別符的一第一請求,該第一使用者識別符僅參考該應用程式之一約制內的該使用者;回應於該第一請求,將針對該第一使用者識別符之一第二請求發送至該伺服器,其中該第二請求包括: 參考該使用者之一第二使用者識別符,及用於該第二使用者識別符之一第二鑑認符記,其中該第二使用者識別符及該第二鑑認符記不可由該應用程式進行存取;自該伺服器接收該第一使用者識別符及用於該第一使用者識別符之一第一鑑認符記,其中該第一使用者識別符對應於該第二使用者識別符;及將該第一使用者識別符提供至該應用程式。
  16. 如請求項15之系統,其中該伺服器經組態以實施以下步驟:自該運算器件接收該第二請求,該第二請求包含該第二使用者識別符及該第二鑑認符記;判定在該第二使用者識別符與一應用程式可存取使用者識別符之間是否存在一關聯;及將該應用程式可存取使用者識別符發送至該運算器件,其中該第一使用者識別符為該應用程式可存取使用者識別符。
  17. 如請求項16之系統,其中:接收該第二請求包含接收識別與該應用程式相關聯之一容器的一容器識別符及識別與該容器識別符相關聯之一容器;及判定該關聯是否存在進一步包含判定該容器識別符與該第二使用者識別符之間是否存在一關聯,其中當該關聯存在時該第一使用者識別符可由與該容器相關聯之應用程式所存取。
  18. 如請求項16之系統,其中該伺服器經進一步組態以實施以下步驟:回應於判定出在該第二使用者識別符與該應用程式可存取使用者識別符之間不存在該關聯:產生一新應用程式可存取使用者識別符;及 在該第二使用者識別符與該新應用程式可存取使用者識別符之間建立一關聯。
  19. 如請求項18之系統,其中該關聯係由一映射資料表所表示,且在該第二使用者識別符與該新應用程式可存取使用者識別符之間建立該關聯包含在該映射資料表中建立一輸入項目,該輸入項目將該第二使用者識別符映射至該新應用程式可存取使用者識別符。
  20. 如請求項16之系統,其中該關聯係由一映射資料表所表示,且判定在該第二使用者識別符與該應用程式可存取使用者識別符之間是否存在該關聯包含搜尋該映射資料表以得到包括該第二使用者識別符之一輸入項目。
TW103116742A 2013-06-07 2014-05-12 在保護使用者隱私的同時進行單次登入之方法與系統 TWI521373B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/913,232 US9479490B2 (en) 2013-06-07 2013-06-07 Methods and systems for single sign-on while protecting user privacy

Publications (2)

Publication Number Publication Date
TW201506666A TW201506666A (zh) 2015-02-16
TWI521373B true TWI521373B (zh) 2016-02-11

Family

ID=52006672

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103116742A TWI521373B (zh) 2013-06-07 2014-05-12 在保護使用者隱私的同時進行單次登入之方法與系統

Country Status (3)

Country Link
US (3) US9479490B2 (zh)
TW (1) TWI521373B (zh)
WO (1) WO2014197128A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9479490B2 (en) 2013-06-07 2016-10-25 Apple Inc. Methods and systems for single sign-on while protecting user privacy
CN105592011B (zh) * 2014-10-23 2019-12-24 阿里巴巴集团控股有限公司 一种账号登录方法及装置
CN106899546B (zh) * 2015-12-17 2021-05-07 阿里巴巴集团控股有限公司 用户信息的获取方法和装置
US10606622B1 (en) * 2016-06-30 2020-03-31 EMC IP Holding Company LLC Method and system for web application localization using hierarchical resolution
US11144620B2 (en) * 2018-06-26 2021-10-12 Counseling and Development, Inc. Systems and methods for establishing connections in a network following secure verification of interested parties
CN110008019B (zh) * 2019-02-28 2021-06-08 张帅辰 共享服务器资源的方法及装置、系统
CN110032855A (zh) * 2019-02-28 2019-07-19 招银云创(深圳)信息技术有限公司 应用的登录方法、装置、计算机设备和存储介质
WO2021232347A1 (en) * 2020-05-21 2021-11-25 Citrix Systems, Inc. Cross device single sign-on

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1264463A2 (en) 2000-03-17 2002-12-11 AT & T Corp. Web-based single-sign-on authentication mechanism
US7899173B2 (en) * 2000-07-14 2011-03-01 Context Connect, Llc Communication connectivity via context association, advertising sponsorship, and multiple contact databases
KR100464755B1 (ko) 2002-05-25 2005-01-06 주식회사 파수닷컴 이메일 주소와 하드웨어 정보를 이용한 사용자 인증방법
WO2004075035A1 (en) * 2003-02-21 2004-09-02 Telefonaktiebolaget Lm Ericsson (Publ) Service provider anonymization in a single sign-on system
EP1618478A4 (en) 2003-03-13 2007-10-03 Drm Technologies L L C CONTINUOUSLY CONTINUOUS CONTAINER
US20040267870A1 (en) 2003-06-26 2004-12-30 Rozmus John Michael Method of single sign-on emphasizing privacy and minimal user maintenance
US7080104B2 (en) 2003-11-07 2006-07-18 Plaxo, Inc. Synchronization and merge engines
US8041745B2 (en) * 2005-09-15 2011-10-18 At&T Intellectual Property I, L.P. Methods for managing aggregated address books
US8635679B2 (en) 2005-12-08 2014-01-21 Webler Solutions, Llc Networked identity framework
US7747540B2 (en) 2006-02-24 2010-06-29 Microsoft Corporation Account linking with privacy keys
US8078880B2 (en) 2006-07-28 2011-12-13 Microsoft Corporation Portable personal identity information
US8135134B2 (en) 2007-09-14 2012-03-13 Security First Corp. Systems and methods for managing cryptographic keys
US8151333B2 (en) 2008-11-24 2012-04-03 Microsoft Corporation Distributed single sign on technologies including privacy protection and proactive updating
US9197417B2 (en) 2009-04-24 2015-11-24 Microsoft Technology Licensing, Llc Hosted application sandbox model
US9075663B2 (en) 2010-05-12 2015-07-07 Samsung Electronics Co., Ltd. Cloud-based web workers and storages
US8839395B2 (en) * 2011-05-13 2014-09-16 Cch Incorporated Single sign-on between applications
US9479490B2 (en) 2013-06-07 2016-10-25 Apple Inc. Methods and systems for single sign-on while protecting user privacy

Also Published As

Publication number Publication date
US9992188B2 (en) 2018-06-05
US10693863B2 (en) 2020-06-23
US9479490B2 (en) 2016-10-25
US20140366110A1 (en) 2014-12-11
TW201506666A (zh) 2015-02-16
WO2014197128A1 (en) 2014-12-11
US20170104747A1 (en) 2017-04-13
US20180359243A1 (en) 2018-12-13

Similar Documents

Publication Publication Date Title
TWI521373B (zh) 在保護使用者隱私的同時進行單次登入之方法與系統
US10412061B2 (en) Method and system for encrypted communications
US11921839B2 (en) Multiple device credential sharing
US10805085B1 (en) PKI-based user authentication for web services using blockchain
JP6898297B2 (ja) サービス処理方法、装置、及びサーバ
US10594696B2 (en) Network-based authentication and security services
US10200362B2 (en) Method and system for verifying an account operation
AU2016219712B2 (en) Method and devices for managing user accounts across multiple electronic devices
US9398009B2 (en) Device driven user authentication
US9838384B1 (en) Password-based fraud detection
US10127317B2 (en) Private cloud API
US9992198B2 (en) Network-based frictionless two-factor authentication service
US11489831B2 (en) Communication system and computer readable storage medium
US11811750B2 (en) Mobile device enabled desktop tethered and tetherless authentication
WO2019140790A1 (zh) 业务跟踪方法、装置、终端设备及存储介质
JP6736748B2 (ja) 認証を実行するコンピュータ可読記録媒体、システム、及び方法
US20220400103A1 (en) User authentication via telephonic communication
WO2020000789A1 (zh) 实现接入验证的方法和装置
JP2018032150A (ja) 認証処理システム、認証補助サーバ及びウェブ表示プログラム
JP2008287524A (ja) 認証方法、認証装置及びプログラム
JP2016114961A (ja) 判別方法及び判別プログラム