API 接入零信任部署實踐指南

來源:F5 Inc
作者:路笑凡
時間:2023-01-16
1612
實施數字化轉型的公司有著明確的業(yè)務需求。新型應用架構不僅可提高開發(fā)效率,而且集容器、微服務和 API 于一體,可幫助滿足這些需求。

1

 應用零信重點防護失效的對象級授權


實施數字化轉型的公司有著明確的業(yè)務需求。這包括借助現代業(yè)務應用改善客戶體驗,采用敏捷實踐以超越市場競爭對手,以及利用市場優(yōu)勢創(chuàng)造新的收入來源。新型應用架構不僅可提高開發(fā)效率,而且集容器、微服務和 API 于一體,可幫助滿足這些需求。

對現代應用來說,安全性是現代應用敏捷性和上線時效性至關重要的一部分。企業(yè)已經開始考慮使用 WAAP 解決方案來應對 API 安全隱患,其中 OWASP API Top 10 是 API 安全的關鍵第一步防線,通過 Salt Security《State of API Security Report, Q3 2022》報告,說明近一半用戶安全團隊都沒有將 OWASP API 安全性前十列為重點領域,對于 OWASP API TOP 1 失效的對象級授權是防護的關鍵。

失效的對象就會涉及到 ID 和 Token 概念,ID 和 Token 不得不提就是當今最為關注的零信任話題。


零信任可以分為兩類,網絡零信任接入和應用零信任接入:

  • 網絡零信任  Zero Trust Network Architecture

  • 應用零信任  Zero Trust Application Access


網絡零信任解決是接入網絡時安全性,與應用零信任防護在不同的層級。舉例說明;黑客拿著泄露了的用戶名密碼,或者利用業(yè)務系統(tǒng)漏洞,從辦公網直接進來的攻擊流量卻防不勝防,這就是因為微隔離無法判斷這些來自辦公網的流量究竟是誰發(fā)起的,以及是否有權利有必要訪問那些 API 業(yè)務系統(tǒng)。

所以對接入 API 應用系統(tǒng)需要持續(xù)性認證才能更好的防護 ZTAA - Zero Trust Application Access。通過 ZTAA 要解決接入零信任,同時判斷對象 ID 和 Key Token 的一致性,減少惡意發(fā)起對象枚舉行為造成的數據泄露。


2

 API 應用接入控制流程


API 安全訪問流程:


用戶請求身份認證到 IdP(Identity Provider)身份提供


通過認證頒發(fā)令牌給用戶


用戶攜帶令牌訪問 External APIs 應用接口


External 接口轉發(fā)請求到 Internal APIs 接口

通過訪問流程對應關系,安全加固需要在 External APIs 和 Internal APIs 做到 API 接入持續(xù)驗證,永不信任,確保接入應用的安全性。


3

 F5 API 應用接入控制流程


F5 API 安全訪問流程:


用戶請求身份認證到 IdP(Identity Provider)身份提供


通過認證頒發(fā)令牌給用戶


用戶攜帶令牌訪問 External APIs 應用接口


通過 F5 APM(Access Policy Manage)接入策略管理功能或 LTM Add-on APM 模塊,實現接入屬性控制策略和重新簽發(fā)內部識別的 JWT 令牌


External 接口轉發(fā)請求到 Internal APIs 接口


微服務接口使用 NGINX 對 JWT 令牌中的屬性值執(zhí)行接入控制策略

F5 在 External APIs 和 Internal APIs 做到 API 接入持續(xù)驗證,永不信任,可以實現對接入控制權限限制,其中可以包括地位位置、URL、部門信息、情報信息,作為驗證的屬性閥值,保證接入應用的安全性。


4

 失效的對象級授權最佳實踐解決方案


  1. 用戶請求身份認證到 IdP(Identity Provider)身份提供,為認證用戶分配 GUID,并且可以通過 JWT Claim 添加更多的聲明屬性,比如地理位置、部門、用戶 ID 等信息在 JWT Token,上述案例描述 Claim 包括 userID LU 信息 id=4079a01-d87w1-7682-02ha

  2. 用戶攜帶令牌和URL訪問 External APIs 應用接口,并且 URL 標識用戶請求的 ID

  3. 通過對外 API F5 BIG-IP APM 可以執(zhí)行訪問控制檢查,比較 JWT的 UserID 和 URL 參數中的 ID 是否一致性,BIG-IP APM 允許請求并將其轉發(fā)到 API 端點,否則拒絕請求

  4. 對于微服務內部 API 接口,可以通過 NGINX 可以執(zhí)行訪問控制檢查,比較 JWT 的 UserID 和 URL 參數中的 ID 是否一致性,否則拒絕請求


當您對 API 流量實施身份驗證時,成功證明其身份的客戶端會從受信任的身份提供商那里獲得令牌,然后客戶端再為每個HTTP 請求提供訪問令牌。

在將請求傳遞給應用之前,通過 APM或者 NGINX Plus 會驗證令牌并提取在令牌中編碼的身份和其他數據(例如組成員資格),以確保對客戶端進行身份驗證和授權。

令牌得到驗證并且客戶端獲得訪問資源的授權后,請求就會被傳遞到應用服務器。驗證方法有很多種,其中使用 OpenID Connect(基于 OAUTH 2.0 協(xié)議構建)是一種流行的做法,它可以對 API 請求進行第三方身份驗證。

立即登錄,閱讀全文
原文鏈接:點擊前往 >
文章來源:F5 Inc
版權說明:本文內容來自于F5 Inc,本站不擁有所有權,不承擔相關法律責任。文章內容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯系管理員(zzx@kchuhai.com)刪除!
優(yōu)質服務商推薦
更多
掃碼登錄
打開掃一掃, 關注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務合作
商務合作
投稿采訪
投稿采訪
出海管家
出海管家