訪問控制方法和裝置的制造方法
【專利摘要】本申請提供了一種訪問控制方法和裝置,在該方法中,SSO服務器確定當前需要進行訪問控制目標業務服務,并確定當前禁止請求該目標業務服務的目標客戶端;通過向目標客戶端發送消息,以使得目標客戶端攔截針對該目標業務服務的訪問請求。該方法和裝置可以提高SSO系統的可靠性。
【專利說明】
訪問控制方法和裝置
技術領域
[0001]本申請涉及網絡通信技術領域,特別涉及一種訪問控制方法和裝置。
【背景技術】
[0002]單點登錄(SS0,Single Sign On)是指通過特定的方式建立多個應用系統之間的關聯,以使得用戶一次登錄便可以訪問該多個應用系統中的任意一個應用系統。SSO系統可以包括多個應用系統對應的應用服務器以及SSO服務器,其中,SSO服務器可以為各個應用系統提供統一的登錄認證,并將客戶端發送的訪問請求轉發給應用系統的應用服務器。
[0003]然而SSO系統的資源有限,如果SSO系統所需處理的訪問請求的數量超出了該SSO系統的處理能力,就會導致SSO系統出現過載,如,SSO系統中某部分網段的帶寬容量不足導致該部分網段的網絡擁塞,SSO系統中一個或多個應用服務器出現過載,或者SSO服務器出現過載等。在SSO系統出現過載的情況下,客戶端發出的訪問請求就可能無法被及時處理,而客戶端如果長時間接收不到針對該訪問請求的響應,就會重新向SSO系統發送訪問請求,這樣必然又增大了 SSO系統的負載,如此惡性循環,最終就可能會導致SSO系統或者SSO系統中的部分應用系統癱瘓,影響到SSO系統的可靠性。
【發明內容】
[0004]本申請提供了一種訪問控制方法和裝置,以提高SSO系統的可靠性。
[0005]為了解決上述問題,一方面,本申請提供了一種訪問控制方法,包括:
[0006]確定當前需要進行訪問控制的目標業務服務;
[0007]確定當前禁止請求所述目標業務服務的目標客戶端;
[0008]向所述目標客戶端發送消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。
[0009 ]另一方面,本申請提供了另一種訪問控制方法,包括:
[0010]截獲客戶端待發送的訪問請求;
[0011 ]確定所述訪問請求所請求的業務服務;
[0012]當所述業務服務屬于禁止請求的目標業務服務時,丟棄所述訪問請求,其中,所述目標業務服務為由單點登錄服務器確定的禁止所述客戶端請求的業務服務。
[0013 ]另一方面,本申請提供了一種訪問控制裝置,包括:
[0014]業務確定單元,用于確定當前需要進行訪問控制的目標業務服務;
[0015]客戶端確定單元,用于確定當前禁止請求所述目標業務服務的目標客戶端;
[0016]發送單元,用于向所述目標客戶端發送消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。
[0017]另一方面,本申請提供了另一種訪問控制裝置,包括:
[0018]請求截獲單元,用于截獲客戶端待發送的訪問請求;
[0019]請求分析單元,用于確定所述訪問請求所請求的業務服務;
[0020]請求丟棄單元,用于當所述業務服務屬于禁止請求的目標業務服務時,丟棄所述訪問請求,其中,所述目標業務服務為由單點登錄服務器確定的禁止所述客戶端請求的業務服務。
[0021]由以上可知,本申請實施例如果SSO系統出現過載,SSO服務器可以確定當前需要進行訪問控制的目標業務服務以及禁止請求該目標業務服務的目標客戶端,并通過向該目標客戶端發送消息,來指示該目標客戶端攔截針對該目標業務服務的訪問請求,這樣,可以減少針對該目標業務服務所發起的訪問請求,實現了從源頭上減少了訪問請求的數量,有利于減輕SSO系統的過載狀況,從而減少由于SSO系統過載而導致SSO系統無法響應用戶的訪問請求的情況,提高了 SSO系統的可靠性。
【附圖說明】
[0022]為了更清楚地說明本申請實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
[0023]圖1示出了本申請一種可能的應用場景示意圖;
[0024]圖2示出了本申請一種訪問控制方法一個實施例的流程示意圖;
[0025]圖3示出了本申請一種訪問控制方法又一個實施例的流程示意圖;
[0026]圖4示出了本申請另一種訪問控制方法又一個實施例的流程示意圖;
[0027]圖5示出了本申請一種訪問控制裝置一個實施例的結構示意圖;
[0028]圖6示出了本申請另一種訪問控制裝置一個實施例的結構示意圖;
[0029]圖7示出了本申請一種服務器的一種可能的硬件結構示意圖;
[0030]圖8示出了本申請一種終端的一種可能的硬件結構示意圖。
【具體實施方式】
[0031]本發明實施例描述的網絡架構以及業務場景是為了更加清楚的說明本發明實施例的技術方案,并不構成對于本發明實施例提供的技術方案的限定,本領域普通技術人員可知,隨著網絡架構的演變和新業務場景的出現,本發明實施例提供的技術方案對于類似的技術問題,同樣適用。
[0032]為了便于理解,對本申請實施例一種可能的應用場景進行介紹。參見圖1,在該種應用場景中,該單點登錄(SS0,Single Sign On)系統可以包括:SS0服務器101以及多個應用服務可以與多個應用服務器102通過網絡連接。
[0033]該SSO服務器101與該多個應用服務器102之間建立關聯,以使得SSO服務器101可以作為這多個應用服務器102的統一認證系統。SSO服務器也可以認為是一個外網接入平臺。而每個應用服務器可以向外提供一種或多種業務服務,例如,應用服務器可以向外提供地圖服務,以供客戶端調取地圖數據。
[0034]用戶可以通過客戶端103登錄該SSO服務器,在SSO服務器驗證用戶具備登錄權限之后,用戶可以通過客戶端103向SSO服務器發送針對不同應用服務器的訪問請求。SSO服務器確定客戶端發送的訪問請求所請求訪問的應用系統,并將該訪問請求轉發給應用系統的應用服務器。
[0035]例如,以用戶登錄即時通訊系統為例,用戶登錄即時通訊系統實際上是該即時通訊系統中的服務器完成對用戶身份的驗證,而用戶通過客戶端上的即時通訊客戶端可以向即時通訊系統發送好友列表查詢、即時消息發送、地圖調取等多種業務請求,即時通訊系統根據即時通訊客戶端發出的業務請求,將該業務請求轉發給提供相應業務的后臺服務器(即,應用服務器),并在后臺服務器對該業務請求的處理結果返回給客戶端。
[0036]下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述。
[0037]參見圖2,其示出了本申請一種訪問控制方法一個實施例的流程示意圖,本實施例的方法可以應用于SSO系統的SSO服務器。本實施例的方法可以包括:
[0038]201,確定當前需要進行訪問控制的目標業務服務。
[0039]其中,業務服務可以理解為SSO系統中的應用服務器所提供的服務項目,如,業務服務可以為地圖調取服務,好友列表查詢服務等。
[0040]為了便于區分,本申請實施例將需要進行訪問控制的業務服務稱為目標業務服務。
[0041 ] 可以理解的是,當SSO系統出現過載時,如果限制對某些業務服務的訪問,可以減少SSO系統所需處理的訪問請求的數量,從而可以減少SSO系統的過載情況。其中,該目標業務服務可以導致SSO系統出現過載的業務服務,或者是可能會引發SSO系統出現過載的業務服務,或者是當前占用SSO系統資源較高的業務服務。
[0042]需要說明的是,需要進行訪問控制的目標業務服務可以是一項或多項業務服務,在此不加以限制。
[0043]202,確定當前禁止請求該目標業務服務的目標客戶端。
[0044]目標客戶端為SSO系統的客戶端,在客戶端所在的終端上安裝有SSO系統的客戶端開發包。
[0045]其中,該步驟202中確定出的目標客戶端可以是一個或多個。相應的,SSO服務器可以將全部或部分客戶端作為禁止請求目標業務服務器的目標客戶端。如,可以選取指定區域的客戶端作為目標客戶端;又如,可以選取基于指定運營商聯網的客戶端作為目標客戶端。
[0046]可選的,SSO服務器也可以僅僅從已經登錄的客戶端中確定禁止請求該目標業務服務的目標客戶端,如,選取部分或全部已登錄的客戶端作為目標客戶端。
[0047]需要說明的是,當步驟201中確定出的目標業務服務為多項時,可以是分別確定禁止請求每項目標業務服務的目標客戶端;也可以是確定禁止請求該多項目標業務服務的目標客戶端。
[0048]203,向目標客戶端發送消息,該消息用于指示目標客戶端攔截針對該目標業務服務的訪問請求。
[0049]具體的,SSO服務器可以依據禁止該目標客戶端訪問的目標業務服務,生成目標客戶端對應的消息,通過該消息指示該目標客戶端攔截針對該目標業務服務的訪問請求。
[0050]可選的,為了使得客戶端根據該消息能夠明確需要攔截針對哪一個或哪些目標業務服務的訪問請求,該消息可以包括目標業務服務的標識。[0051 ]進一步的,標識可以是唯一確定目標業務服務的標識,如,每個目標業務服務的命令字。例如,“日志上傳”這一業務服務的命令字可以為“CliLogSvc.UploadReq”。特別的,當目標業務服務有多項時,該標識也可以是確定一類目標業務服務的標識,如,在該標識中可以包含有通配符。例如,對于“發送消息”和“接收消息”這兩項業務服務而言,該標識中可以為“^message”,這樣,只要是業務服務的命令字中包含有“messages”都屬于該標識表征的目標業務服務。
[0052]在本申請實施例中,如果SSO系統出現過載情況時,SSO服務器可以確定當前需要進行訪問控制的目標業務服務以及禁止請求該目標業務服務的目標客戶端,并通過向該目標客戶端發送消息,來指示該目標客戶端攔截針對該目標業務服務的訪問請求,這樣,可以減少針對該目標業務服務所發起的訪問請求,從而實現了從源頭上減少了訪問請求的數量,有利于減輕SSO系統的過載狀況,進而減少由于SSO系統過載而導致SSO系統無法響應用戶的訪問請求的情況,提高了 SSO系統的可靠性。
[0053]同時,考慮到SSO系統出現過載的情況下,SSO系統無法及時處理客戶端針對目標業務服務的訪問請求,這樣就可能會導致客戶端因自身的重試機制而不斷向外發送該訪問請求,而本申請實施例通過向目標客戶端發送消息以指示目標客戶端攔截針對該目標業務服務的訪問請求,也可以避免目標客戶端持續向外發送針對該目標業務服務的訪問請求而造成的資源浪費。
[0054]可以理解的是,SSO服務器可以在滿足觸發條件時,觸發進行訪問控制。其中,觸發SSO服務器進行訪問控制的觸發方式可以有多種可能,如,可以是SSO服務器在確定SSO系統出現過載時,自動觸發進行訪問控制;又如,也可以是由SSO系統的管理人員根據實際需要手動觸發SSO服務器進行訪問控制。
[0055]下面結合以上兩種觸發方式對本申請的訪問控制方法進行詳細介紹。
[0056]首先對自動觸發訪問控制的情況進行介紹。在該種情況中,由于引發SSO系統出現過載的原因不同,自動觸發的方式也可能會有所不同。
[0057]對于SSO系統中一個或多個應用服務器出現過載而觸發SSO服務器進行訪問控制的過程可以參見圖3,其示出了本申請一種訪問控制方法又一個實施例的流程示意圖,本實施例的方法應用于SSO服務器,該方法可以包括:
[0058]301,從關聯的多個應用服務器中,確定當前處于過載狀態的目標應用服務器。
[0059]其中,確定當前處于過載狀態的目標應用服務器的方式可以有多種:
[0060]在一種可能的實現方式中,SSO服務器可以監控應用服務器的請求應答比率,當該請求應答比率低于預設值,則可以確定該應用服務器處于過載狀態。其中,請求應答比率是指SSO服務器向應用服務器轉發訪問請求之后,該應用服務器實際返回的應答的數量與SSO服務器向該應用服務器轉發的訪問請求的數量之比。可以理解的是,SSO服務器將訪問請求的數據包轉發該應用服務器之后,應用服務器響應該訪問請求之后會向SSO服務器返回一個應答,這樣,如果應用服務器處于過載狀態,那么該應用服務器返回的應答數量就會大大小于該SSO服務器向該應用服務器轉發的訪問請求的數量,因此,通過該應用服務器的訪問應答比率可以分析出該應用服務器是否出現過載。
[0061]在另一種可能的實現方式中,應用服務器在接收到SSO轉發的訪問請求之后,可以向SSO返回一個應答,在該應答中可以攜帶一個返回碼,如該應答中的指定字段可以為該返回碼,該返回碼可以標示出應用服務器當前的運行狀態,根據該返回碼便可以確定應用服務器是否出現過載。例如,返回碼為O時,表示應用服務器處于正常運行狀態;如果返回碼為I,表示應用服務器的負載偏高;如果返回碼為2,則表示應用服務器處于過載狀態。
[0062]當然,通過其他方式來確定應用服務器是否出現過載也同樣適用于本申請,在此不加以限制。
[0063]為了便于區分,在本申請實施例中,將出現過載的應用服務器稱為目標應用服務器。
[0064]302,將目標應用服務器所提供的業務服務確定為需要進行訪問控制的目標業務服務。
[0065]可以理解的是,當目標應用服務器出現過載時,如果客戶端向該目標應用服務器發送訪問請求,必然會增大該目標應用服務器所需處理的訪問請求的數量,進而繼續增大該應用服務器的負載,最終可能會導致該應用服務器無法處理任何客戶端發送的訪問請求,導致應用服務器癱瘓。因此,為了避免應用服務器出現癱瘓,本申請實施例將該應用服務器所提供的業務服務確定為需要進行訪問控制的目標業務服務,以禁止部分或全部客戶端向該應用服務器請求業務服務。
[0066]例如,SSO系統中應用服務器I和應用服務器2出現過載,假設應用服務器I向外提供業務服務a和業務服務b;應用服務器2向外提供業務服務c和業務服務d,則可以將應用服務器I提供的業務服務a和業務服務b,以及應用服務器2提供的業務服務c和業務服務d確定為需要進行訪問控制的目標業務服務。
[0067]303,確定當前禁止請求該目標業務服務的目標客戶端。
[0068]與前面實施例相似,該目標客戶端可以為客戶端所在的客戶端,且該目標客戶端可以為一個或多個。
[0069]304,向目標客戶端發送消息,該消息用于指示目標客戶端攔截針對該目標業務服務的訪問請求。
[0070]該步驟304可以與前面實施例的相應介紹,在此不再贅述。
[0071]本申請實施例中在SSO服務器確定出應用服務器出現過載時,將該應用服務器所提供的業務服務確定為需要進行訪問控制的目標業務服務,以禁止目標客戶端向該應用服務器請求業務服務,從而可以從源頭上減少向應用服務器發送的訪問請求的數量,有利于降低應用服務器的負載,降低應用服務器癱瘓而無法響應用戶請求的情況,進而提高了 SSO系統的可靠性。
[0072]同時,與應用服務器過載時通過丟棄部分訪問請求以進行過載保護相比,本申請實施例通過向目標客戶端發送指示消息,以禁止目標客戶端向該應用服務器請求業務服務,不僅可以對應用服務器進行過載保護,也可以減少向SSO服務器發送的訪問請求的數量,進而避免了 SSO服務器處理大量無效的訪問請求。
[0073]SSO系統出現過載的另一種可能的情況是SSO服務器自身出現過載,其中,SSO服務器可以通過監控自身的負載狀態來確定自身是否出現過載。SSO服務器出現過載的情況下,該SSO服務器對請求任意業務服務的訪問請求的處理能力均下降,因此,在SSO服務器確定出自身處于過載狀態時,可以根據需要選取部分業務服務作為目標業務服務。
[0074]可選的,SSO服務器可以依據當前針對各個業務服務的訪問請求的數量從高到低的順序,對各個業務服務進行排序,然后選擇排序靠前的指定數量項業務服務作為需要進行訪問控制的目標業務服務。
[0075]SSO系統出現過載的另一種可能的情況是:SSO系統中帶寬占用比過高,導致網絡擁塞。如,客戶端到SSO服務器之間的帶寬占用比過高,或者SSO服務器與某個應用服務器之間的帶寬占用比過高,或者是應用服務器之間的帶寬占用比過高。
[0076]在該種情況下,SSO服務器可以監控是否存在占用比超過預設值的目標網絡段,并確定當前時刻帶寬占用比超過預設值的目標網絡段。具體的,可以通過特定的感應器感應帶寬占用情況,并當帶寬占用比超過預設值時,感應器可以向該SSO服務器發送報警,當該SSO服務器接收到針對某個網絡段的報警時,可以確定該網絡段的帶寬占用比超過預設值。
[0077]在確定出當前存在帶寬占用比超過預設值的目標網絡段時,可以基于預置的網絡段與業務服務之間的對應關系,確定該目標網絡段對應的目標業務服務,并將該目標業務服務確定為當前需要進行訪問控制的目標業務服務。
[0078]下面對手動觸發訪問控制的方式進行介紹。
[0079]SSO系統的管理人員可以根據實際需要手動觸發SSO服務器進行訪問控制。具體的,用戶可以配置需要進行訪問控制的業務服務列表,該業務服務列表中可以包括至少一項需要進行訪問控制的目標業務服務。當SSO服務器獲取到用戶配置的業務服務列表時,將該業務服務列表中的業務服務確定為需要進行訪問控制的目標業務服務。
[0080]例如,在春節等節日活動高峰期時,客戶端請求日志上傳的業務服務的數量會明顯增多,管理人員可以預先配置在該節日期間需要進行訪問控制的業務服務為“日志上傳”這一業務服務,以介紹節日活動高峰期內客戶端請求“日志上傳”的數量,減緩SSO系統中負責“日志上傳”的應用服務器的負載。
[0081]又如,SSO系統的管理人員監測到某段網絡段的帶寬占用比較高,也可以根據需要配置業務服務列表,以觸發SSO服務器對業務服務列表中的目標業務服務進行訪問控制。
[0082]當然,在實際應用中,SSO系統的管理人員也可以僅僅向SSO服務器發送控制指令,以觸發SSO服務器自動確定需要進行訪問控制的目標業務服務。
[0083]可以理解的是,SSO系統在不同時刻的過載狀態有可能會有所不同,根據過載的程度不同可以設置對目標業務服務進行訪問控制的時長。因此,SSO服務器可以在向目標客戶端發送的消息中包括對目標業務服務進行訪問控制的目標時長。當然,不同的目標業務服務所需進行訪問控制的時長可以不同。如,目標業務服務I需要進行訪問控制的目標時長為I秒,目標業務服務2需要進行訪問控制的目標時長為5秒。
[0084]相應的,客戶端可以根據目標業務服務對應的目標時長,在該目標時長內攔截針對該目標業務服務的訪問請求。
[0085]在以上任意一個實施例中,SSO服務器向目標客戶端發送的消息中還可以包括:用于提示用戶禁止請求該目標業務服務的提示信息。這樣,客戶端可以在接收到該消息后,或者是在客戶端攔截到針對該目標業務服務的訪問請求時,可以輸出該提示信息,以對用戶進行提示,從而避免用戶在SSO系統過載的情況下,盲目請求該目標業務服務而引發SSO系統癱瘓;同時,也可以起到減緩用戶焦急心理的作用,以減少由于針對該目標業務服務的訪問請求不被響應而引起人為不斷重試的情況。
[0086]進一步的,該消息中還可以攜帶提示指示標識,該提示指示標識用于指示客戶端是否輸出提示信息。當該提示指示標識用于指示客戶端輸出提示信息時,該消息中可以包括該提示信息。
[0087]可以理解的是,在實際應用中,SSO服務器向目標客戶端發送的消息中可以根據需要包括以下任意一種或幾種:目標業務服務的標識、對目標業務服務進行訪問控制的目標時長以及用于提示用戶禁止請求所述目標業務服務的提示信息。
[0088]另一方面,本申請實施例還提供了另一種訪問控制方法。
[0089]參見圖4,其示出了本申請另一種訪問控制方法一個實施例的流程示意圖,本實施例的方法應用于客戶端,該方法可以包括:
[0090]401,截獲客戶端待發送的訪問請求。
[0091]其中,該客戶端可以理解為SSO系統的客戶端,用戶通過該客戶端可以訪問SSO系統。
[0092]在本申請實施例中,會截獲客戶端待發送的訪問請求,以便對該訪問請求進行分析,對請求目標業務服務的訪問請求進行攔截。
[0093]402,確定該訪問請求所請求的業務服務。
[0094 ]舉例說明,可以通過分析該訪問請求中攜帶的業務服務的標識,確定該訪問請求所請求的業務服務。例如,該訪問請求可以攜帶業務服務的命令字,依據該命令字可以確定訪問請求所請求的業務服務。
[0095]403,當該業務服務屬于禁止請求的目標業務服務時,丟棄該訪問請求。
[0096]其中,該目標業務服務為由SSO服務器確定出的,禁止該客戶端請求的業務服務。如,該目標業務服務可以是在SSO服務器確定出SSO系統出現過載時確定出的,需要進行訪問控制的業務服務;又如,該目標業務服務可以是SSO服務器根據SSO系統的管理人員的配置的業務服務列表中待進行訪問控制一項或多項業務服務確定出的。當然,SSO服務器確定目標業務服務的過程可以前面實施例的相關介紹在此不再贅述。
[0097]可以理解的是,丟棄該訪問請求可以理解為攔截該訪問請求以阻斷該訪問請求的發送,或者是客戶端直接銷毀該訪問請求等,具體可以與現有的丟失訪問請求的處理方式相同。
[0098]在本實施例中,客戶端截獲待發送的訪問請求,如果該訪問請求所請求訪問的業務服務屬于SSO服務器確定出的需要禁止的目標業務服務,則丟失該訪問請求,這樣,可以避免由于客戶端請求該目標業務服務而增加SSO系統的負載,從而可以從源頭上減輕SSO系統的過載情況。
[0099]可以理解的是,在該步驟402之后,還可以包括:
[0100]當該訪問請求所請求的業務服務不屬于禁止請求的目標業務服務時,將該訪問請求發送給SSO服務器。
[0101]可以理解的是,為了確定出禁止訪問的目標業務服務,在客戶端截獲客戶端待發送的訪問請求之前,該客戶端還可以接收SSO服務器發送的消息。該消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。
[0102]進一步的,該消息可以包括:該目標業務服務的標識,如,目標業務服務的命令字。當然,該目標業務服務的標識也可以是表征一類業務服務的通用標識,該通用標識中可以包含通配符。
[0103]相應的,客戶端在截獲到訪問請求之后,可以確定該訪問請求攜帶的業務服務的標識。同時,客戶端需要獲取目標服務器指示出的需要禁止請求的目標業務服務的標識。這樣,客戶端可以檢測是否存在標識與該業務服務的標識之間滿足預設的匹配條件的目標業務服務;如果存在標識與該業務服務的標識之間滿足匹配條件的目標業務服務時,則確定該業務服務屬于禁止請求的目標業務服務。
[0104]其中,當該目標業務服務的標識為目標業務服務的唯一標識時,則匹配條件可以為業務服務的標識與目標業務服務的標識相同。
[0105]當該目標業務服務的標識為包含通配符的標識時,則可以減少是否存在標識的指定字段與該業務服務的標識中的指定字段相同的目標業務服務。例如,目標業務服務的標識可以為包含通配符的標識:^message",這樣,如果訪問請求所請求業務服務的命令字為“receive message”或者“send messages”,都可以認為該業務請求的命令字與該目標業務服務的標識“Message”之間滿足匹配條件。
[0106]可選的,SSO服務器向客戶端發送的消息中還可以包括:用于提示用戶禁止請求該目標業務服務的提示信息。相應的,客戶端在丟棄該訪問請求之后,可以依據該提示信息,輸出用于提示用戶禁止請求該訪問請求所請求的業務服務的提醒消息。
[0107]進一步的,該消息中還可以攜帶提示指示標識,該提示指示標識用于指示客戶端是否輸出提示信息。當客戶端識別出該提示指示標識用于指示客戶端輸出提示信息時,則依據該提示信息輸出提醒消息。
[0108]可選的,SSO服務器向客戶端發送的消息中還可以包括:對該目標業務服務進行訪問控制的目標時長。客戶端在接收到該消息之后可以將目標業務服務確定為當前時刻之后該目標時長內需要禁止請求的業務服務。具體的,客戶端依據該消息,將目標業務服務對應的目標時長確定為當前該目標業務服務需要禁止請求的目標時長,并從接收到該消息的時刻起進行計時,以計時時長達到該目標時長之前,客戶端均將需要禁止針對該目標業務服務的訪問請求。
[0109]也就是說,客戶端每次均以接收到消息中目標業務服務的目標時長,更新禁止請求該目標業務服務的時長。舉例說明,假設客戶端在時刻I接收到SSO服務器發送的消息,且該消息包括:目標業務服務I進行訪問控制的目標時長為7秒;目標業務服務2進行訪問控制的目標時長為5秒。在時刻I之后的4秒,該客戶端又接收到SSO服務器發送的消息,該消息包括:目標業務服務I進行訪問控制的目標時長為2秒;目標業務服務目標業務服務3進行訪問控制的目標時長為5秒。而最后一次消息中并未規定目標業務服務2進行訪問控制的目標時長,所以可以仍以上一次的目標時長為準,則在當前時刻,該目標業務服務2剩余的目標時長為I秒,則在當前時刻之后的一秒內,該目標業務服務2為需要禁止請求的業務服務,而超過當前時刻之后的一秒,則目標業務服務2不屬于被禁止請求的業務服務。
[0110]而客戶端每次均以接收到消息中目標業務服務的目標時長,更新禁止請求該目標業務服務的時長,有利于避免出現終端一直無法請求目標業務服務的情況,同時,可以在不同時刻通過禁止不同的客戶端發起針對目標業務服務的訪問請求,以提高禁止請求的公平性。
[0111]相應的,在確定訪問請求所請求的業務服務之后,客戶端可以確定當前仍屬于被禁止請求的目標業務服務。如,當前時刻該目標業務服務對應的計時時長為到達目標時長時,則該目標業務服務屬于被禁止請求的目標業務服務。
[0112]進一步的,當消息中該目標業務服務對應的目標時長超出客戶端預設的時間范圍,如,該時間范圍可以為客戶端的超時時長,則客戶端可以默認對該目標業務服務進行訪問控制的時長為預設時長,并在當前時刻之后預設時長內將該目標業務服務作為需要禁止請求的業務服務。
[0113]下面對本發明實施例提供的一種訪問控制裝置進行介紹,下文描述的一種訪問控制裝置可與上文描述的一種訪問控制方法相互對應參照。
[0114]參見圖5,其示出了本申請一種訪問控制裝置一個實施例的結構示意圖,該裝置可以包括:
[0115]業務確定單元501,用于確定當前需要進行訪問控制的目標業務服務;
[0116]客戶端確定單元502,用于確定當前禁止請求所述目標業務服務的目標客戶端;
[0117]發送單元503,用于向所述目標客戶端發送消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。
[0118]可選的,所述業務確定單元,包括:
[0119]服務器確定子單元,用于從關聯的多個應用服務器中,確定當前處于過載狀態的目標應用服務器;
[0120]第一確定子單元,用于將所述目標應用服務器所提供的業務服務確定為需要進行訪問控制的目標業務服務。
[0121]可選的,所述業務確定單元,包括:
[0122]網段確定子單元,用于確定當前帶寬占用比超過預設值的目標網絡段;
[0123]第二確定子單元,用于基于預置的網絡段與業務服務之間的對應關系,確定所述目標網絡段對應的目標業務服務,并將所述目標業務服務確定為當前需要進行訪問控制的目標業務服務。
[0124]可選的,所述業務確定單元,包括:
[0125]第三確定子單元,用于獲取用戶配置的業務服務列表,所述業務服務列表中包括至少一項需要進行訪問控制的目標業務服務。
[0126]可選的,所述發送單元發送的消息包括以下一種或多種:
[0127]所述目標業務服務的標識;
[0128]對所述目標業務服務進行訪問控制的目標時長;
[0129]用于提示用戶禁止請求所述目標業務服務的提示信息。
[0130]另一方面,與本申請的另一種訪問控制方法相對應,本申請實施例還提供了另一種訪問控制裝置。
[0131]參見圖6,其示出了本申請另一種訪問控制裝置一個實施例的結構示意圖,該訪問控制裝置可以包括:
[0132]請求截獲單元601,用于截獲客戶端待發送的訪問請求;
[0133]請求分析單元602,用于確定所述訪問請求所請求的業務服務;
[0134]請求丟棄單元603,用于當所述業務服務屬于禁止請求的目標業務服務時,丟棄所述訪問請求,其中,所述目標業務服務為由單點登錄服務器確定的禁止所述客戶端請求的業務服務。
[0135]可選的,該裝置還可以包括:
[0136]請求發送單元,用于當所述業務服務不屬于禁止請求的目標業務服務時,將所述訪問請求發送給所述單點登錄服務器。
[0137]可選的,該裝置還可以包括:
[0138]消息接收單元,用于在所述請求攔截單元截獲所述訪問請求之前,接收所述單點登錄服務器發送的消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。
[0139]可選的,所述消息包括:所述目標業務服務的標識;
[0140]所述請求分析單元,具體為:用于確定所述訪問請求攜帶的業務服務的標識;
[0141]相應的,所述裝置還包括:
[0142]業務獲取單元,用于在所述業務確定單元確定出所述訪問請求所請求的業務服務之后,獲取禁止請求的所述目標業務服務的標識;
[0143]業務檢測單元,用于檢測是否存在標識與所述業務服務的標識之間滿足預設的匹配條件的目標業務服務,并當存在標識與所述業務服務的標識之間滿足所述匹配條件的目標業務服務時,則確定所述業務服務屬于禁止請求的目標業務服務。
[0144]可選的,所述消息包括:對所述目標業務服務進行訪問控制的目標時長;
[0145]相應的,裝置還可以包括:
[0146]業務監控單元,用于在消息接收單元接收到所述消息之后,將所述目標業務服務確定為當前時刻之后所述目標時長內需要禁止請求的業務服務;
[0147]業務確定單元,用于在請求分析單元確定出所述訪問請求所請求的業務服務之后,確定當前禁止請求的目標業務服務。
[0148]可選的,所述消息包括:用于提示用戶禁止請求所述目標業務服務的提示信息;
[0149]相應的,所述裝置還包括:
[0150]提醒輸出單元,用于在所述請求丟棄單元丟棄所述訪問請求之后,依據所述消息中的所述提示信息,輸出用于提示用戶禁止請求所述業務服務的提醒消息。
[0151]本發明實施例還提供了一種服務器,該服務器可以包括上述所述的一種訪問控制
目.ο
[0152]圖7示出了服務器的硬件結構框圖,參照圖7,服務器700可以包括:處理器701,通信接口 702,存儲器703和通信總線704;
[0153]其中處理器701、通信接口 702、存儲器703通過通信總線704完成相互間的通信;
[0154]可選的,通信接口702可以為通信模塊的接口,如GSM模塊的接口;
[0155]處理器701,用于執行程序;
[0156]存儲器703,用于存放程序;
[0157]程序可以包括程序代碼,所述程序代碼包括計算機操作指令。
[0158]處理器701可能是一個中央處理器CPU,或者是特定集成電路ASIC(Applicati0nSpecific Integrated Circuit),或者是被配置成實施本發明實施例的一個或多個集成電路。
[0159]存儲器703可能包含高速RAM存儲器,也可能還包括非易失性存儲器(non-volatile memory),例如至少一個磁盤存儲器。
[0160]其中,程序可具體用于:
[0161]確定當前需要進行訪問控制的目標業務服務;
[0162]確定當前禁止請求所述目標業務服務的目標客戶端;
[0163]向該目標客戶端發送消息,該消息用于指示目標客戶端攔截針對所述目標業務服務的訪問請求。
[0164]本發明實施例還提供了一種終端,該終端可以包括上述所述的另一種訪問控制裝置。
[0165]圖8示出了終端的硬件結構框圖,參照圖8,終端800可以包括:處理器801,通信接口 802,存儲器803和通信總線804 ;
[0166]其中處理器801、通信接口 802、存儲器803通過通信總線804完成相互間的通信;
[0167]可選的,通信接口802可以為通信模塊的接口,如GSM模塊的接口;
[0168]處理器801,用于執行程序;
[0169]存儲器803,用于存放程序;
[0170]程序可以包括程序代碼,所述程序代碼包括計算機操作指令。
[0171]處理器801可能是一個中央處理器CPU,或者是特定集成電路ASIC(Applicati0nSpecific Integrated Circuit),或者是被配置成實施本發明實施例的一個或多個集成電路。
[0172]存儲器803可能包含高速RAM存儲器,也可能還包括非易失性存儲器(non-volatile memory),例如至少一個磁盤存儲器。
[0173]其中,程序可具體用于:
[0174]截獲客戶端待發送的訪問請求;
[0175]確定所述訪問請求所請求的業務服務;
[0176]當所述業務服務屬于禁止請求的目標業務服務時,丟棄所述訪問請求,其中,所述目標業務服務為由單點登錄服務器確定的禁止所述客戶端請求的業務服務。
[0177]本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。
[0178]專業人員還可以進一步意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結合來實現,為了清楚地說明硬件和軟件的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執行,取決于技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發明的范圍。
[0179]結合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執行的軟件模塊,或者二者的結合來實施。軟件模塊可以置于隨機存儲器(RAM)、內存、只讀存儲器(R0M)、電可編程R0M、電可擦除可編程R0M、寄存器、硬盤、可移動磁盤、CD-ROM、或技術領域內所公知的任意其它形式的存儲介質中。
[0180]對所公開的實施例的上述說明,使本領域專業技術人員能夠實現或使用本發明。對這些實施例的多種修改對本領域的專業技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發明的精神或范圍的情況下,在其它實施例中實現。因此,本發明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。
【主權項】
1.一種訪問控制方法,其特征在于,包括: 確定當前需要進行訪問控制的目標業務服務; 確定當前禁止請求所述目標業務服務的目標客戶端; 向所述目標客戶端發送消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。2.根據權利要求1所述的方法,其特征在于,所述確定當前需要進行訪問控制的目標業務服務,包括: 從關聯的多個應用服務器中,確定當前處于過載狀態的目標應用服務器; 將所述目標應用服務器所提供的業務服務確定為需要進行訪問控制的目標業務服務。3.根據權利要求1所述的方法,其特征在于,所述確定當前需要進行訪問控制的目標業務服務,包括: 確定當前帶寬占用比超過預設值的目標網絡段; 基于預置的網絡段與業務服務之間的對應關系,確定所述目標網絡段對應的目標業務服務,并將所述目標業務服務確定為當前需要進行訪問控制的目標業務服務。4.根據權利要求1所述的方法,其特征在于,所述確定當前需要進行訪問控制的目標業務服務,包括: 獲取用戶配置的業務服務列表,所述業務服務列表中包括至少一項需要進行訪問控制的目標業務服務。5.根據權利要求1所述的方法,其特征在于,所述消息包括以下一種或多種: 所述目標業務服務的標識; 對所述目標業務服務進行訪問控制的目標時長; 用于提示用戶禁止請求所述目標業務服務的提示信息。6.—種訪問控制方法,其特征在于,包括: 截獲客戶端待發送的訪問請求; 確定所述訪問請求所請求的業務服務; 當所述業務服務屬于禁止請求的目標業務服務時,丟棄所述訪問請求,其中,所述目標業務服務為由單點登錄服務器確定的禁止所述客戶端請求的業務服務。7.根據權利要求6所述的方法,其特征在于,還包括: 當所述業務服務不屬于禁止請求的目標業務服務時,將所述訪問請求發送給所述單點登錄服務器。8.根據權利要求6所述的方法,其特征在于,在所述截獲客戶端待發送的訪問請求之前,還包括: 接收所述單點登錄服務器發送的消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。9.根據權利要求8所述的方法,其特征在于,所述消息包括:所述目標業務服務的標識; 所述確定所述訪問請求所請求的業務服務,包括: 確定所述訪問請求攜帶的業務服務的標識; 則所述確定所述訪問請求所請求的業務服務之后,還包括: 獲取禁止請求的所述目標業務服務的標識; 檢測是否存在標識與所述業務服務的標識之間滿足預設的匹配條件的目標業務服務;當存在標識與所述業務服務的標識之間滿足所述匹配條件的目標業務服務時,則確定所述業務服務屬于禁止請求的目標業務服務。10.根據權利要求9所述的方法,其特征在于,所述檢測是否存在標識與所述業務服務的標識之間滿足預設的匹配條件的目標業務服務,包括: 檢測是否存在標識與所述業務服務的標識相同的目標業務服務; 或者,檢測是否存在標識的指定字段與所述業務服務的標識中的指定字段相同的目標業務服務。11.根據權利要求8所述的方法,其特征在于,所述消息包括:對所述目標業務服務進行訪問控制的目標時長; 則在所述接收所述單點登錄服務器發送的消息之后,還包括: 將所述目標業務服務確定為當前時刻之后所述目標時長內需要禁止請求的業務服務; 在所述確定所述訪問請求所請求的業務服務之后,還包括: 確定當前禁止請求的目標業務服務。12.根據權利要求8所述的方法,其特征在于,所述消息包括:用于提示用戶禁止請求所述目標業務服務的提示信息; 則在所述丟棄所述訪問請求之后,還包括: 依據所述消息中的所述提示信息,輸出用于提示用戶禁止請求所述業務服務的提醒消息。13.一種訪問控制裝置,其特征在于,包括: 業務確定單元,用于確定當前需要進行訪問控制的目標業務服務; 客戶端確定單元,用于確定當前禁止請求所述目標業務服務的目標客戶端; 發送單元,用于向所述目標客戶端發送消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。14.根據權利要求13所述的裝置,其特征在于,所述業務確定單元,包括: 服務器確定子單元,用于從關聯的多個應用服務器中,確定當前處于過載狀態的目標應用服務器; 第一確定子單元,用于將所述目標應用服務器所提供的業務服務確定為需要進行訪問控制的目標業務服務。15.根據權利要求13所述的裝置,其特征在于,所述業務確定單元,包括: 網段確定子單元,用于確定當前帶寬占用比超過預設值的目標網絡段; 第二確定子單元,用于基于預置的網絡段與業務服務之間的對應關系,確定所述目標網絡段對應的目標業務服務,并將所述目標業務服務確定為當前需要進行訪問控制的目標業務服務。16.根據權利要求13所述的裝置,其特征在于,所述業務確定單元,包括: 第三確定子單元,用于獲取用戶配置的業務服務列表,所述業務服務列表中包括至少一項需要進行訪問控制的目標業務服務。17.一種訪問控制裝置,其特征在于,包括: 請求截獲單元,用于截獲客戶端待發送的訪問請求; 請求分析單元,用于確定所述訪問請求所請求的業務服務; 請求丟棄單元,用于當所述業務服務屬于禁止請求的目標業務服務時,丟棄所述訪問請求,其中,所述目標業務服務為由單點登錄服務器確定的禁止所述客戶端請求的業務服務。18.根據權利要求17所述的裝置,其特征在于,還包括: 請求發送單元,用于當所述業務服務不屬于禁止請求的目標業務服務時,將所述訪問請求發送給所述單點登錄服務器。19.根據權利要求17所述的裝置,其特征在于,還包括: 消息接收單元,用于在所述請求攔截單元截獲所述訪問請求之前,接收所述單點登錄服務器發送的消息,所述消息用于指示所述目標客戶端攔截針對所述目標業務服務的訪問請求。20.根據權利要求19所述的裝置,其特征在于,所述消息包括:所述目標業務服務的標識; 所述請求分析單元,具體為:用于確定所述訪問請求攜帶的業務服務的標識; 所述裝置還包括: 業務獲取單元,用于在所述業務分析單元確定出所述訪問請求所請求的業務服務之后,獲取禁止請求的所述目標業務服務的標識; 業務檢測單元,用于檢測是否存在標識與所述業務服務的標識之間滿足預設的匹配條件的目標業務服務,并當存在標識與所述業務服務的標識之間滿足所述匹配條件的目標業務服務時,則確定所述業務服務屬于禁止請求的目標業務服務。21.根據權利要求19所述的裝置,其特征在于,所述消息包括:對所述目標業務服務進行訪問控制的目標時長; 所述裝置還包括: 業務監控單元,用于在消息接收單元接收到所述消息之后,將所述目標業務服務確定為當前時刻之后所述目標時長內需要禁止請求的業務服務; 業務確定單元,用于在請求分析單元確定出所述訪問請求所請求的業務服務之后,確定當前禁止請求的目標業務服務。22.根據權利要求19所述的裝置,其特征在于,所述消息包括:用于提示用戶禁止請求所述目標業務服務的提示信息; 所述裝置還包括: 提醒輸出單元,用于在所述請求丟棄單元丟棄所述訪問請求之后,依據所述消息中的所述提示信息,輸出用于提示用戶禁止請求所述業務服務的提醒消息。
【文檔編號】H04L29/06GK105915591SQ201610216515
【公開日】2016年8月31日
【申請日】2016年4月8日
【發明人】陳銳龍, 吳海松, 陳車前, 謝晉, 黃光西, 吳銘津
【申請人】騰訊科技(深圳)有限公司