尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

在 S2S 场景中理解 On-Behalf-Of (OBO) 流程

在 S2S 场景中理解 On-Behalf-Of (OBO) 流程
📅 发布时间:2026/6/20 6:27:47

在 S2S 场景中理解 On-Behalf-Of (OBO) 流程

在现代微服务架构中,服务之间的调用经常涉及到用户身份的传递。On-Behalf-Of (OBO) 授权流是一种常见的方式,用来确保用户的权限在调用链中保持一致。


🔍 什么是 OBO

  • 定义:OBO(On-Behalf-Of)是 OAuth2.0 中的一种授权流,允许一个服务在调用下游 API 时,使用用户的身份和权限,而不是服务本身的身份。

  • 目的:确保用户的权限和身份在多层服务调用中保持一致。

  • 区别:

    • Client Credentials Flow:服务用自己的身份调用下游 API。

    • OBO Flow:服务用用户的身份调用下游 API。

⚙️ OBO 流程步骤

  • 用户登录:用户在前端应用完成登录,获取 Access Token。

  • 调用中间层 API:前端请求中带上用户的 Token。

  • 中间层 API 发起 OBO 请求:中间层用用户 Token 向身份平台(如 Azure AD)换取新的 Token。

  • 调用下游 API:中间层用新的 Token 调用下游 API。

  • 下游 API 验证 Token:确认用户身份和权限,返回数据。

📝 Startup 配置示例

builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddMicrosoftIdentityWebApi(builder.Configuration.GetSection("AzureAd")).EnableTokenAcquisitionToCallDownstreamApi().AddInMemoryTokenCaches();builder.Services.AddAuthorization();
  • appsettings.json
{"AzureAd": {"Instance": "https://login.microsoftonline.com/","TenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","ClientId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","ClientSecret": "your-client-secret","Audience": "api://your-api-app-id"}
}

📊 OBO 的适用场景

  • 多层架构:前端 → 中间层 → 下游服务。

  • 用户数据访问:下游 API 需要知道调用者是哪个用户。

  • 权限传递:确保用户的权限在调用链中不丢失。

🔑 总结

OBO 流程的核心是:中间层 API 不用自己的身份,而是代表用户去访问下游服务。这样可以保证用户的权限链条完整,避免服务“冒充”用户。

相关新闻

  • NetCore使用WCF简单方式
  • .NET Core WebAPI 中使用 MISE + S2S 的三种方式
  • offline meta RL | 论文速读记录

最新新闻

  • 嵌入式指令压缩技术:MPC562/564硬件解压原理与工程实践
  • Mission Planner:从新手到专家的无人机飞行控制完全指南
  • AI Coding工具链协同实战:CLAUD+OpenClaw+GLM-5集成指南
  • 嵌入式开发中sbrk、unlink、write系统调用的底层原理与实战优化
  • KL82微控制器功耗与时钟系统深度解析与低功耗设计实战
  • PEEK转子生产商价格透明测评,2026实力口碑榜不踩坑 - 工业品牌热点

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号