首页 > 解决方案 > Stripe - 所有这些不同的键是什么?

问题描述

所有这些键是什么?它们是如何使用的?

Dashboard

前 3 个在 中可见Dashboard

所有这些密钥都在哪里使用?


我通过反复试验发现了什么:(我不知道这在生产中会是什么样子)

在 CLI 运行时解码事件:


Webhook.constructEvent(rawRequestBody, signature, WEBHOOK_SIGNING_SECRET)

全局设置 API 密钥

Stripe.apiKey = SECRET_KEY

我的问题是:

标签: stripe-payments

解决方案


  • 客户端代码(例如 Stripe.js)使用可发布密钥来访问公共 API,主要用于标记卡信息。这可以防止您接触原始卡信息并承担重大的PCI 合规性负担
  • 密钥是您使用服务器端对 Stripe API 进行 API 调用的 API 密钥。秘密 API 密钥必须保持安全,并且应该被视为您帐户的密码,因为它们可以执行许多关键功能,例如创建付款、发放退款等。
  • 受限密钥类似于秘密密钥,但它们减少了您在 Stripe Dashboard 中定义的权限。
  • 您的 Webhook 端点代码使用Webhook 签名机密验证发送到该代码的事件实际上来自 Stripe,而不是其他人伪装成 Stripe

您可以在Stripe 的 API 密钥文档中阅读更多关于可发布、秘密和受限 API 密钥的信息。

由于没有Stripe CLI在生产中运行,是否webhook_signing_secretsecret_key?(事件不通过 转发CLI

不,它们完全不同,用于不同的事情。

为什么不能Stripe CLI创建一个带有签名密码编码的事件?它已经配置好了publishable_keysecret_keys为什么还需要一个新的呢?

在事件中包含 webhook 签名秘密会破坏目的,阻止安全措施发挥作用,并且不能代表事情在生产中的工作方式。


推荐阅读