我对条带流的自定义是否安全?

Is my customization to the stripe flow secure?

我正在努力将 Stripe 与我的 iOS Swift 应用连接起来以处理付款。下面是我找到的流程图,其中包含将 Stripe 与 iOS 应用程序集成的常规流程图。这里是: 我想知道我是否可以将此流程图更改为以下步骤:

  1. [从 phone 到网络服务器] 发送包含预订信息的请求令牌。
  2. [从网络服务器到 Stripe] 发送存储在网络服务器上的信用卡数据。
  3. [从 Stripe 到 Web 服务器]Return 令牌。
  4. [从 Web 服务器到 Stripe] 发回令牌,确认交易。
  5. [从 Stripe 到 Web 服务器] 事务响应。
  6. [从 Web 服务器到 phone] 事务响应。

显然,主要区别在于首先将带有预订请求信息的令牌发送到 Web 服务器,而不是将信用卡数据发送到 stripe。这避免了必须不断地向用户询问他们的信用卡信息,因为该信息存储在 Web 服务器上。这看起来安全吗?

你的提议是个坏主意,它没有抓住 Stripe 的重点。

如果您在服务器上存储信用卡数据,则必须符合 PCI 标准。 (这实际上也可能违反 Stripe 的条款和条件;我不确定,但你应该检查并询问律师。)它也会让你面临很多潜在的问题。想象一下,如果有一天您的服务器被黑了。如果您身处诉讼地点或拥有大量隐私法律法规的地点(例如欧洲或 U.S),如果卡信息被泄露,您的生活将会 被盗比仅令牌被盗。

不存储卡数据,而是使用 Stripe API 生成客户并将卡与该客户相关联。您存储那些 API 调用生成的 ID,而不是原始卡数据。然后,使用 Stripe 生成的客户 ID,您可以 运行 对该卡收费,而无需自己存储卡数据。