做 ABAP 系统里的外部服务集成时,OAuth 2.0 Client 最容易被低估的一块,往往不是 token 怎么拿,而是不同服务商对 token 请求、授权请求、scope 分隔符、endpoint 路径、附加参数的细节要求并不完全一致。标准 OAuth 2.0 规范给出了授权框架,RFC 6749 对它的定位是,让第三方应用在资源拥有者授权后获得对 HTTP 服务的有限访问权限,或者让客户端以自身身份获得访问权限。(IETF Datatracker)
落到 SAP ABAP 平台,OAuth 2.0 Client 不是把一串 HTTP 参数硬编码到业务程序里,而是把服务商差异拆成几层配置和扩展。官方文档给出的准备动作很清楚,当外部 service provider 需要不同于 OAuth 2.0 标准的参数或设置时,需要在 AS ABAP 中实现 enhancement spot,并创建 service provider type、BAdI 实现、filter combination、OAuth 2.0 client profile,业务程序再通过之前定义好的 profile 调用 OAuth 2.0 Client。(