1.一種API調(diào)用的安全認證方法,運行于服務器端,其特征在于,該方法包括步驟:
當收到客戶端的API請求后,如果所述API請求中攜帶有令牌,則校驗所述API請求中的令牌是否有效;如果所述API請求中未攜帶令牌或所述API請求中的令牌為無效令牌,則將所述API請求中的鑒權信息提交給用戶中心進行身份驗證;在所述用戶中心身份驗證通過后,將計算獲得的令牌發(fā)送給所述客戶端;所述API請求中的令牌和所述計算獲得的令牌為根據(jù)預先約定的參數(shù)通過不可逆算法獲得的加密的隨機數(shù)。
2.根據(jù)權利要求1所述的方法,其特征在于,校驗所述API請求中的令牌是否有效的過程包括:
根據(jù)所述API請求中的令牌的索引信息獲得所述預先約定的參數(shù),根據(jù)所述預先約定的參數(shù)通過不可逆算法計算當前令牌,判斷當前令牌與所述API請求中的令牌是否相同,如果相同,則所述API請求中的令牌有效,如果不相同,則所述API請求中的令牌無效。
3.根據(jù)權利要求2所述的方法,其特征在于,所述API請求中的令牌的索引信息為身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息;所述方法還包括:
在所述用戶中心通過所述客戶端的身份驗證后,接收所述用戶中心返回的身份標識;
將所述計算獲得的令牌發(fā)送給所述客戶端時,將所述身份標識發(fā)給所述客戶端;
當校驗所述API請求中的令牌是否有效時,從所述API請求中獲取所述身份標識,根據(jù)所述身份標識查找與所述身份標識對應的預先約定的參數(shù)。
4.根據(jù)權利要求1所述的方法,其特征在于:
預先約定的參數(shù)包括至少一種身份標識,所述身份標識包括所述客戶端 的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息。
5.根據(jù)權利要求4所述的方法,其特征在于:預先約定的參數(shù)還包括加密秘鑰,所述加密秘鑰為隨機數(shù)。
6.根據(jù)權利要求4所述的方法,其特征在于,預先約定的參數(shù)還包括有效期驗證參數(shù),所述方法還包括步驟:
向所述客戶端發(fā)送所述計算獲得的令牌時,將所述有效期驗證參數(shù)發(fā)送至客戶端;
校驗所述API請求中的令牌是否有效的步驟包括:
根據(jù)所述有效期驗證參數(shù)判斷所述API請求中的令牌是否過期,如果已過期,則所述API請求中的令牌失效;如果未過期,則根據(jù)所述預先約定的參數(shù)計算當前令牌,判斷當前令牌與所述API請求中的令牌是否相同,如果相同,則所述API請求中的令牌有效,如果不相同,則所述API請求中的令牌無效。
7.一種API調(diào)用的安全認證方法,運行于客戶端,其特征在于,該方法包括步驟:
當接收到服務器的令牌時,將所述令牌存儲;所述令牌為根據(jù)預先約定的參數(shù)通過不可逆算法獲得的加密的隨機數(shù);
當構造API請求時,將所述令牌及鑒權信息攜帶在所述API請求中;
將所述API請求發(fā)送給服務器。
8.根據(jù)權利要求7所述的方法,其特征在于,所述方法還包括步驟:
當接收到服務器所發(fā)送的令牌的索引信息時,將所述令牌的索引信息存儲;
當構造所述API請求時,將所述索引信息攜帶在所述API請求中。
9.根據(jù)權利要求8所述的方法,其特征在于,所述令牌的索引信息為身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、 用戶編號、用戶賬號中的任意一種信息。
10.根據(jù)權利要求7所述的方法,其特征在于,預先約定的參數(shù)包括至少一種身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息;所述方法還包括步驟:
收集所述身份標識,并在構造API請求時,將所述身份標識攜帶在所述API請求中。
11.一種API調(diào)用的安全認證裝置,位于服務器端,其特征在于,包括:
第一通信模塊,用于接收客戶端的API請求;
處理模塊,用于在所述API請求中攜帶有令牌時,校驗所述API請求中的令牌是否有效;在所述API請求中未攜帶令牌或所述API請求中的令牌為無效令牌時,將所述API請求中的鑒權信息提交給用戶中心進行身份驗證;在所述用戶中心身份驗證通過后,將計算獲得的令牌發(fā)送給第二通信模塊;所述API請求中的令牌和所述計算獲得的令牌為根據(jù)預先約定的參數(shù)通過不可逆算法獲得的加密的隨機數(shù);
所述第二通信模塊,用于向所述客戶端發(fā)送所述計算獲得的令牌。
12.根據(jù)權利要求11所述的裝置,其特征在于,所述處理模塊校驗所述API請求中的令牌是否有效包括:
根據(jù)所述API請求中的令牌的索引信息獲得所述預先約定的參數(shù),根據(jù)所述預先約定的參數(shù)通過不可逆算法計算當前令牌,判斷當前令牌與所述API請求中的令牌是否相同,如果相同,則所述API請求中的令牌有效,如果不相同,則所述API請求中的令牌無效。
13.根據(jù)權利要求12所述的裝置,其特征在于,所述API請求中的令牌的索引信息為身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息;所述通信模塊還用于在所述用戶中心通過所述客戶端的身份驗證后,接收所述用戶中心返回 的身份標識;并在將所述計算獲得的令牌發(fā)送給所述客戶端時,將所述身份標識發(fā)給所述客戶端;
所述處理模塊還用于當校驗所述API請求中的令牌是否有效時,從所述API請求中獲取所述身份標識,根據(jù)所述身份標識查找與所述身份標識對應的預先約定的參數(shù)。
14.根據(jù)權利要求11所述的裝置,其特征在于:
預先約定的參數(shù)包括至少一種身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息。
15.根據(jù)權利要求14所述的裝置,其特征在于:預先約定的參數(shù)還包括加密秘鑰,所述加密秘鑰為隨機數(shù)。
16.根據(jù)權利要求14所述的裝置,其特征在于,預先約定的參數(shù)還包括有效期驗證參數(shù),所述通信模塊還用于向所述客戶端發(fā)送所述令牌時,將所述有效期驗證參數(shù)發(fā)送至客戶端;
所述處理模塊校驗所述API請求中的令牌是否有效包括:
根據(jù)所述有效期驗證參數(shù)判斷所述API請求中的令牌是否過期,如果已過期,則所述API請求中的令牌失效;如果未過期,則根據(jù)所述預先約定的參數(shù)計算當前令牌,判斷當前令牌與所述API請求中的令牌是否相同,如果相同,則所述API請求中的令牌有效,如果不相同,則所述API請求中的令牌無效。
17.一種API調(diào)用的安全認證裝置,運行于客戶端,其特征在于,包括:
存儲模塊,用于當接收到服務器的令牌時,將所述令牌存儲;所述令牌為根據(jù)預先約定的參數(shù)通過不可逆算法獲得的加密的隨機數(shù);
消息構造模塊,用于當構造API請求時,將所述令牌及鑒權信息攜帶在所述API請求;
通信模塊,用于接收服務器的所述令牌,并發(fā)給所述存儲模塊,以及將所述API請求發(fā)送給服務器。
18.根據(jù)權利要求17所述的裝置,其特征在于,所述通信模塊還用于接收所述服務器發(fā)送的令牌的索引信息,并發(fā)給所述存儲模塊存儲;
消息構造模塊還用于當構造所述API請求時,將所述索引信息攜帶在所述API請求中。
19.根據(jù)權利要求18所述的裝置,其特征在于,所述令牌的索引信息為身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息。
20.根據(jù)權利要求17所述的裝置,其特征在于,預先約定的參數(shù)包括至少一種身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息;所述消息構造模塊還用于收集所述身份標識,并在構造API請求時,將所述身份標識攜帶在所述API請求中。
21.一種API調(diào)用的安全認證系統(tǒng),包括服務器、用戶中心,其特征在于,
所述服務器,用于當收到客戶端的API請求后,如果所述API請求中攜帶有令牌,則校驗所述API請求中的令牌是否有效;如果所述API請求中未攜帶令牌或所述API請求中的令牌為無效令牌,則將所述API請求中的鑒權信息提交給用戶中心進行身份驗證;在所述用戶中心身份驗證通過后,將計算獲得的令牌發(fā)送給所述客戶端;所述API請求中的令牌和所述計算獲得的令牌為根據(jù)預先約定的參數(shù)通過不可逆算法獲得的加密的隨機數(shù);
所述用戶中心,用于根據(jù)所述服務器發(fā)送的所述鑒權信息對所述客戶端進行身份驗證,以及將身份驗證的結果通知所述服務器。
22.根據(jù)權利要求21所述的系統(tǒng),其特征在于,所述服務器校驗所述API請求中的令牌是否有效包括:
根據(jù)所述API請求中的令牌的索引信息獲得所述預先約定的參數(shù),根據(jù)所述預先約定的參數(shù)通過不可逆算法計算當前令牌,判斷當前令牌與所述API請求中的令牌是否相同,如果相同,則所述API請求中的令牌有效,如果不相同,則所述API請求中的令牌無效。
23.根據(jù)權利要求22所述的系統(tǒng),其特征在于,所述API請求中的令牌的索引信息為身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息;
所述用戶中心還用于在通過所述客戶端的身份驗證后,將所述客戶端的身份標識返回給所述服務器;
所述服務器還用于將所述計算獲得的令牌發(fā)送給所述客戶端時,將所述身份標識發(fā)給所述客戶端;當校驗所述API請求中的令牌是否有效時,從所述API請求中獲取所述身份標識,根據(jù)所述身份標識查找與所述身份標識對應的預先約定的參數(shù)。
24.根據(jù)權利要求21所述的系統(tǒng),其特征在于:
預先約定的參數(shù)包括至少一種身份標識,所述身份標識包括所述客戶端的IP地址、MAC地址、客戶端標識、用戶編號、用戶賬號中的任意一種信息。
25.根據(jù)權利要求24所述的系統(tǒng),其特征在于:預先約定的參數(shù)還包括加密秘鑰,所述加密秘鑰為隨機數(shù)。
26.根據(jù)權利要求24所述的系統(tǒng),其特征在于,預先約定的參數(shù)還包括有效期驗證參數(shù),所述服務器還用于:
向所述客戶端發(fā)送所述計算獲得的令牌時,將所述有效期驗證參數(shù)發(fā)送至客戶端;
所述服務器校驗所述API請求中的令牌是否有效包括:
根據(jù)所述有效期驗證參數(shù)判斷所述API請求中的令牌是否過期,如果已過期,則所述API請求中的令牌失效;如果未過期,則根據(jù)所述預先約定的 參數(shù)計算當前令牌,判斷當前令牌與所述API請求中的令牌是否相同,如果相同,則所述API請求中的令牌有效,如果不相同,則所述API請求中的令牌無效。