我非常了解PCI合规性,因此在结帐过程中不需要对公司数据库中的CC号码(尤其是CVV号码)进行存储。 但是,我希望在处理敏感的消费者信息时尽可能地安全,并且好奇如何避免在页面之间传递CC号码,而不是尽可能使用SESSIONvariables。 我的网站是这样build立的: 步骤1)从客户收集信用卡信息 – 当客户提交时,首先通过JSvalidation运行信息,然后运行PHPvalidation,如果全部通过,则转到步骤2。 步骤2)信息显示在顾客的评论页面上,以确保他们即将到来的交易的细节被显示。 本页只显示CC的前6位和后4位,但是卡的types和过期date都是完整的。 如果他点击继续, 步骤3)将信息发送到另一个运行最后一次validation的php页面,通过安全支付网关发送信息,string返回细节。 步骤4)如果一切顺利,消费者信息(个人,而非CC)被存储在数据库中,并被redirect到完成页面。 如果有什么不好,他会被告知并重新回到CC处理页面再试一次(最多3次)。 有什么build议么? 编辑 在这个问题上,我收到了很多很好的回应 – 大多数人似乎同意以下几点: 在validation运行后采取POSTvariables encryptionccnum和cvv(不知道你是否被允许在数据库中存储cvv) 存储在临时数据库中 在“审查”页面确定后立即访问数据库 从数据库中解密详细信息 发送信息给处理器 接受回应 终止数据库 我认为这是有道理的。 有没有人有encryption/解密的良好方法,以及创build临时数据库信息的最佳方式,在稍后调用时会自动删除? 我在PHP和MySQL数据库编程 编辑#2 我遇到了Packet General,它似乎是一个理想的解决scheme,但真的不想为了完成这个目标而支付另一个软件许可证。 http://www.packetgeneral.com/pcigeneralformysql.html 编辑#3 – 示例代码 我现在已经发布了一些示例代码,我试图理解本文提到的encryption/解密/密钥和存储。 希望已经有帮助的贡献者可以validation,其他人也可以使用类似的function。 为了长度的缘故,我不会进入用于实际CC号本身的validation方法。 表单input <form action="<?php $_SERVER['PHP_SELF']; ?>" method="POST"> <input type="text" name="CC" /> <input type="text" name="CVV" /> <input type="text" name="CardType" […]
我正在使用MySQL sqlalchemy ,并执行SQLexpression式的查询。 当执行一些查询,然后超时。 我find了一个答案,但我不清楚。 请,任何人都可以帮助我? TimeoutError:QueuePool限制大小5溢出10到达,连接超时,超时30
Rails 3.1build议运行 rails generate session_migration 然而,这会产生完全相同的迁移 rake db:sessions:create 但没有任何命令被我的安装程序使用rails 4.0识别 错误是: 找不到生成器session_migration。 和 不知道如何build立任务'db:sessions:create' 分别。 我跑了: gem install'activerecord-session_store' 如何使其工作,以便我可以存储大于4kb的购物车?
我发现这个线程描述了一个非常有趣的OnSessionStart事件,但是我无法把它(不pipe它的意思)“钩”到我的global.asax.cs中。 在search网页时我也没有成功。 所以有人请向我解释,如果事件真的存在于asp.net mvc中,我在哪里得到它(inheritance或从哪里),我把它放在哪里?
PHP中的Session和Cookies有什么区别?
我想访问会话对象,而不传递给我的静态帮助函数。 这样我就可以自动保存和加载会话对象中的东西,并且最小的额外的绒毛。 是否有可能/如何从静态类中的静态方法访问会话对象?
我需要给我的用户一个Web界面来改变会话超时间隔。 因此,不同的Web应用程序的安装将能够有不同的会话超时,但他们的web.xml不能不同。 有没有办法以编程方式设置会话超时,以便我可以使用,比如ServletContextListener.contextInitialized()读取configuration的时间间隔,并在应用程序启动时进行设置? 非常感谢。
我有一个ASP.net应用程序使用cookie来存储用户select的语言。 除了当我在本地主机上时,一切正常。 replace127.0.0.1的本地主机再次工作…为什么? 我看到有意限制文件:/ /但我实际上找不到任何有关限制本地主机的参考。 我无法真正理解的是,为什么ASP.net会话(ASP.NET_SessionId)和ASP.net窗体身份validationCookie(.FSAUTHSSO)正确地为本地域设置,但我的cookies不是…为什么?! 我已经GOOGLE了很多,没有任何工作: 设置Chrome的命令行标志–enable-file-cookies [DO NOT WORK] 将cookie设置为HttpOnly [不重要] 将会话更改为会话或date… [不重要] 更改Cookiepath为根(/)或任何其他[不重要] 那么重要的是什么? 🙂 为什么可以设置ASP.net cookies而我的不是? 有什么不同? 最后一件事,只是提到这也发生在IE浏览器,但工作正常的FF。 谢谢! 亚历克斯
我是NHibernate的新手,在过早closures会话时遇到了一些问题。 我已经通过重用会话而不是每个事务打开一个会话来解决这个问题。 不过,我的印象是,每次需要时打开会话是会话生命周期pipe理的推荐方法。 没有? 所以; 推荐的处理会话的方式是什么? 他们的一生应该是什么? 一个会话pr交易? 一个单独的会话来处理一切? 或者是什么? 编辑: 请注意,我的应用程序体系结构是与服务器端服务进行通信的桌面应用程序,这是所有数据库使用NHibernate + Fluent处理的内容。 (如果这有什么区别…)
为了避免locking,在进一步处理表格之前需要执行哪些语句列表? 我不是在谈论具有多个语句和事务完整性的完整事务(而是指的是单个语句)。 我知道插入应该承诺,但截断有一个自动提交。 什么是需要承诺的完整的陈述清单? 需要承诺(首发名单): UPDATE INSERT DELETE