本發(fā)明的方面總體涉及進行認證/授權的驗證的認證服務器系統(tǒng)及方法。
背景技術:
:云計算的一般化給多個服務的協(xié)作提供了更多機會。在此使用的術語“服務”表示由經(jīng)由網(wǎng)絡(諸如互聯(lián)網(wǎng)等)連接的服務器提供的功能。換言之,術語“服務”表示web應用。服務的協(xié)作能使服務提供商通過將價值添加到通常服務來向用戶提供新的服務。伴隨服務的協(xié)作,會出現(xiàn)問題。即,存在可能在服務器之間交換比用戶意圖交換的信息更多信息的可能性。這可能導致用戶的個人信息或用戶數(shù)據(jù)的泄漏。例如,互聯(lián)網(wǎng)上的多個服務可以彼此協(xié)作。在這種情況下,除了由用戶授權的服務之外,用戶的個人信息或用戶數(shù)據(jù)不應當被任何服務操作。此外,從服務提供商的觀點來看,期望服務協(xié)作方法能夠被容易地實現(xiàn)。因此,已開發(fā)稱為OAuth的標準協(xié)議,以實現(xiàn)授權的協(xié)作。根據(jù)OAuth,例如,當某個終端中的應用訪問由云服務管理的數(shù)據(jù)時,該應用被認為從用戶獲取了明確授權。當用戶授權訪問時,應用接收證明訪問授權被授予的令牌(下文中被稱為訪問令牌)。應用使用訪問令牌,用于后續(xù)訪問。在下文中,發(fā)布訪問令牌的操作被稱為授權操作。日本特開2015-5202號公報討論了使用OAuth來發(fā)布訪問令牌的技術。根據(jù)OAuth的系統(tǒng)間協(xié)作采用諸如表述性狀態(tài)轉移(REST)等的web服務。此外,近年來,稱為RESTful模型視圖控制器(MVC)的體系結構已被廣泛使用。這已使得不僅針對根據(jù)OAuth的系統(tǒng)間協(xié)作,還針對用戶操作畫面的情況,能夠由REST來提供功能。同時,用于提供功能的方法可以被標準化到REST。即使在這種情況下,仍當用戶操作畫面時使用認證令牌,而在系統(tǒng)間協(xié)作中使用訪問令牌。然而,由于認證令牌和訪問令牌的驗證不同,因此需要確定由REST應用編程接口(API)接收到的所有令牌的類型。因此,用于調(diào)用與接收到的令牌的各個類型相對應的驗證模塊的構造是必要的。技術實現(xiàn)要素:本發(fā)明的各方面針對一種用于能夠使得令牌由公用模塊來驗證而與令牌的類型的構造無關。根據(jù)本發(fā)明的方面,一種認證服務器系統(tǒng),其能夠與信息處理裝置通信,所述信息處理裝置包括向終端和授權客戶端提供特定功能的服務,所述認證服務器系統(tǒng)包括:發(fā)布單元,其被構造為發(fā)布第一類型令牌和第二類型令牌,所述第一類型令牌用于驗證操作所述終端的用戶是否為有效用戶,所述第二類型令牌用于驗證利用傳送到與所述服務協(xié)作的授權客戶端的權限是否能夠使用所述服務;以及驗證單元,用于基于從所述信息處理裝置與驗證請求和作用域一起接收到的令牌,來進行用于驗證的檢查,并通知驗證結果,而與由所述發(fā)布單元發(fā)布的令牌的類型無關,其中,在接收到所述第一類型令牌的情況下,所述驗證單元不檢查與令牌相關聯(lián)的權限,而在接收到所述第二類型令牌的情況下,所述驗證單元檢查與令牌相關聯(lián)的權限,并且確定所述作用域是否在與令牌相關聯(lián)的權限的范圍內(nèi)。通過以下參照附圖對示例性實施例的描述,本發(fā)明的各方面的其他特征將變得清楚。附圖說明圖1是例示網(wǎng)絡構造的圖。圖2是例示根據(jù)本發(fā)明的示例性實施例的服務器計算機的構造的圖。圖3A、圖3B和圖3C是各自例示根據(jù)示例性實施例的模塊構造的圖。圖4A和圖4B各自是例示根據(jù)示例性實施例的登錄處理和訪問令牌發(fā)布處理的流程圖。圖5A、圖5B和圖5C是例示根據(jù)示例性實施例的權限驗證處理的流程圖。圖6A和圖6B是各自例示根據(jù)示例性實施例的畫面的顯示示例的圖。圖7A和圖7B是各自例示根據(jù)本發(fā)明的第二示例性實施例的模塊構造的圖。圖8是例示根據(jù)第二示例性實施例的權限驗證的示意圖。具體實施方式在下文中,參照附圖描述本發(fā)明的示例性實施例。如圖1中所示,根據(jù)本發(fā)明的第一示例性實施例的權限傳送系統(tǒng)配設在網(wǎng)絡上,并且系統(tǒng)中的組件彼此能夠通信。圖1中例示的系統(tǒng)包括廣域網(wǎng)(WAN)100和局域網(wǎng)(LAN)101、102及103。在本發(fā)明的示例性實施例中,WAN100包括萬維網(wǎng)(WWW)系統(tǒng),并且各個LAN101、102及103連接系統(tǒng)中的組件。此外,圖1中例示的系統(tǒng)包括認證/授權服務器151、資源服務器152、由用戶操作的用戶終端191以及授權客戶端171和172。認證/授權服務器151認證用戶并發(fā)布訪問令牌。在此使用的術語“訪問令牌”表示如下的證明,即已由用戶許可應用進行特定操作。當用戶針對應用進行授權操作時,發(fā)布訪問令牌。例如,如果使用用于訪問由云服務管理的數(shù)據(jù)的訪問令牌時,則應用提供狀態(tài),使得數(shù)據(jù)能夠在由用戶許可的范圍內(nèi)被訪問。授權客戶端171和授權客戶端172使用從用戶傳送的權限,來與資源服務器152執(zhí)行系統(tǒng)間協(xié)作。認證/授權服務器151和資源服務器152中的各個經(jīng)由WAN100和LAN102連接。類似地,用戶終端191經(jīng)由WAN100和LAN102連接。授權客戶端171和授權客戶端172經(jīng)由WAN100和LAN103連接。認證/授權服務器151和資源服務器152能夠被布置在單獨的LAN或同一LAN上。作為選擇,認證/授權服務器151和資源服務器152能夠被布置在同一個人計算機(PC)或同一服務器計算機上。雖然圖1中所示的系統(tǒng)包括一個認證/授權服務器151和一個資源服務器152,但是可以布置包括多個服務器的服務器組。例如,能夠布置包括多個認證/授權服務器的服務器組。因此,描述本發(fā)明的示例性實施例,而不管存在一個服務器或多個服務器。在本示例性實施例中,術語“服務器系統(tǒng)”包括任一配置。例如,認證服務器系統(tǒng)包括一個或多個認證服務器。圖2是示例根據(jù)本發(fā)明的示例性實施例的、用作服務器計算機的認證/授權服務器151的構造的圖。用作服務器計算機的資源服務器152的構造、用戶終端191的構造以及授權客戶端171和授權客戶端172中的各個的構造,都類似于圖2中所示的。圖2中所示的硬件框圖對應于一般信息處理裝置的硬件框圖,并且一般信息處理裝置的硬件構造能夠應用于根據(jù)本示例性實施例的服務器計算機和移動終端。在圖2中,中央處理單元(CPU)201執(zhí)行在ROM203的程序只讀存儲器(程序ROM)中存儲的或從硬盤211加載到隨機存取存儲器(RAM)202中的操作系統(tǒng)(OS)或諸如應用等的程序。OS在計算機上運行。程序的執(zhí)行能夠?qū)崿F(xiàn)下面描述的各流程圖的處理。RAM202用作CPU201的主存儲器或工作區(qū)域。鍵盤控制器(KBC)205控制來自鍵盤(KB)209或指點設備(未示出)的鍵輸入。陰極射線管控制器(CRTC)206控制陰極射線管(CRT)顯示器210的顯示。盤控制器(DKC)207控制對例如存儲有各種數(shù)據(jù)的軟盤(注冊商標)(FD)和硬盤(HD)211中的數(shù)據(jù)的訪問。網(wǎng)絡控制器(NC)212連接到網(wǎng)絡,以針對與連接到網(wǎng)絡的其他設備的通信執(zhí)行控制處理。在以下描述中,除非另有說明,否則在硬件方面,CPU201作為主要元件運行,而在軟件方面,安裝在HD211中的應用程序作為主要元件運行。圖3A、圖3B和圖3C是例示根據(jù)示例性實施例的認證/授權服務器151、資源服務器152和授權客戶端171的各個模塊構造的圖。認證/授權服務器151包括認證模塊301、授權模塊302以及認證授權共用權限驗證模塊303。此外,認證/授權服務器151包括用戶管理模塊304、客戶端管理模塊305和作用域(scope)管理模塊306。資源服務器152包括資源管理模塊351和令牌驗證請求模塊352。授權客戶端171包括訪問令牌請求模塊371和資源服務器訪問模塊372。授權客戶端172的構造類似于授權客戶端171的構造。這些模塊中的各個包括安裝在HD211中的應用程序,并且當由CPU201執(zhí)行時提供服務器功能。圖4A是根據(jù)本示例性實施例的由認證/授權服務器151進行的登錄處理的流程圖。當認證/授權服務器151接收到來自用戶終端191的登錄請求時,圖4A中所示的流程開始。在步驟S401中,認證/授權服務器151的認證模塊301將如圖6A中所示的認證畫面1001發(fā)送到用戶終端191。即,在用戶終端191上顯示登錄畫面。在步驟S402中,認證模塊301接收在認證畫面1001中輸入的認證信息。在步驟S403中,認證模塊301確定在步驟S402中接收到的認證信息是否是適當?shù)?。在認證模塊301確定認證信息是適當?shù)牟⑶也僮鹘K端的用戶是有效用戶的情況下(在步驟S403中為是),處理前進到步驟S404。另一方面,在認證模塊301確定認證信息是不適當?shù)那闆r下(在步驟S403中為否),處理前進到步驟S450。在步驟S404中,認證模塊301許可用戶登錄并發(fā)布認證令牌。然后,流程結束。將在此發(fā)布的認證令牌與用戶相關聯(lián),并在如表1中所示的認證令牌表中進行管理。[表1]認證令牌標識符用戶An0011223344用戶XAn5566778899用戶YAn7788990011用戶Z::在步驟S450中,認證模塊301拒絕用戶的登錄,并且流程結束。圖4B是根據(jù)本示例性實施例的由認證/授權服務器151進行的訪問令牌發(fā)布處理的流程圖。當認證/授權服務器151的授權模塊302接收到來自用戶終端191和授權客戶端171的訪問令牌請求時,開始圖4B中所示的流程。在步驟S501中,授權模塊302接收來自用戶終端191和授權客戶端171的訪問令牌請求。此處接收的訪問令牌請求包括用戶信息和客戶端標識符,即,要請求的權限的范圍。在步驟S502中,授權模塊302確定操作用戶終端191的用戶是否已登錄。在授權模塊302確定用戶已登錄的情況下(在步驟S502中為是),處理前進到步驟S505。在授權模塊302確定用戶尚未登錄的情況下(在步驟S502中為否),處理前進到步驟S503。在步驟S503中,認證模塊301將如圖6A中所示的認證畫面1001發(fā)送到用戶終端191。即,認證模塊301提示用戶登錄。登錄處理與上面參照圖4A詳細描述的大致相同。在步驟S503中的處理隨后,在步驟S504中,認證模塊301確定用戶是否已登錄。在認證模塊301確定用戶已登錄的情況下(在步驟S504中為是),處理前進到步驟S505。在認證模塊301確定用戶尚未登錄的情況下(在步驟S504中為否),處理前進到步驟S550。在步驟S505中,授權模塊302在用戶終端191上顯示如圖6B中所示的授權確認畫面1002,以詢問用戶確認。響應于步驟S505中的處理,在步驟S506中,授權模塊302確定是否已從用戶獲取授權。在授權模塊302確定已獲取授權的情況下(在步驟S506中為是),處理前進到步驟S507。在授權模塊302確定未獲取授權的情況下(在步驟S506中為否),處理前進到步驟S550。當請求授權時,用戶能夠在如圖6B中所示的畫面上選擇“許可”。這種操作被稱為授權操作。當用戶進行授權操作時,發(fā)布訪問令牌。在步驟S507中,授權模塊302發(fā)布訪問令牌,并將在步驟S501中接收到的訪問令牌請求中的客戶端標識符、與訪問令牌請求中的用戶信息相關聯(lián),以將所得的關聯(lián)存儲在表2中的訪問令牌表中。此外,授權模塊302經(jīng)由用戶終端191將發(fā)布的訪問令牌返回到授權客戶端171,并且流程結束。[表2]在步驟S550中,授權模塊302向資源管理模塊351通知不能發(fā)布訪問令牌,并且流程結束。圖5A是例示由認證/授權服務器151進行的認證令牌和訪問令牌的驗證處理的流程圖。當認證/授權服務器151的認證授權共用權限驗證模塊303接收到來自資源服務器152的令牌驗證請求模塊352的權限驗證請求時,開始圖5A中所示的流程。在此,權限驗證請求是當接收到來自用戶終端191或授權客戶端171的資源請求時、由資源服務器152的資源管理模塊351做出的。在步驟S601中,認證授權共用權限驗證模塊303接收來自資源服務器152的令牌驗證請求模塊352的權限驗證請求。在此,權限驗證請求包括由資源服務器152的資源管理模塊351從用戶終端191接收到的認證令牌,或由資源服務器152的資源管理模塊351從授權客戶端171接收到的訪問令牌。此外,權限驗證請求包括使用由用戶終端191或授權客戶端171請求的資源所需的作用域列表。即,認證授權共用權限驗證模塊303不斷地接收關于作用域的信息,而與令牌類型無關。認證授權共用權限驗證模塊303能夠接收認證令牌和關于作用域的信息。即使在這種情況下,認證授權共用權限驗證模塊303在針對驗證進行檢查時,仍不使用關于作用域的信息,這將在下面描述。使用資源所需的作用域列表,包括要由用戶和客戶端中的各個所請求的作用域,而與由資源管理模塊351已接收到的令牌是否為認證令牌或訪問令牌無關。因此,資源服務器152能夠?qū)⑼蛔饔糜蛄斜韨鬟f到認證/授權服務器151以請求權限驗證,而與由資源管理模塊351接收到的令牌的類型無關。在步驟S602中,認證授權共用權限驗證模塊303從在步驟S601接收到的權限驗證請求中,提取認證令牌或訪問令牌以及使用資源所需的作用域列表。在步驟S603中,認證授權共用權限驗證模塊303確定在步驟S602中提取的令牌的類型是否為訪問令牌。在認證授權共用權限驗證模塊303確定在步驟S602中提取的令牌為認證令牌的情況下(在步驟S603中為否),處理前進到步驟S606。另一方面,在認證授權共用權限驗證模塊303確定在步驟S602中提取的令牌為訪問令牌的情況下(在步驟S603中為是),處理前進到步驟S604。在步驟S604中,認證授權共用權限驗證模塊303參照由授權模塊302管理的如表2中所示的訪問令牌表,來獲取與在步驟S602中提取的訪問令牌相關聯(lián)的作用域。在步驟S605中,認證授權共用權限驗證模塊303確定在步驟S604中獲取的與訪問令牌相關聯(lián)的作用域,是否包括在步驟S602中提取的作用域列表的所有的作用域,作用域列表是使用資源所需的。換言之,認證授權共用權限驗證模塊303確定作用域是否在由訪問令牌授予的權限的特定范圍內(nèi)。在認證授權共用權限驗證模塊303確定包括所有的所需的作用域的情況下(在步驟S605中為是),處理前進到步驟S606。在認證授權共用權限驗證模塊303確定不包括至少一個所需的作用域的情況下(在步驟S605中為否),處理前進到步驟S650。在步驟S606中,認證授權共用權限驗證模塊303確定客戶端是否與在步驟S602中提取的令牌相關聯(lián)。如表1中所示,在令牌的類型為認證令牌的情況下,客戶端不相關聯(lián)。此外,如表2中所示,在令牌的類型為訪問令牌的情況下,客戶端與令牌相關聯(lián)。在認證授權共用權限驗證模塊303確定客戶端與令牌相關聯(lián)的情況下(在步驟S606中為是),處理前進到步驟S607。另一方面,在認證授權共用權限驗證模塊303確定客戶端不與令牌相關聯(lián)的情況下(在步驟S606中否),處理前進到步驟S609。在步驟S607中,認證授權共用權限驗證模塊303進行與令牌相關聯(lián)的客戶端的權限的驗證。在步驟S608中,認證授權共用權限驗證模塊303,基于在步驟S607中獲取的權限驗證結果,檢查與令牌相關聯(lián)的客戶端是否已被確定為具有使用資源所需的權限。在認證授權共用權限驗證模塊303確定客戶端具有所需的權限的情況下(在步驟S608中為是),處理前進到步驟S609。在認證授權共用權限驗證模塊303確定客戶端不具有所需的權限的情況下(在步驟S608中為否),處理前進到步驟S650。在步驟S609中,認證授權共用權限驗證模塊303進行與令牌相關聯(lián)的用戶的權限的驗證。在步驟S610中,認證授權共用權限驗證模塊303,基于在步驟S609中獲取的權限驗證結果,檢查與令牌相關聯(lián)的用戶是否已被確定為具有使用資源所需的權限。在認證授權共用權限驗證模塊303確定用戶具有所需的權限的情況下(在步驟S610中為是),處理前進到步驟S611。在認證授權共用權限驗證模塊303確定用戶不具有所需的權限的情況下(在步驟S610中為否),處理前進到步驟S650。在步驟S611中,認證授權共用權限驗證模塊303,基于權限驗證結果,向資源服務器通知,在步驟S601中由認證授權共用權限驗證模塊303接收到的令牌已被確定為具有使用資源的權限,并且流程結束。在步驟S650中,認證授權共用權限驗證模塊303向資源服務器通知,在步驟S601中由認證授權共用權限驗證模塊303接收到的令牌已被確定為不具有使用資源的權限,并且流程結束。圖5B是例示根據(jù)本示例性實施例的由認證/授權服務器151進行的客戶端權限驗證處理的流程圖。圖5B中所示的流程是圖5A中描述的步驟S607的詳細處理。在步驟S701中,認證授權共用權限驗證模塊303參照由授權模塊302管理的訪問令牌表,以獲取與訪問令牌相關聯(lián)的客戶端。例如,在此,訪問令牌可以是表2中示出的Az99887766。在這種情況下,認證授權共用權限驗證模塊303確定與訪問令牌相關聯(lián)的客戶端為AppAm001。在步驟S702中,認證授權共用權限驗證模塊303參照由客戶端管理模塊305管理的客戶端權限表,以獲取由在步驟S701中獲取的客戶端所保持的權限。表3例示了客戶端權限表的示例。[表3]客戶端標識符權限AppAm001App-A-IntegrationAppAm002App-B-Integration::在此,如果客戶端標識符為AppAm001,則客戶端被確定為具有App-A-Integration的權限。在步驟S703中,認證授權共用權限驗證模塊303參照由作用域管理模塊306管理的作用域表,以獲取要由在步驟S602中提取的作用域列表中的各個作用域請求的客戶端權限。表4例示了作用域列表的表的示例。[表4]作用域權限owner.App-A-ReadWriteApp-A-ReadWriteclient.App-A-IntegrationApp-A-Integration::在此,使用資源所需的作用域可以是owner.App-A-ReadWrite和client.App-A-Integration。在這種情況下,由于要由客戶端請求的作用域為client.App-A-Integration,其中,“client”為前綴,因此要請求的客戶端權限被確定為App-A-Integration。在步驟S704中,認證授權共用權限驗證模塊303確定在步驟S702中獲取的客戶端權限是否包括在步驟S703中獲取的所有的所請求的客戶端權限。在認證授權共用權限驗證模塊303確定包括所有的所請求的權限的情況下(在步驟S704中為是),處理前進到步驟S705。在認證授權共用權限驗證模塊303確定不包括至少一個所請求的權限的情況下(在步驟S704中為否),處理前進到步驟S750。例如,在此,訪問令牌可以是表2中所示的Az99887766,資源使用所需的作用域可以是owner.App-A-ReadWrite和client.App-A-Integration。在這種情況下,由客戶端保持的權限為App-A-Integration,并且要請求的客戶端權限也是App-A-Integration。因此,客戶端被確定為具有所有的所請求的權限。在步驟S705中,認證授權共用權限驗證模塊303確定客戶端具有所請求的權限,并且流程結束。在步驟S750中,認證授權共用權限驗證模塊303確定客戶端不具有所請求的權限,并且流程結束。圖5C是例示根據(jù)本示例性實施例的由認證/授權服務器151進行的用戶權限驗證處理的流程圖。圖5C中所示的流程是圖5A中描述的步驟S609的詳細處理。在步驟S801中,認證授權共用權限驗證模塊303確定在步驟S602中提取的令牌的類型是否為訪問令牌。在證授權共用權限驗證模塊303確定令牌為認證令牌的情況下(在步驟S801中為否),處理前進到步驟S803。在認證授權共用權限驗證模塊303確定令牌為訪問令牌的情況下(在步驟S801中為是),處理前進到步驟S802。在步驟S802中,認證授權共用權限驗證模塊303參照由授權模塊302管理的訪問令牌表,以獲取與訪問令牌相關聯(lián)的用戶。例如,在此,訪問令牌可以是表2中示出的Az99887766。在這種情況下,認證授權共用權限驗證模塊303確定與訪問令牌相關聯(lián)的用戶為用戶X。在步驟S803中,認證授權共用權限驗證模塊303參照由認證模塊301管理的認證令牌表,以獲取與認證令牌相關聯(lián)的用戶。例如,在此,認證令牌可以是表1中示出的An0011223344。在這種情況下,認證授權共用權限驗證模塊303確定與訪問令牌相關聯(lián)的用戶為用戶X。在步驟S804中,認證授權共用權限驗證模塊303參照由用戶管理模塊304管理的用戶權限表,以獲取在步驟S802或步驟S803中獲取的用戶的權限。表5例示了用戶權限表的示例。[表5]在此,如果在步驟S802或步驟S803中獲取的用戶為用戶X,則該用戶被確定為具有App-A-ReadWrite權限和App-B-Read權限。在步驟S805中,認證授權共用權限驗證模塊303參照由作用域管理模塊306管理的作用域表,以獲取要由在步驟S602中提取的作用域列表中的各個作用域請求的用戶權限。在此,使用資源所需的作用域可以是owner.App-A-ReadWrite和client.App-A-Integration。在這種情況下,由于要由用戶請求的作用域為owner.App-A-ReadWrite,其中,“owner”為前綴,因此要請求的用戶權限被確定為App-A-ReadWrite。在步驟S806中,認證授權共用權限驗證模塊303確定在步驟S804中獲取的用戶權限是否包括在步驟S805中獲取的所有的所請求的用戶權限。在認證授權共用權限驗證模塊303確定包括所有的所請求的權限的情況下(在步驟S806中為是),處理前進到步驟S807。另一方面,在認證授權共用權限驗證模塊303確定不包括至少一個所請求的權限的情況下(在步驟S806中為否),處理前進到步驟S850。例如,在此,令牌的類型可以是表1中示出的An0011223344的認證令牌,并且使用資源所需的作用域可以是owner.App-A-ReadWrite和client.App-A-Integration。在這種情況下,用戶具有App-A-ReadWrite的權限,并且要請求的用戶權限也是App-A-ReadWrite。因此,客戶端被確定為具有所有的所請求的權限。在步驟S807中,認證授權共用權限驗證模塊303確定用戶具有所請求的權限,并且流程結束。在步驟S850中,認證授權共用權限驗證模塊303確定用戶不具有所請求的權限,并且流程結束。圖6A和圖6B是各自例示根據(jù)本示例性實施例的畫面的顯示示例的圖。圖6A例示了當用戶登錄時、要操作的認證畫面1001的示例。圖6B例示了當用戶授權客戶端模塊以許可訪問令牌的發(fā)布時、要使用的授權確認畫面1002的示例。根據(jù)本示例性實施例,資源服務器152能夠?qū)⑼蛔饔糜蛄斜韨鬟f到認證/授權服務器151以請求權限驗證,而與由資源管理模塊351接收到的令牌的類型無關。這使得共用權限驗證模塊能夠被調(diào)用,而不依賴于令牌類型,因而提高了資源服務器152的開發(fā)效率。接下來,參照附圖描述本發(fā)明的第二示例性實施例。在下文中,僅通過參照第一示例性實施例與第二示例性實施例之間的差異,來提供描述。對第一示例性實施例和第二示例性實施例的共通的組件及構造的描述將被省略。在第一示例性實施例中,資源服務器152能夠向認證/授權服務器151請求令牌驗證,而不考慮令牌類型。然而,對于資源服務器152的某些資源,可以想到的是,可能針對認證令牌許可使用資源,但可能針對訪問令牌不許可。在這種情況下,認證/授權服務器151需要依據(jù)令牌類型來改變權限驗證的確定,而資源服務器152不應當考慮令牌類型。此外,某些資源可能最初未被許可利用訪問令牌使用。然而,可以想到的是,當資源服務器152升級時,這種資源能夠被許可利用訪問令牌使用。在這種情況下,在利用訪問令牌的使用資源的正式公開之前,需要針對僅特定的授權客戶端172的功能的公開,使得能夠?qū)δ苓M行測試。鑒于上述內(nèi)容,做出本發(fā)明的第二示例性實施例。圖7A和圖7B各自是例示根據(jù)本發(fā)明的第二示例性實施例的認證/授權服務器151的模塊構造以及資源服務器152的模塊構造的圖。認證/授權服務器151包括認證模塊301、授權模塊302以及認證授權共用權限驗證模塊303。此外,認證/授權服務器151包括用戶管理模塊304、第二客戶端管理模塊320以及第二作用域管理模塊321。資源服務器152包括資源管理模塊351和令牌驗證請求模塊352。此外,資源服務器152包括第二資源管理模塊361和第二令牌驗證請求模塊362。表6例示了第二客戶端權限表的示例,并且表7例示了第二作用域列表的表的示例。第二客戶端權限表和第二作用域列表的表分別由第二客戶端管理模塊320和第二作用域管理模塊321管理。[表6]客戶端標識符權限AppAm001App-A-IntegrationAppAm002App-B-IntegrationAppAmDebugApp-A-ReadWriteAppAmDebugclosedBeta-LimitedIntegration::[表7]作用域權限owner.App-A-ReadWriteApp-A-ReadWriteclient.App-A-IntegrationApp-A-Integrationclient.notAllowedclosedBeta-LimitedIntegration::在此,使用圖5B中所示的客戶端權限驗證流程的示例來提供描述。在步驟S704中,認證授權共用權限驗證模塊303確定在步驟S702中獲取的客戶端權限是否包括在步驟S703中獲取的所有的所請求的客戶端權限。例如,在此,與訪問令牌相關聯(lián)的客戶端標識符可以是AppAmDebug,使用資源所需的作用域可以是owner.App-A-讀寫和client.notAllowed。在這種情況下,客戶端具有包括closedBeta-LimitedIntegration的權限,從而滿足要請求的客戶端權限,即,closedBeta-LimitedIntegration。因此,客戶端被確定為具有所有的所請求的權限,并且處理前進到步驟S705。在步驟S705中,認證授權共用權限驗證模塊303確定客戶端具有所請求的權限,并且流程結束。由于第二示例性實施例中的訪問令牌是與client.notAllowed的作用域相關聯(lián)地發(fā)布的令牌,因此處理從步驟S605前進到步驟S606。因此,將確定作用域沒有問題。然而,如上所述,只要客戶端不具有權限,授權客戶端171就不被授權使用服務。圖8是例示根據(jù)第二示例性實施例的、響應于來自用戶操作和不同的授權客戶端的資源請求,從資源服務器152到認證/授權服務器151的權限驗證請求的示意圖。在此,假設授權客戶端171用作通常的授權客戶端,并且僅能夠使用一般的公共RESTAPI。因此,授權客戶端171不具有closedBeta-LimitedIntegration角色。此外,假設授權客戶端172用作特殊的授權客戶端,該特殊的授權客戶端在公開用于訪問令牌的RESTAPI之前,對資源服務器152的RESTAPI進行測試。由于授權客戶端172能夠使用并非通常利用訪問令牌使用的RESTAPI,因此授權客戶端172具有closedBeta-LimitedIntegration角色。此外,資源服務器152的RESTAPI-1用作與資源管理模塊351和令牌驗證請求模塊352相對應的RESTAPI。不從使用RESTAPI-1的授權客戶端請求client.notAllowed作用域。此外,資源服務器152的RESTAPI-2用作與第二資源管理模塊361和第二令牌驗證請求模塊362相對應的RESTAPI。從使用RESTAPI-2的授權客戶端請求client.notAllowed作用域。在圖8中,箭頭2001表示當授權客戶端171調(diào)用RESTAPI-1時進行的處理。在由箭頭2001表示的處理中,授權客戶端171使用預先獲取的訪問令牌來調(diào)用RESTAPI-1。在此,由于未針對RESTAPI-1的使用而請求client.notAllowed,因此沒有closedBeta-LimitedIntegraion角色的授權客戶端171也能夠使用RESTAPI-1。箭頭2101表示當授權客戶端171調(diào)用RESTAPI-2時進行的處理。在由箭頭2101表示的處理中,授權客戶端171使用預先獲取的訪問令牌來調(diào)用RESTAPI-2。在此,由于針對RESTAPI-2的使用而請求client.notAllowed,因此沒有closedBeta-limitedIntegration角色的授權客戶端171不能使用RESTAPI-2。箭頭2102表示當用戶終端191調(diào)用RESTAPI-2時進行的處理。在由箭頭2102表示的處理中,用戶終端191從畫面庫獲取畫面資源。此外,用戶終端191使用預先獲取的認證令牌經(jīng)由獲取的畫面資源來調(diào)用RESTAPI-2。在此,針對RESTAPI-2的使用而請求client.notAllowed。然而,如果使用認證令牌,則在由認證授權共用權限驗證模塊303進行權限驗證時,不進行客戶端權限驗證。因此,用戶終端191能夠使用RESTAPI-2,而與closedBeta-LimitedIntegration角色的有無無關。箭頭2201表示當授權客戶端172調(diào)用RESTAPI-2時進行的處理。在由箭頭2201表示的處理中,授權客戶端172使用預先獲取的訪問令牌來調(diào)用RESTAPI-2。在此,針對RESTAPI-2的使用而請求client.notAllowed。然而,由于授權客戶端172具有closedBeta-LimitedIntegration角色,因此授權客戶端172能夠使用RESTAPI-2。根據(jù)第二示例性實施例,例如在諸如系統(tǒng)間協(xié)作那樣,使用了用戶不直接參與的訪問令牌的使用情況下,能夠禁止使用資源。即使在這種情況下,例如在使用了用戶直接操作畫面那樣的認證令牌的使用情況下,通過控制操作能夠許可使用資源。在這種情況下,資源服務器152指定預定作用域的client.notAllowed,以向認證/授權服務器151僅請求權限驗證,并且資源服務器152不需要考慮令牌類型。因此,能夠有效地進行資源服務器152的開發(fā)。根據(jù)第二示例性實施例,此外,能夠禁止授權客戶端171使用資源服務器152的特定資源,并且僅預定的授權客戶端172能夠使用在資源的正式釋放之前的資源。在授權客戶端172執(zhí)行適當?shù)臏y試之后,能夠升級資源服務器152,以不請求client.notAllowed作為針對使用上述資源的作用域。因此,能夠針對授權客戶端171做出這種資源的公開。其他實施例還可以通過讀出并執(zhí)行記錄在存儲介質(zhì)(即,“非暫時性計算機可讀存儲介質(zhì)”)上的計算機可執(zhí)行指令以執(zhí)行本發(fā)明的一個或更多個上述實施例中的功能的系統(tǒng)或裝置的計算機,來實現(xiàn)本發(fā)明的實施例,并且,可以利用通過由系統(tǒng)或裝置的計算機例如讀出并執(zhí)行來自存儲介質(zhì)的計算機可執(zhí)行指令以執(zhí)行一個或更多個上述實施例中的功能的方法,來實現(xiàn)本發(fā)明的實施例。計算機可以包括中央處理單元(CPU)、微處理單元(MPU)或其他電路中的一者或更多,并且可以包括分開的計算機或分開的處理器的網(wǎng)絡。計算機可執(zhí)行指令可以例如從網(wǎng)絡或存儲介質(zhì)被提供給計算機。存儲介質(zhì)可以包括例如硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、分布式計算系統(tǒng)的存儲器、光盤(諸如壓縮光盤(CD)、數(shù)字通用光盤(DVD)或藍光光盤(BD)TM)、閃存裝置以及存儲卡等中的一者或更多。本發(fā)明的實施例還可以通過如下的方法來實現(xiàn),即,通過網(wǎng)絡或者各種存儲介質(zhì)將執(zhí)行上述實施例的功能的軟件(程序)提供給系統(tǒng)或裝置,該系統(tǒng)或裝置的計算機或是中央處理單元(CPU)、微處理單元(MPU)讀出并執(zhí)行程序的方法。雖然參照示例性實施例對本發(fā)明的各方面進行了描述,但是應當理解,本發(fā)明的各方面不限于所公開的示例性實施例。應當對所附權利要求的范圍給予最寬的解釋,以使其涵蓋所有這些變型例以及等同的結構和功能。當前第1頁1 2 3