我有这个主意,但是我不确定它是否符合PCI。我是PCI合规领域的新手,很想知道这种情况是否违反PCI。
因此,让我们来设置场景。公司A符合PCI标准,并且在https上具有Web服务,从而公开了围绕付款处理的功能。 B公司不符合规定,但其网站是安全的。
这是该场景的步骤。
最佳答案
Pamphlet on PCI DSS所有的PCI Standards
PCI DSS(支付卡行业数据安全标准)具有“作用域”的概念-确定哪些系统属于PCI范畴。
您是商人还是软件供应商?
如果PAN(主帐号)(长信用卡号)从未发送到您的网站,则您的网站通常不在PCI范围内。 -假设您是商人。如果您是软件供应商,则您的软件可能属于PA-DSS的范围(请参见下文)。
PAN正在迁移服务器
以前的想法是将PAN发送到您的网站(通过浏览器表单提交),然后您的网站会转过来并将其发送到付款网关(例如Authorize.Net)。在这种情况下,PAN永远不会存储在您的服务器上,但是会传输您的服务器。过去,这意味着您的商家系统不会存储在PAN中,因此不会在PCI DSS范围内。但是那些日子很快就要过去了,或者已经消失了。 (这取决于您的收单方/商户帐户供应商对PCI的积极程度。)
控制网页由于网页不将任何PAN传输到服务器,因此您不在PCI范围内。但是,您怎么知道有人没有更改您的网页以将PAN发送回您的服务器(或使用JSONP技术的其他地方)呢?答案是,您需要确保自己没有人会篡改您的付款表单页面。
您如何确保自己取决于您自己。您可以使用PCI技术或其他技术。这是内部计算机安全和审核的问题。
付款应用程序数据安全标准(PA-DSS)如果您将SW销售给商家,则可能在PA-DSS标准范围之内。参见standard。
PCI是政治性的,而不是技术性的请记住,PCI作用域取决于您。如果您足够大,那么您还需要与QSA(合格的安全评估员)合作,后者将审核并确定您的PCI合规性和范围界定计划。
QSA可能会说,由于您控制网页,因此它必须在PCI下,因为它可能被某人破坏。但这将是一个棘手的论点。毕竟,您可以说任何互联网商人的每个网页都必须在PCI下,因为任何网页都可能被损坏,要求人们提供PAN,然后对其进行不良处理。另一方面,这恰恰是Visa用于增加公司特许人的PCI范围的一种论点。 Article。
PCI认证不是借口另外请注意,即使您有闯入行为,即使您符合PCI规范,卡协会也保留将您踢出市场的权利。因此,您要确保自己比目标上的其他任何人都坚强得多。
已添加:有关作用域的更多信息从上面可以看出,一个关键问题是哪些系统在PCI范围之内或之外。 PCI委员会现在有一个特殊利益小组(SIG),负责研究PCI范围内和范围之外的整个问题。我的猜测是,他们希望信封增加而不是缩小。
已添加:它在您和律师之间您的方案已开始在客户的浏览器上完成PAN处理。 PAN永远不会到达您的系统,甚至一瞬间也不会到达您的系统。因此,我的解释是您不在Merchant PCI DSS范围内。但是,您是签署PCI合规性声明的人,这是您与收单方之间的一项契约(Contract)。因此,由您和您的律师来解释PCI DSS标准,而不是我。
底线永远不要在系统上存储PAN数据。您甚至都不应该让它传输系统。 Authorize.Net和Braintree推出的新的Payment Gateway协议(protocol)启用了非传输技术。根据您的信用卡交易量,PCI合规性从自我管理的 list 到庞大的项目不等。
有关更多PCI war 的故事,请查看StorefrontBacktalk博客及其PCI coverage。
关于javascript - PCI合规性和Ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4219636/
rails中是否有任何规定允许站点的所有AJAXPOST请求在没有authenticity_token的情况下通过?我有一个调用Controller方法的JqueryPOSTajax调用,但我没有在其中放置任何真实性代码,但调用成功。我的ApplicationController确实有'request_forgery_protection'并且我已经改变了config.action_controller.consider_all_requests_local在我的environments/development.rb中为false我还搜索了我的代码以确保我没有重载ajaxSend来发送
我有一个电子邮件表格。但是我正在制作一个测试电子邮件表单,用户可以在其中添加一个唯一的电子邮件,并让电子邮件测试将其发送到该特定电子邮件。为了简单起见,我决定让测试电子邮件通过ajax执行,并将整个内容粘贴到另一个电子邮件表单中。我不知道如何将变量从我的HAML发送到我的Controllernew.html.haml-form_tagadmin_email_blast_pathdoSubject%br=text_field_tag'subject',:class=>"mass_email_subject"%brBody%br=text_area_tag'message','',:nam
我遇到了一个非常奇怪的问题,我很难解决。在我看来,我有一个与data-remote="true"和data-method="delete"的链接。当我单击该链接时,我可以看到对我的Rails服务器的DELETE请求。返回的JS代码会更改此链接的属性,其中包括href和data-method。再次单击此链接后,我的服务器收到了对新href的请求,但使用的是旧的data-method,即使我已将其从DELETE到POST(它仍然发送一个DELETE请求)。但是,如果我刷新页面,HTML与"new"HTML相同(随返回的JS发生变化),但它实际上发送了正确的请求类型。这就是这个问题令我困惑的
我有这个:AccountSummary我想单击该链接,但在使用link_to时出现错误。我试过:bot.click(page.link_with(:href=>/menu_home/))bot.click(page.link_with(:class=>'top_level_active'))bot.click(page.link_with(:href=>/AccountSummary/))我得到的错误是:NoMethodError:nil:NilClass的未定义方法“[]” 最佳答案 那是一个javascript链接。Mechan
我看到有关未找到文件min.map的错误消息:GETjQuery'sjquery-1.10.2.min.mapistriggeringa404(NotFound)截图这是从哪里来的? 最佳答案 如果ChromeDevTools报告.map文件的404(可能是jquery-1.10.2.min.map、jquery.min.map或jquery-2.0.3.min.map,但任何事情都可能发生)首先要知道的是,这仅在使用DevTools时才会请求。您的用户不会遇到此404。现在您可以修复此问题或禁用sourcemap功能。修复:获取文
我有一个用Rails3编写的站点。我的帖子模型有一个名为“内容”的文本列。在帖子面板中,html表单使用tinymce将“content”列设置为textarea字段。在首页,因为使用了tinymce,post.html.erb的代码需要用这样的原始方法来实现。.好的,现在如果我关闭浏览器javascript,这个文本区域可以在没有tinymce的情况下输入,也许用户会输入任何xss,比如alert('xss');.我的前台会显示那个警告框。我尝试sanitize(@post.content)在posts_controller中,但sanitize方法将相互过滤tinymce样式。例如
出于某种原因,我必须为Firefox禁用javascript(手动,我们按照提到的步骤执行http://support.mozilla.org/en-US/kb/javascript-settings-for-interactive-web-pages#w_enabling-and-disabling-javascript)。使用Ruby的SeleniumWebDriver如何实现这一点? 最佳答案 是的,这是可能的。而是另一种方式。您首先需要查看链接Selenium::WebDriver::Firefox::Profile#[]=
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。有没有学习Ajax(jQuery)和Rails3的好资源?
我是Ruby和Watir-Webdriver的新手。我有一套用VBScript编写的站点自动化程序,我想将其转换为Ruby/Watir,因为我现在必须支持Firefox。我发现我真的很喜欢Ruby,而且我正在研究Watir,但我已经花了一周时间试图让Webdriver显示我的登录屏幕。该站点以带有“我同意”区域的“警告屏幕”开头。用户点击我同意并显示登录屏幕。我需要单击该区域以显示登录屏幕(这是同一页面,实际上是一个表单,只是隐藏了)。我整天都在用VBScript这样做:objExplorer.Document.GetElementsByTagName("area")(0).click
我正在使用一个用RubyonRails构建的应用程序,目前错误处理非常差。如果通过ajax执行Controller方法,并且该方法导致500(或404或任何其他响应),则呈现500.html页面并将其作为AJAX请求的结果返回。显然,javascript不知道如何处理该HTML,网页看起来只是在等待响应。在AJAX调用期间发生错误时,rails是否有一种简单的方法来呈现error.rjs模板? 最佳答案 您可以在Controller的rescue_action或rescue_action_in_public方法中使用respond_