关于 sap-btp-cloud-identity-services
此技能介绍 SAP BTP 上的 SAP Cloud Identity Services,面向配置身份验证、用户配置和授权的团队。内容涵盖 IAS、IPS、Identity Directory 和 AMS,并提供设置、迁移及故障排查参考。
主要功能
- 01配置 OIDC 和 SAML 应用
- 02企业身份提供商联合
- 03用户和组配置同步
- 04基于 DCL 的授权策略
- 05XSUAA 到 IAS 迁移指引
- 06令牌与信任故障排查
适用场景
- 01注册 IAS 应用
- 02跨系统同步身份信息
- 03为 BTP 应用定义授权策略
- 04诊断令牌或信任错误
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ secondsky/ sap-skills --skill sap-btp-cloud-identity-services安装后在 Claude Code 中输入/sap-btp-cloud-identity-services确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdagents/openai.yamlreferences/app-integration-patterns.mdauthorization-management.mdidentity-authentication.mdidentity-provisioning.mdtroubleshooting.mdxsuaa-to-ias-migration.md详细介绍
SAP Cloud Identity Services
SAP Cloud Identity Services 是 SAP BTP 上的一组服务,用于管理云端和本地系统的身份与访问权限。它们提供单点登录、用户配置和基于策略的授权。
这些服务包括:
- Identity Authentication (IAS) — 基于云的身份验证、SSO(OIDC/SAML 2.0)、企业 IdP 联合、条件身份验证和用户存储管理。作为 SAP BTP 应用程序的身份提供商。
- Identity Provisioning (IPS) — 身份生命周期管理即服务。在源系统和目标系统(SAP 和非 SAP)之间同步用户和组,支持全量和增量读取模式、实时配置以及转换。
- Identity Directory — 中央用户存储。提供 SCIM 2.0 REST API 和自定义架构,并生成由 IPS 分发至 SAP 云应用程序的 Global User ID。
- Authorization Management (AMS) — 面向 BTP 应用程序的基于策略的授权。开发人员使用 Data Control Language (DCL) 定义策略;管理员通过管理控制台对其进行细化和分配。
相关技能
- sap-btp-connectivity — destination 服务和连接身份验证机制(OAuth 客户端凭据、通过 Cloud Connector 进行主体传播)
- sap-cap-capire — CAP 应用程序级别的身份验证用法(角色模板、@requires 注解、使用 xs-security.json 执行 cds deploy)
- sap-btp-best-practices — 高级安全治理和生产部署模式
- sap-btp-cloud-platform — BTP 账户设置、子账户配置、服务实例创建
何时使用此技能
- 在 IAS 中注册 OIDC 或 SAML 2.0 应用程序
- 配置企业身份提供商联合(IdP 代理)
- 在 BTP 子账户与 IAS 租户之间建立信任
- 设置 Identity Provisioning 源/目标系统和作业
- 编写或完善 AMS 授权策略 (DCL)
- 从 XSUAA 迁移到基于 IAS 的身份验证
- 排查令牌验证、受众或颁发者不匹配错误
- 配置条件身份验证(基于风险、MFA)
- 将 IAS 与 SAP BTP Identity 服务集成(自动创建 OIDC 应用程序)
快速参考
| 服务 | 用途 | 关键对象 |
|---|---|---|
| IAS | 身份验证和 SSO | 应用程序 (OIDC/SAML)、IdP、条件身份验证、用户存储 |
| IPS | 用户/组配置 | 源系统、目标系统、代理系统、转换、作业 |
| Identity Directory | 用户持久化 | 用户、组、自定义架构、Global User ID |
| AMS | 基于策略的授权 | 授权策略、DCL 规则、策略模板、限制 |
Identity Authentication (IAS)
IAS 是 SAP BTP 应用程序身份验证的入口点。它支持 OIDC 和 SAML 2.0 协议,可作为身份提供商或企业 IdP 的代理,并根据用户属性、电子邮件域、用户组或 IP 范围提供条件身份验证。
应用程序注册
在 IAS 管理控制台的 Applications and Resources > Applications 下注册应用程序。每个应用程序定义以下内容:
- Application Type — OIDC 或 SAML 2.0
- Trust Configuration — 上传 SP 元数据(SAML)或重定向 URI(OIDC)
- Authentication — 身份验证方法、条件规则、IdP 选择
- User Attributes — 令牌/断言中发送的属性
使用 SAP BTP Identity service(xsuaa 的替代方案)时,服务实例会自动在 IAS 中创建 OIDC 应用程序。无需手动注册。
企业 IdP 联合
IAS 可作为代理:终端用户在企业 IdP(Azure AD、Okta 等)处完成身份验证,IAS 则为 SAP 应用程序转接令牌。在 Applications and Resources > Corporate Identity Providers 下进行配置。
详情请参阅 references/identity-authentication.md。
身份配置(IPS)
IPS 用于在系统之间同步用户和组。它支持源系统、目标系统和代理系统类型,并可配置转换规则和计划任务。
核心概念
- 源系统 — 从中读取用户/组的系统(例如 SAP SuccessFactors、Azure AD、SAP S/4HANA Cloud)
- 目标系统 — 向其写入用户/组的系统(例如 IAS 租户、SAP BTP XSUAA、SAP Analytics Cloud)
- 代理系统 — 混合场景中,IPS 从一个系统读取数据并通过另一个系统写入数据
- 转换规则 — 在源架构和目标架构之间进行属性映射的 JSON 配置
- 作业 — 按计划执行或按需执行的配置任务(全量读取或增量读取)
- 实时配置 — 将实体从源系统立即传播到目标系统
详情请参阅 references/identity-provisioning.md。
授权管理(AMS)
AMS 为 BTP 应用启用基于策略的实例级授权。开发人员使用类似 SQL 的语言 数据控制语言(DCL) 定义授权策略,并随应用一起部署。管理员可在 IAS 管理控制台中调整策略。
策略生命周期
- 开发人员 使用 DCL 定义策略,并随应用一起部署
- 基础策略 显示在 IAS 管理控制台的 Authorization Policies 下
- 管理员 创建自定义策略(基础策略的副本),并细化限制条件
- 管理员 通过组将策略分配给用户
DCL 示例
DEFINE POLICY SalesOrderAccess
AS (SELECT FROM SalesOrder
WHERE buyer = CONTEXT('userIdentityLogonName')
OR region = CONTEXT('userAttributes.region'));
详情请参阅 references/authorization-management.md。
从 XSUAA 迁移到 IAS
SAP 正在将 BTP 身份验证从 XSUAA(SAP Authorization and Trust Management Service)迁移到 Cloud Identity Services。建议采取以下方案:
- 新的 BTP 应用:使用 Identity service(BTP 服务)和 IAS。Identity service 会在 IAS 中自动创建 OIDC 应用。
- 现有 XSUAA 应用:支持共存。迁移采用渐进方式 — SAP 建议将身份验证迁移到 IAS,同时保留 XSUAA 以实现向后兼容。
- 授权:对于新应用,SAP 正在用基于 AMS 策略的授权取代基于 XSUAA 作用域的授权。现有的角色集合模式仍受支持。
完整迁移指南请参阅 references/xsuaa-to-ias-migration.md。
信任配置
使用 Identity service 时,BTP 子账户与 IAS 之间会自动建立信任。对于手动配置:
- SAML 2.0:将 SP 元数据 XML 上传到 IAS 应用的信任配置中
- OIDC:配置重定向 URI、注销后 URI 和客户端身份验证
BTP 子账户信任
在 BTP cockpit 中,转到 Security > Trust Configuration。建立服务绑定后,IAS 租户会显示在此处。Identity service 会自动创建信任。
详情请参阅 references/troubleshooting.md 和 references/app-integration-patterns.md。
常见错误和解决方案
| 错误 | 原因 | 解决方案 |
|---|---|---|
Invalid redirect URI | IAS 应用中的重定向 URI 与 approuter 回调 URL 不匹配 | 在 IAS 应用 > Trust > Redirect URIs 中添加完全一致的 URI(包括协议和末尾斜杠) |
Token audience mismatch | 令牌的 aud 声明不包含预期的客户端 ID | 确认应用的客户端 ID 与 IAS 中的 ID 一致;检查 Identity 服务绑定 |
Trust not established | BTP 子账户未与 IAS 租户建立信任关系 | 重新绑定 Identity 服务实例,或在 BTP cockpit 中手动将 IAS 添加为信任配置 |
Missing role collections | 用户在 BTP 中未分配任何角色 | 在 BTP cockpit > Security > Role Collections 中分配角色集合,或配置 AMS 策略 |
401 on service-to-service call | 客户端凭据无效或缺失 | 重新生成客户端密钥/证书;验证绑定凭据 |
SAML assertion expired | IdP 与 IAS 之间存在时钟偏差 | 同步系统时钟;检查 IAS 租户的 SAML 设置 |
Provisioning job failed | 源系统/目标系统连接问题 | 在 IPS 管理控制台中检查系统属性、证书和连接情况 |
Issuer mismatch in token | IAS 租户 URL 已更改或租户错误 | 确认 iss 声明与 BTP 信任中配置的 IAS 租户 URL 一致 |
捆绑资源
references/identity-authentication.md— IAS 应用注册、OIDC/SAML 配置、企业 IdP 联合、条件身份验证、用户存储references/identity-provisioning.md— IPS 源系统/目标系统/代理系统、作业、转换、实时配置、故障排查references/authorization-management.md— AMS 策略语言(DCL)、策略生命周期、CAP/BTP 集成、基于实例的授权references/xsuaa-to-ias-migration.md— XSUAA 与 IAS 的选择指南、共存、迁移步骤、角色集合映射references/app-integration-patterns.md— Approuter + IAS、CAP + IAS/AMS、SAPUI5 前端、用于服务间通信的 mTLS/证书身份验证references/troubleshooting.md— 信任错误、令牌验证失败、受众/颁发者不匹配、SAML 与 OIDC 的常见问题
文档链接
- SAP Cloud Identity Services — 主要文档
- What Are Cloud Identity Services — 服务概览
- Operation Guide — 管理控制台指南
- Configuring Authorization Policies — AMS 管理
- Configuring Provisioning Systems — IPS 设置
- Identity Service of SAP BTP — IAS 自动集成
- CAP IAS/XSUAA Guide — CAP 框架集成
- SAP-docs GitHub Mirror — 纯 Markdown 文档