API 的應用,帶來了十足的便利、彈性與靈活性。當所有人都可以存取此 API 應用時,進而可能衍生出各種風險、攻擊與安全危機,此時 API 的安全機制就十分重要。如何控管並開放 API 給對的使用者,並做到完善的 API 存取認證與授權?這裡將對於 F5 所提供的 API 的安全認證機制做說明。
單一入口 支援多種完備的認證機制
API 應用使用了幾個方面的認證技術,例如 Oauth2、OpenID、JWT 等等,以 Oauth2 為例,Oauth2 認證的流程如下:
Oauth2 的實際效果是,資源所有者通過該流程賦予協力廠商應用訪問資源服務器的有限許可權。該模式被廣泛應用在社交網路運用,來提供使用者認證登入服務,比如通過使用臉書帳號登入 Line 等其他社交媒體,Line 可以獲取到用戶在臉書上的頭像等相關資訊。
在一個通用型的 API 系統中,API 調用者作為協力廠商伺服器調用 API 伺服器,API 的使用者可以通過管理門戶得到一個 Token,使用這個 Token 發起 API 請求到 API 閘道,API閘道將識別該認證資訊,並將請求轉發到適當的 API 伺服器組,此時 API 系統各元件在認證關係中可以理解為: