后端与接口
在 SAP BTP 上配置身份认证…
为 SAP BTP 应用配置 IAS 认证、IPS 用户同步、AMS 策略授权,或从 XSUAA 迁移到 IAS 时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
在 SAP BTP 上配置身份认证、用户特定
解决思路
- 在 IAS 管理控制台的 Applications and Resources > Applications 下注册应用,为每个应用定义 Application Type(OIDC 或 SAML 2.0)、Trust Configuration(SAML 上传 SP metadata,OIDC 配置 redirect URIs)、Authentication(认证方法、条件规则、IdP 选择)以及 User Attributes(令牌/断言中发送哪些属性)。
- 使用 SAP BTP Identity service(xsuaa 的替代品)时,让服务实例自动在 IAS 中创建 OIDC 应用,无需手动注册。
- 在 Applications and Resources > Corporate Identity Providers 下配置企业 IdP 联合,让 IAS 作为代理:终端用户在 Azure AD、Okta 等企业 IdP 认证,IAS 为 SAP 应用桥接令牌。
- 使用 IPS 在系统间同步用户和组:配置 source systems(如 SAP SuccessFactors、Azure AD、SAP S/4HANA Cloud)、target systems(如 IAS tenant、SAP BTP XSUAA、SAP Analytics Cloud)和 proxy systems(混合场景,从一个系统读取并通过另一个系统写入)。
- 在 IPS 中通过 JSON 格式的 transformations 定义源与目标 schema 之间的属性映射,通过 jobs 执行计划或按需的全量/增量读取,并启用 real-time provisioning 实现实体从源到目标的即时传播。
- 使用 AMS 实现基于策略的实例级授权:开发者用 Data Control Language(DCL,类 SQL 语言)定义授权策略并随应用部署,例如 DEFINE POLICY SalesOrderAccess AS (SELECT FROM SalesOrder WHERE buyer = CONTEXT('userIdentityLogonName') OR region = CONTEXT('userAttributes.region'))。
- 遵循 AMS 策略生命周期:开发者用 DCL 定义策略并随应用部署 → 基础策略出现在 IAS 管理控制台的 Authorization Policies 下 → 管理员创建带细化限制的自定义策略(基础策略的副本)→ 管理员通过组将策略分配给用户。
- 新 BTP 应用使用 Identity service(BTP 服务)+ IAS,由 Identity service 自动在 IAS 中创建 OIDC 应用;现有 XSUAA 应用可共存,采用增量迁移——将认证迁移到 IAS,同时保留 XSUAA 以向后兼容;新应用的授权用 AMS 基于策略的授权替代 XSUAA 基于 scope 的授权,现有 role-collection 模式继续受支持。
- 使用 Identity service 时,BTP 子账户与 IAS 之间的信任会自动建立;手动配置时,SAML 2.0 需将 SP metadata XML 上传到 IAS 应用信任配置,OIDC 需配置 redirect URIs、post-logout URIs 和客户端认证;在 BTP cockpit 的 Security > Trust Configuration 下,服务绑定后 IAS tenant 会出现。
- 排查常见错误:Invalid redirect URI 时在 IAS 应用 > Trust > Redirect URIs 中添加精确 URI(含协议和末尾斜杠);Token audience mismatch 时核对应用 client ID 与 IAS 中的一致并检查 Identity service 绑定;Trust not established 时重新绑定 Identity service 实例或在 BTP cockpit 手动添加 IAS 信任;Missing role collections 时在 BTP cockpit > Security > Role Collections 分配角色集合或配置 AMS 策略;401 on service-to-service call 时重新生成 client secret/证书并验证绑定凭据;SAML assertion expired 时同步系统时钟并检查 IAS tenant SAML 设置;Provisioning job failed 时在 IPS 管理控制台检查系统属性、证书和连通性;Issuer mismatch in token 时验证 iss 声明与 BTP 信任中配置的 IAS tenant URL 一致。
适用边界 · 注意事项
- 不涉及 SAP BTP 或 SAP Cloud Identity Services 的项目不适用。
- 需要先拥有 SAP BTP 账号、IAS tenant 及相关服务实例(Identity service、IPS、AMS)才能使用。
- 非 SAP 生态的通用 OIDC/SAML 认证场景应使用其他方案。