跳转至

安全概览

计划 移动服务 架构时的一个必要元素是提供移动用户身份到后端系统的安全传播。该产品支持一系列常用的应用程序验证协议,并将其映射到后端系统。 此外,移动服务及其相关工具还提供各种保护静态数据和动态数据的方式。

过程

多个因子可以帮助您确定移动应用程序的最佳安全配置。最重要的因子是当前或计划架构体系结构。 安全架构包括应用程序验证、传输和会话安全以及数据保护和隐私。

高级别架构选项包括:

  • 云 - 所有组件都在云基础架构上运行,无论是 SAP Business Technology Platform 单独还是与其他基础架构提供者一起。
  • 混合 - 组件在 SAP Business Technology Platform 上运行,服务在 OnPremise 架构中运行。

移动服务 支持移动应用程序,并且每个应用程序都包括这些安全属性,可以在 SAP 移动服务主控室 中进行配置:

  • 用户验证策略(也称为安全配置)定义用于验证用户的 HTTPS 协议,例如基本验证、SAML 2.0、OAuth 2.0 或 X.509 用户证书。有关支持的安全配置的详细信息,请参阅应用程序验证。

  • 一个或多个后端 HTTP 端点(也称为应用 URL)定义经过验证的移动用户身份如何中继到后端系统。

对于使用 HTTPS 基本验证标头的简单验证,移动服务支持跨域身份管理系统 (SCIM) 协议。

SAP Gateway也使用 SCIM 服务器,通常这是用于混合云 SAP 环境的最简单、最安全的验证方法。

功能范围

功能 描述
验证用户 使用常用协议(如 OAuth、SAML 或基本验证)进行验证
传播用户身份 利用基本验证、应用程序到应用程序的 SSO、转发验证、SAP 云连接器 SSO 或 OAuth2 SAML 持有者断言转发用户验证
病毒扫描 扫描有害代码和数据的入站和出站流量
基于角色的访问 通过创建角色并将其分配到用户,保护您的应用程序
用户冻结 阻止特定用户进一步使用现有应用或访问新应用
用户锁定 阻止用户使用特定时间期间内未连接到移动服务的应用
数据擦除 请求删除特定时间期间内未连接的客户端的客户端数据
自动的用户移除 强制重新注册特定时间期间内未连接的客户端
跨站点请求伪造 (CSRF) 保护 保护用户免受 CSRF 攻击
加密的客户端数据 利用密码和生物识别保护应用中的数据
多架构支持 在混合云场景中,构建纯云解决方案或连接到企业预置后端
Android SafetyNet 认证 通过检查设备的软件和硬件环境来保护服务器的 API,允许您确定服务器是否正在与正版应用和设备通信,然后您便可以决定是接受还是拒绝客户端的请求。
剪贴板保护 禁止将内容从一个应用程序复制、剪切和粘贴到另一个应用程序,同时仍然允许将内容从应用程序的一个屏幕复制、剪切和粘贴到同一应用程序的另一个屏幕(包括嵌入式浏览器上的屏幕)。

验证用户请求

对于所有需要验证的用户请求,将验证信息发送到 SAP Mobile Services。您在标头中提供的凭据取决于安全配置的类型。您还可以使用 OAuth 令牌或现有会话 cookie 来验证用户请求。

  • 基本验证

    用户名和密码对于指定的验证 URL 必须是有效的。

    • HTTP 标头名称:Authorization
    • HTTP 标头值:Basic <base64 encoded form of username:password>

验证服务器应用程序请求

可以使用多种方法验证来自客户服务器应用程序的访问请求:

  • 通过 mobile-approuter 访问移动服务,受 OAuth 安全类型保护。客户服务器应用程序必须使用由 mobile-approuter 应用程序的 xsuaa 服务实例颁发的有效用户 OAuth 令牌。

客户服务器应用程序可能会从移动客户端应用程序接收令牌。 * 通过 mobile-approuter 访问移动服务,受基本安全类型保护。客户服务器应用程序可以使用有效的基本权限标头(用户名和密码)。

  • 使用从 mobile-approuter 应用程序的服务绑定中获取的服务 URL 直接访问移动服务。可以使用服务密钥验证。请注意,目前只有推送服务支持服务密钥。

作为 SAP Business Technology Platform 服务,移动服务 提供两个会话 cooki,用于维护移动应用客户端和 移动服务 之间的会话:

  • JSESSIONID - 用于保持与 移动服务 会话的会话 cookie。

  • __vcap_id__ - 用于提供与 SAP Business Technology Platform Cloud Foundry 的关联性的会话 cookie。

通过 移动服务 访问后端服务器时,后端服务器还可能生成 cookie(会话或非会话)。移动服务 不会直接将后端服务器生成的 cookie 返回到客户端。

后端服务器会话 cookie 存储在 移动服务 中。收到同一后端服务器的后续请求后,移动服务 将加载存储的会话 cookie 并将其附加到已转发到后端服务器的请求。如果客户端在同一会话中向 移动服务 发送多个请求,后端服务器会话 cookie 将包括在所有后续请求中,即使客户端未接收到它们也是如此。

在 移动服务 中,每个后端服务器非会话 cookie 都将被包装为新 cookie。经包装的 cookie 将返回到客户端。客户端将该 cookie 值包括在后续请求中,然后 移动服务 对 cookie 进行解包,并在已转发到后端服务器的请求中附加原始 cookie。

经包装的 cookie 名称的格式为:cpmscf_proxy___SAPCPMS_<hash_value>

经包装的 cookie 的值是后端服务器返回的原始 cookie 的 Base64 编码值。

例如,以下 set-cookie 响应标头是经包装的 cookie: set-cookie: cpmscf_proxy___SAPCPMS_669C30CF0569E4856F2A88A53197E3268AC5A985=eyJuYW1lIjoiQkFDS0VORF9DT09LSUUiLCJ2YWx1ZSI6IjEyMzQ1Njc4OSIsInBhdGgiOiIvIiwiZG9tYWluIjoicHJveHltb2NrLW1vYmlsZWRldi1wcm92aWRlci1pbnQtdGVzdC5jZmFwcHMuc2FwLmhhbmEub25kZW1hbmQuY29tIn0; Expires=Thu, 20 Nov 2025 12:06:04 GMT; Max-Age=99999999; Domain=test-app.cfapps.sap.hana.ondemand.com; Path=/

相关信息


最后更新: July 8, 2025