避免在信用卡支付页面上操纵URL

避免在信用卡支付页面上操纵URL,url,spring-security,payment,credit-card,Url,Spring Security,Payment,Credit Card,我的问题与安全有关。我们使用两个支付网关让我们的客户支付。我们正在发送电子邮件中的付款链接 以下是发送到客户端的链接示例: 单击后,您将进入付款屏幕,在那里您将获得此信息 这是它在付款页面上的外观。URL字符串参数是完全可编辑的,这意味着如果您在URL字符串中编辑金额、电子邮件、用户id或货币,它将反映在该页面上 这让很多事情都没有解决 如何避免编辑这些信息的可能性 任何好的建议都将不胜感激 谢谢 你用来处理付款的网站设计得很差。很难100%地保护你的链接不受URL操纵,但我可以建议你切换到

我的问题与安全有关。我们使用两个支付网关让我们的客户支付。我们正在发送电子邮件中的付款链接

以下是发送到客户端的链接示例:

单击后,您将进入付款屏幕,在那里您将获得此信息

这是它在付款页面上的外观。URL字符串参数是完全可编辑的,这意味着如果您在URL字符串中编辑金额、电子邮件、用户id或货币,它将反映在该页面上

这让很多事情都没有解决

如何避免编辑这些信息的可能性

任何好的建议都将不胜感激


谢谢

你用来处理付款的网站设计得很差。很难100%地保护你的链接不受URL操纵,但我可以建议你切换到POST表单而不是GET表单。看起来这个站点有一个SSL证书,所以这很好。另外,考虑是否有某种服务器端验证?即使只是两步验证也会让操作变得更加困难。这是一个非常糟糕的设计。询问网关是否有备用API。这样做的方式是,您使用事务详细信息向他们执行服务器端post,然后他们返回一组模糊的值以传递到重定向页面。@AlexK。你是说Paypal的支付按钮是如何实现的?我理解得对吗?我不知道贝宝是如何工作的,一个正确的机制是通过在后台交换数据来对最终用户完全隐藏所有数据。@AlexK。例如,像这样尝试单击链接,当然不填充或支付,只需查看浏览器URL栏以了解其编码方式。有些情况下,POST不能使用。