用戶或資源所有者向身份提供者而不是聯合系統中的資源或 API 服務器進行身份驗證。身份提供者向客戶端提供令牌,以便它可以訪問 API 服務器。
HTTPS 強制保密,但 POST 方法沒有。使用 POST 方法的 HTTP 請求以明文形式傳輸。
API 有一個漏洞,可以在設計階段通過威脅建模儘早識別。
RESTful API
RESTful API 通常可以通過基本 URI 訪問,使用標準 HTTP 方法並返回媒體類型。HTTP 請求 GET https://api.WentzWu.com/user/ {username}/{password} 看起來像一個 RESTful API 請求。但是,我們不知道 API 如何返回結果,也不能斷定它是 RESTful。
以下是維基百科關於 RESTful API 的總結:
表現層狀態轉換(REST) 是一種軟體架構風格,旨在指導萬維網架構的設計和開發。REST 已被整個軟件行業採用,並且是一套被廣泛接受的用於創建無狀態、可靠的 Web API 的指南。
遵守 REST 架構約束的 Web 服務 API 稱為 RESTful API。基於 HTTP 的 RESTful API 的定義有以下幾個方面:
–基本 URI,例如http://api.example.com/;
–標準 HTTP 方法(例如,GET、POST、PUT 和 DELETE);
–定義狀態轉換數據元素的媒體類型(例如,Atom、微格式、application/vnd.collection+json、[13]:91-99 等)。當前表示告訴客戶端如何編寫轉換到所有下一個可用應用程序狀態的請求。這可以像 URI 一樣簡單,也可以像 Java 小程序一樣複雜。
參考
. 表象狀態轉移
. 一個不好的例子:裸奔的帳密就在你我身邊
資料來源: Wentz Wu QOTD-20210909
PS:此文章經過作者同意刊登 並且授權可以翻譯成中文