一文了解如何使用數(shù)字身份認證平臺EIAM保護API網(wǎng)關(guān)訪問

來源: TencentServerless
作者:蔡冉
時間:2021-08-10
18001
通過騰訊云API網(wǎng)關(guān),開發(fā)者可以將來自Serverless無服務(wù)器的云函數(shù)SCF、CVM上的Web服務(wù)、用戶自身的Web服務(wù)進行統(tǒng)一封裝并開放給最終用戶。

01.

背景介紹

通過騰訊云API網(wǎng)關(guān),開發(fā)者可以將來自Serverless無服務(wù)器的云函數(shù)SCF、CVM上的Web服務(wù)、用戶自身的Web服務(wù)進行統(tǒng)一封裝并開放給最終用戶。最終用戶無論是移動客戶端、Web客戶端、物聯(lián)網(wǎng)或其他應(yīng)用,都可以通過API網(wǎng)關(guān)調(diào)用API服務(wù)。為了確保API調(diào)用的安全性,API網(wǎng)關(guān)目前支持免鑒權(quán)、應(yīng)用認證、OAuth2.0三種方式。對于免鑒權(quán)方式,由于用戶無需鑒權(quán)即可通過API網(wǎng)關(guān)調(diào)用后臺業(yè)務(wù),安全級別較低;對于應(yīng)用認證方式,如果用戶數(shù)目變多,需要考慮應(yīng)用的管理安全問題;對于OAuth2.0方式,需要開發(fā)者自建和維護認證服務(wù)器。

騰訊數(shù)字身份管控平臺(EIAM)支持對用戶身份的集中管理、用戶認證、應(yīng)用集成、SSO、授權(quán)管理、審計管理等能力,支持SAML、CAS、JWT、OIDC、OAuth2.0等多種協(xié)議,支持多種基于角色的訪問控制(RBAC)模型。采用EIAM為API網(wǎng)關(guān)提供認證和鑒權(quán)能力可以為API調(diào)用提供更為安全和簡便的方式。

1628584000(1).png

02.

能力優(yōu)勢

通過EIAM為API網(wǎng)關(guān)提供防護的能力,具有以下優(yōu)勢:

·使用標(biāo)準(zhǔn)OAuth2.0協(xié)議;

·可一鍵創(chuàng)建授權(quán)API和業(yè)務(wù)API,輕配置;

·EIAM維護用戶目錄,免自建認證服務(wù)器;

·在認證能力基礎(chǔ)上支持鑒權(quán)功能,保護API安全;

·EIAM內(nèi)置多種RBAC模型,免自建鑒權(quán)服務(wù)器和授權(quán)模型;

·內(nèi)置緩存機制,更快的訪問速度;

03.

功能亮點簡析

1.API網(wǎng)關(guān)新功能詳解

·新增鑒權(quán)類型

鑒權(quán)類型中新增EIAM認證類型,通過配置化組合滿足不同的客戶需求;

·多種接入方式

支持自動新建EIAM應(yīng)用、自動關(guān)聯(lián)已建EIAM應(yīng)用;

·不同粒度的認證與鑒權(quán)

支持選擇只認證不鑒權(quán)、既認證又鑒權(quán);

·多端API調(diào)用適配

支持適用于非Web客戶端(如服務(wù)器端、APP客戶端、小程序客戶端等)、Web客戶端(瀏覽器、web viewer等)發(fā)起的API調(diào)用;

640.png

2.EIAM新功能詳解

·應(yīng)用類型支持

支持創(chuàng)建API網(wǎng)關(guān)應(yīng)用類型,支持OAuth2+JWT結(jié)合方式對API調(diào)用進行認證和鑒權(quán)支持;

·資源級授權(quán)支持

支持按照組組織機構(gòu)、用戶組、用戶進行API級的授權(quán);

·鑒權(quán)支持

OAuth2輸出增加id_token,帶有scope,支持返回用戶信息和當(dāng)前用戶可訪問的API列表;

04.

配置流程

通過EIAM為API網(wǎng)關(guān)提供防護能力包括3個步驟:

1.創(chuàng)建API發(fā)布服務(wù);

2.對API進行授權(quán);

3.從客戶端訪問API;

640 (1).png

從業(yè)務(wù)場景上,終端用戶對于API調(diào)用的發(fā)起方可能為非Web客戶端(如服務(wù)器端、C/S架構(gòu)系統(tǒng)客戶端、App客戶端、小程序客戶端)、Web客戶端(如瀏覽器、Web Viewer)。非Web客戶端能支持以POST方式發(fā)起請求,Web客戶端支持以Web重定向方式接收返回信息。下文以非Web客戶端為例說明配置流程。

第一步:創(chuàng)建API發(fā)布服務(wù)

1.進入API網(wǎng)關(guān)的控制臺-->服務(wù)菜單-->管理API Tab頁面

API網(wǎng)關(guān)控制臺地址:https://console.cloud.tencent.com/apigateway

2.點擊新建API進入前端配置

640 (2).png

·鑒權(quán)類型選擇EIAM認證;

·接入方式選擇新建EIAM應(yīng)用,會在EIAM自動創(chuàng)建API網(wǎng)關(guān)應(yīng)用;

·既認證又鑒權(quán);

·EIAM應(yīng)用類型選擇非Web客戶端;

3.完成前端配置后,進入后端配置;

·公網(wǎng)URL/IP的后端類型,填寫應(yīng)用域名、后端路徑、請求方式選擇GET等信息;

640.png

4.選擇響應(yīng)結(jié)果類型

640 (1).png

第二步:對API進行授權(quán)(EIAM)

1.進入EIAM的控制臺-->資源級授權(quán);

2.選擇用戶授權(quán)Tab頁,選擇API網(wǎng)關(guān)應(yīng)用;

3.選擇新增授權(quán);

640 (2).png

4.選擇用戶“user001”和“userName_11”進行授權(quán);

640 (3).png

5.授權(quán)完成后,可以在資源級授權(quán)頁面看到授權(quán)結(jié)果

640 (4).png

第三步:從客戶端訪問API

采用postman的方式對非Web客戶端對API的調(diào)用進行驗證。

1.對于未完成授權(quán)的用戶

·獲取id token;

640.png

·鑒權(quán)驗證,返回結(jié)果“Access not authorized”;

640 (1).png

2.對于完成授權(quán)的用戶

·解析id token內(nèi)容,可以查看對應(yīng)用戶身份為user001;

640 (2).png

·鑒權(quán)驗證,返回結(jié)果“Work?。?!”,即可以進行API的調(diào)用;

640 (4).png

通過3步簡單配置,即可快速完成EIAM+API網(wǎng)關(guān)聯(lián)合方案的配置,無需自建認證服務(wù)器、鑒權(quán)服務(wù)器,即可為您的業(yè)務(wù)API調(diào)用提供認證與鑒權(quán)能力。在未來,通過EIAM對多種授權(quán)模型的支持可以為API網(wǎng)關(guān)后防護的業(yè)務(wù)API提供更為細粒度的訪問控制能力,讓開發(fā)者聚焦關(guān)注自身業(yè)務(wù)開發(fā)。

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