【技術實現步驟摘要】
本專利技術涉及計算機通信
,特別涉及一種開放鑒權應用程序接口代理的方法、裝置及系統。
技術介紹
開放鑒權應用程序接口(OAuth, An open protocol to allow secureAPI authorization in a simple and standard method from desktop and webapplications)標準作為目前業界最為流行的第三方應用程序接口(API)鑒權授權訪問協議已在互聯網上廣泛使用,該OAuth標準能夠讓客戶端在不暴露客戶端密鑰的情況下將客戶端在某個服務提供商保存的隱私信息暴露給第三方應用,例如新浪sina微博,豆瓣,google等均基于OAuth標準發布了各種應用程序接口 API,極大的豐富了互聯網的開放環境,基于OAuth的代理需求也隨之顯現出來。現有技術中,OAuth消費者(OAuth consumer)先在OAuth服務提供商(OAuthprovider)上注冊自己的應用信息,被授權后,可以直接與OAuth服務提供商進行交互,獲取需要客戶端授權的隱私信息。但是,在實際應用中,很可能OAuth consumer無法直接和OAuth provider進行交互,需要代理才能訪問OAuth provider上保存的資源,例如互聯網上眾多的短信批發商和彩信批發商,作為短信API的代理接收第三方應用的請求,并將請求轉發給運營商的短信網關。在對現有技術的研究和實踐過程中,本專利技術的專利技術人發現,現有的實現方式中,客戶端在訪問多種服務提供商提供的服務時,需要在每個OAuth provi ...
【技術保護點】
一種開放鑒權應用程序接口OAuth代理的方法,其特征在于,包括:接收第三方應用發送的獲取請求令牌的請求消息;根據所述請求令牌的請求消息中的Oauth提供商字段查詢到Oauth提供商為Oauth代理發布的安全密鑰對及其請求令牌統一資源定位符;利用所述安全密鑰對所述獲取請求令牌的請求消息進行簽名后,從所述獲取請求令牌的請求消息對應的請求令牌統一資源定位符上獲取請求令牌;向所述第三方應用發送包括請求令牌的響應消息;接收所述第三方應用發送的獲取訪問令牌的請求消息;根據所述訪問令牌的請求消息中的Oauth提供商字段查詢到Oauth提供商為Oauth代理發布的安全密鑰對及其請求令牌統一資源定位符;利用所述安全密鑰和請求令牌對所述獲取訪問令牌的請求消息進行簽名后,從所述獲取訪問令牌的請求消息對應的訪問令牌統一資源定位符上獲取訪問令牌;向所述第三方應用發送包括訪問令牌的響應消息;接收第三方應用發送的客戶端資源訪問請求;根據所述訪問令牌對所述客戶端資源訪問請求進行簽名后,向所述客戶端資源訪問請求對應的OAuth提供商發起客戶端資源訪問請求;接收所述OAuth提供商發送的客戶端資源訪問響應;將所述客戶端資 ...
【技術特征摘要】
1.一種開放鑒權應用程序接口 OAuth代理的方法,其特征在于,包括: 接收第三方應用發送的獲取請求令牌的請求消息; 根據所述請求令牌的請求消息中的Oauth提供商字段查詢到Oauth提供商為Oauth代理發布的安全密鑰對及其請求令牌統一資源定位符; 利用所述安全密鑰對所述獲取請求令牌的請求消息進行簽名后,從所述獲取請求令牌的請求消息對應的請求令牌統一資源定位符上獲取請求令牌; 向所述第三方應用發送包括請求令牌的響應消息; 接收所述第三方應用發送的獲取訪問令牌的請求消息; 根據所述訪問令牌的請求消息中的Oauth提供商字段查詢到Oauth提供商為Oauth代理發布的安全密鑰對及其請求令牌統一資源定位符; 利用所述安全密鑰和請求令牌對所述獲取訪問令牌的請求消息進行簽名后,從所述獲取訪問令牌的請求消息對應的訪問令牌統一資源定位符上獲取訪問令牌; 向所述第三方應用發送包括訪問令牌的響應消息; 接收第三方應用發送的客戶端資源訪問請求; 根據所述訪問令牌對所述客戶端資源訪問請求進行簽名后,向所述客戶端資源訪問請求對應的OAuth提供商發起客戶端資源訪問請求; 接收所述OAuth提供商發送的客戶端資源訪問響應; 將所述客戶端資源訪問響應發送給第三方應用。2.根據權利要求1所述的方法,其特征在于,所述利用所述安全密鑰對所述獲取請求令牌的請求消息進行簽名后,從所述獲取請求令牌的請求消息對應的請求令牌統一資源定位符上獲取請求令牌,具體包括: 根據所述OAuth提供商為Oauth代理發布的發布的安全密鑰對所述獲取請求令牌的請求消息進行重新簽名; 將重新簽名后的獲取請求令牌的請求消息發送給OAuth提供商; 接收所述OAuth提供商發送的包括請求令牌的響應消息; 存儲所述請求令牌與所述第三方應用和OAuth提供商的映射關系。3.根據權利要求2所述的方法,其特征在于,所述利用所述安全密鑰和請求令牌對所述獲取訪問令牌的請求消息進行簽名后,從所述獲取訪問令牌的請求消息對應的訪問令牌統一資源定位符上獲取訪問令牌,具體包括: 根據所述OAuth提供商為Oauth代理發布的安全密鑰發布的安全密鑰和請求令牌對所述獲取訪問令牌的請求消息進行重新簽名; 將重新簽名后的獲取訪問令牌的請求消息發送給所述OAuth提供商; 接收所述OAuth提供商發送的包括訪問令牌的響應消息; 存儲所述訪問令牌與所述第三方應用和OAuth提供商的映射關系。4.根據權利要求3所述的方法,其特征在于,所述根據所述訪問令牌對所述客戶端資源訪問請求進行重新簽名的方式為: 根據所述OAuth提供商提供的安全密鑰和訪問令牌對所述客戶端資源訪問請求進行重新簽名。5.根據權利要求1至4任一項所述的方法, 其特征在于,所述方法還包括:所述第三方應用在接收到包括請求令牌的響應消息時,根據所述請求令牌將客戶端重定向到OAuth提供商提供的客戶端統一資源定位符上進行鑒權和授權操作; 在客戶端授權成功后,所述OAuth提供商將所述客戶端重定向到第三方應用的頁面上,所述第三方應用向OAuth代理發起獲取訪問令牌的請求消息。6.根據權利要求1至4任一項所述的方法,其特征在于,所述方法還包括: 所述第三方應用在接收到包括請求令牌的響應消息時,根據所述請求令牌將客戶端重定向到OAuth代理提供的指示頁面上進行指示操作; 所述OAuth代理根據所述請求令牌查詢對應的第三方應用信息和被訪問的OAuth提供商信息; 所述OAuth代理向客戶端展示所述第三方應用需要通過該OAuth代理向OAuth提供商訪問的客戶端隱私數據,并提示客戶端是否允許訪問所述客戶端隱私數據; 所述OAuth代理在接收到客戶端允許訪問所述客戶端隱私數據的確認信息后,將客戶端重定向到OAuth提供商提供的統一資源定位符上,以便于客戶端在所述OAuth提供商提供的客戶端授權統一資源定位符上進行鑒權和授權操作;之后執行步驟接收所述第三方應用發送的獲取訪問令牌的請求消息。7.根據權利要求1至4任一項所述的方法,其特征在于,所述請求令牌包括:密鑰鍵和密鑰;所述安全密鑰包括:消費者密鑰鍵和消費者密鑰。8.一種開放鑒權應用程序接口 OAuth代理裝置,其特征在于,包括: 第一接收單元,用于接收第三方應用發送的獲取請求令牌的請求消息; 第一查詢單元,用于根據所述請求令牌的請求消息中的Oauth提供商字段查詢到Oauth提供商為oauth代理發布的消費者密鑰對及其請求令牌統一資源定位符; 第一獲取單元,用于利用所述安全密鑰對所述獲取請求令牌的請求消息進行簽名后,從所述獲取請求令牌的請求消息對應的請求令牌統一資源定位符上獲取請求令牌; 第一發送單元,用于向所述第三方應用發送包括請求令牌的響應消息; 第二接收單元,用于接收所述第三方應用發送的獲取訪問令牌的請求消息; 第二查詢單元,用于根據所述訪問令牌的請求消息中的Oauth提供商字段查詢到Oauth提供商為oauth代理發布的安全密鑰鑰對及其請求令牌統一資源定位符; 第二獲取單元,用于利用所述安全密鑰和請求令牌對所述獲取訪問令牌的請求消息進行重新簽名后,從所述獲取訪問令牌的請求消息對應的訪問令牌統一資源定位符上獲取訪問令牌; 第二發送單元,用于向所述第三方應用發送包括訪問令牌的響應消息; 第三接收單元,用于接收第三方應用發送的客戶端資源訪問請求; 資源請求單元,用于根據所述訪問令牌對所述客戶端資源訪問請求進行重新簽名后,向所述客戶端資源訪問請求對應的OAuth提供商發起客戶端資源訪問請求; 資源接收單元,用于接收所述OAuth提供商的發送...
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。