You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WSO2 APIM中部署需Basic Auth的Python API并配置认证策略

实现WSO2 APIM代理带自身Basic Auth的Python API,并启用WSO2用户Basic Auth认证

1. 发布Python API到WSO2 APIM

  • 登录WSO2 APIM管理控制台(Publisher界面),点击Create API选择Design a New API。
  • 填写API基本信息(名称、版本、上下文等),进入Endpoint Configuration页面。
  • 在Production Endpoints中填入Python API的实际访问URL(例如http://your-python-api:port/api-path)。

2. 配置前端调用的WSO2用户Basic Auth认证

  • 进入API的Security标签页,在Security Schemes区域点击Add Security Scheme。
  • 选择Basic Authentication类型,命名(如WSO2_User_Basic_Auth),勾选Enable,关联WSO2默认的Primary用户存储(即WSO2内置的用户体系)。
  • 在API Security部分,将创建好的WSO2_User_Basic_Auth添加到Applied Security Schemes,保存配置。

3. 配置WSO2转发请求到后端的Basic Auth(Python API自身账号)

这一步是让WSO2在调用你的Python API时自动带上后端要求的认证凭证,有两种常用实现方式:

方式一:直接在Endpoint中配置后端认证

  • 返回Endpoint Configuration页面,点击已添加的Production Endpoint旁的Edit按钮。
  • 在编辑窗口切换到Advanced标签,找到Authentication部分,选择Basic Authentication。
  • 填入Python API要求的用户名和密码,保存后WSO2会自动在转发请求时生成Authorization: Basic <base64编码的后端账号>请求头。

方式二:用中介流自定义添加认证头

如果需要更灵活的逻辑控制,可通过中介流实现:

  • 进入API的Mediation Policies标签页,选择Outflow(WSO2发往后端的请求流程)。
  • 添加Script Mediator,输入如下脚本(替换backend_username和backend_password为实际值):
var username = 'backend_username';
var password = 'backend_password';
var authHeader = 'Basic ' + Base64.encode(username + ':' + password);
mc.setHeader('Authorization', authHeader);
  • 保存中介流并发布API。

4. 测试验证

  • API发布后切换到Developer Portal,订阅该API并使用WSO2用户账号密码发起请求。
  • 用curl或Postman调用WSO2 APIM的API端点(例如https://wso2-apim:8243/api-context/version/path),请求头添加Authorization: Basic <base64编码的WSO2用户名:密码>。
  • 验证Python API返回成功响应,说明WSO2完成了前端认证和后端凭证转发的流程。

内容的提问来源于stack exchange,提问作者Vikas Patil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 15:15:10