日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

如何設計安全的 API 調用?

來源: 責編: 時間:2023-11-30 17:31:45 265觀看
導讀如何為網站設計安全的 API 訪問?我們在設計一個網站或平臺的時候,經常需要向用戶開放 API 訪問。這樣用戶就可以程序化地調用一些功能,舉幾個例子:交易所開放 API 讓用戶可以進行低時延的程序化交易,微信公眾號平臺開放 AP

如何為網站設計安全的 API 訪問?1Pf28資訊網——每日最新資訊28at.com

我們在設計一個網站或平臺的時候,經常需要向用戶開放 API 訪問。這樣用戶就可以程序化地調用一些功能,舉幾個例子:1Pf28資訊網——每日最新資訊28at.com

  1. 交易所開放 API 讓用戶可以進行低時延的程序化交易,
  2. 微信公眾號平臺開放 API 讓三方工具進行運營管理工作,
  3. Stripe 開放 API 讓商家和其他平臺能很好地集成支付功能。

當我們向用戶開放 API 訪問時,我們需要確保每次 API 調用都經過鑒權。這意味著我們需要確認用戶是他們所聲稱的身份。1Pf28資訊網——每日最新資訊28at.com

我們一般使用兩種常見的方法來進行鑒權:1Pf28資訊網——每日最新資訊28at.com

  1. 基于令牌的身份驗證
  2. HMAC(基于哈希的消息驗證碼)驗證

下圖說明了它們的工作原理。1Pf28資訊網——每日最新資訊28at.com

圖片1Pf28資訊網——每日最新資訊28at.com

01 基于令牌

第 1 步

用戶在客戶端輸入密碼,然后客戶端將密碼發送到鑒權服務器。1Pf28資訊網——每日最新資訊28at.com

第 2 步

鑒權服務器驗證密碼并生成一個有有效期的令牌。1Pf28資訊網——每日最新資訊28at.com

第 3 步和第 4 步

現在,客戶端可以發送請求,使用 HTTP 頭中帶有的令牌訪問服務器資源。這種訪問在令牌過期前一直有效。1Pf28資訊網——每日最新資訊28at.com

02 基于 HMAC

這種機制通過使用哈希函數(SHA256 或 MD5)生成消息驗證碼(簽名)。1Pf28資訊網——每日最新資訊28at.com

第 1 步和第 2 步

服務器生成兩個密鑰,一個是公共 APP ID(公鑰),另一個是 API Key(私鑰)。1Pf28資訊網——每日最新資訊28at.com

第 3 步

現在我們在客戶端生成一個 HMAC 簽名(hmac A)。該簽名是根據圖中列出的一組字段生成的。注意這里會加入請求的時間戳,這樣一個 HMAC 簽名是有有效期的,不會一直有效。1Pf28資訊網——每日最新資訊28at.com

第 4 步

客戶端發送請求來訪問服務器資源,HTTP 頭中包含 hmac A。1Pf28資訊網——每日最新資訊28at.com

第 5 步

服務器收到包含請求數據和鑒權標頭的請求。它從請求中提取必要的字段,并使用存儲在服務器端的 API Key 生成簽名(hmac B)。1Pf28資訊網——每日最新資訊28at.com

第 6 步和第 7 步

服務器會比較 hmac A(在客戶端生成)和 hmac B(在服務器端生成)。如果兩者匹配,請求的資源將返回給客戶端。1Pf28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-35585-0.html如何設計安全的 API 調用?

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 埋點數據可視化的探索與實踐

下一篇: 知道這些正則表達式,能讓你少寫1000行代碼

標簽:
  • 熱門焦點
  • Find N3入網:最高支持16+1TB

    OPPO將于近期登場的Find N3折疊屏目前已經正式入網,型號為PHN110。本次Find N3在外觀方面相比前兩代有很大的變化,不再是小號的橫向折疊屏,而是跟別的廠商一樣采用了較為常見的
  • K60至尊版狂暴引擎2.0加持:超177萬跑分斬獲性能第一

    Redmi的后性能時代戰略發布會今天下午如期舉辦,在本次發布會上,Redmi公布了多項關于和聯發科的深度合作,以及新機K60 Ultra在軟件和硬件方面的特性,例如:“K60 至尊版,雙芯旗艦
  • Redmi Buds 4開箱簡評:才199還有降噪 可以無腦入

    在上個月舉辦的Redmi Note11T Pro系列新機發布會上,除了兩款手機新品之外,Redmi還帶來了兩款TWS真無線藍牙耳機產品,Redmi Buds 4和Redmi Buds 4 Pro,此前我們在Redmi Note11T
  • 分享六款相見恨晚的PPT模版網站, 祝你做出精美的PPT!

    1、OfficePLUSOfficePLUS網站旨在為全球Office用戶提供豐富的高品質原創PPT模板、實用文檔、數據圖表及個性化定制服務。優點:OfficePLUS是微軟官方網站,囊括PPT模板、Word模
  • Python異步IO編程的進程/線程通信實現

    這篇文章再講3種方式,同時講4中進程間通信的方式一、 Python 中線程間通信的實現方式共享變量共享變量是多個線程可以共同訪問的變量。在Python中,可以使用threading模塊中的L
  • 猿輔導與新東方的兩種“歸途”

    作者|卓心月 出品|零態LT(ID:LingTai_LT)如何成為一家偉大企業?答案一定是對“勢”的把握,這其中最關鍵的當屬對企業戰略的制定,且能夠站在未來看現在,即使這其中的
  • 當家的盒馬,加速謀生

    來源 | 價值星球Planet作者 | 歸去來自己“當家”的盒馬,開始加速謀生了。據盒馬官微消息,盒馬計劃今年開放生鮮供應鏈,將其生鮮商品送往食堂。目前,盒馬在上海已經與
  • 疑似小米14外觀設計圖曝光:后置相機模組變化不大

    下半年的大幕已經開啟,而誰將成為下半年手機圈的主角就成為了大家關注的焦點,其中被傳有望拿下新一代驍龍8 Gen3旗艦芯片的小米14系列更是備受大家矚
  • 3699元!iQOO Neo8 Pro頂配版今日首銷:1TB UFS 4.0同價位唯一

    5月23日,iQOO推出了全新的iQOO Neo8系列,包含iQOO Neo8和iQOO Neo8 Pro兩個版本,其中標準版搭載高通驍龍8+,而Pro版更是首發搭載了聯發科天璣9200+旗艦
Top 主站蜘蛛池模板: 缙云县| 合肥市| 肇源县| 黄浦区| 海门市| 阜阳市| 嵊州市| 馆陶县| 上饶市| 磐石市| 河间市| 安龙县| 无棣县| 深州市| 宜宾市| 罗山县| 泰来县| 白水县| 库伦旗| 兴安县| 安塞县| 新安县| 吉木乃县| 江永县| 和硕县| 容城县| 明星| 磐石市| 清苑县| 泽普县| 巢湖市| 兴城市| 利津县| 克什克腾旗| 泰安市| 紫金县| 岳阳市| 嘉祥县| 安吉县| 拜城县| 临夏县|