繁体   English   中英

现在不推荐使用TLS 1.0和1.1更新Authorize.net

[英]Updating Authorize.net since TLS 1.0 and 1.1 is now deprecated

背景

我已经接管了一个运行非常旧版本的PHP的网站的更新。 将网站从5.3移动到7.1之后,我发现authorize.net不断发送电子邮件说明,

我们将不再允许TLS 1.0和1.1

它声明它将在未来几周内完全停止工作,我不知道如何知道该网站是否使用了这个弃用的TLS版本。 我假设我应该能够通过应用程序中的authorize.net类来了解。 但代码不以任何方式引用TLS 我还假设我可以通过正在使用的端点来了解,但我还没有看到任何关于正在使用的TLS版本与所使用的端点有关的内容。

有没有人知道一种确定的火灾方式来测试并知道我们是否确实在我们的网站中使用旧版本的TLS? 或者,如果可能的话,我们在网站中使用了一个非常旧版本的authorize.net,它完全不依赖于TLS?

示例代码

这些是应用程序中使用的一些类的开头。 也许有人通过您正在使用的authorize.net api版本了解了您正在使用的TLS版本。

class.aim.cc.license.php

<?php
/*********************/
/*                   */
/*  Dezend for PHP5  */
/*         NWS       */
/*      Nulled.WS    */
/*                   */
/*********************/

class authnetcc
{

    var $fields = array( );
    var $license_key;
    var $gateway_url = "https://secure.authorize.net/gateway/transact.dll";
    var $proxy_url;
    var $proxy_port;
    var $secure_source = false;
    var $error_code;
    var $error_message;
    var $error_field;
   ...

AIM.class.php

<?php
/**
* CLASS AIM
*
*
*/
class AIM {
    // login credentials that Authorize.net uses for verification
    var $login_id = '';
    var $trans_key = '';

    // server
    var $server = '';

    // credit card information
    var $cc_name = '';
    var $cc_number = '';
    var $cc_month = '';
    var $cc_year = '';
    var $cc_code = '';
    var $cc_type = '';

    // error stack array
    var $errorStack = array();

    // modes
    var $testMode = false;
    var $debugMode = false;
    var $errorRetries = 2;

    // buyer information
    var $buyer = array();

    // response information
    var $status = '';
    var $subcode = '';
    var $response_code = '';
    var $response_text = '';
    var $approval_code = '';
    var $md5hash = '';
    var $code = '';
    var $remaining = array();

    // constructor
    function __construct($login_id, $trans_key) {
        $this->login_id = $login_id;
        $this->trans_key = $trans_key;

        $this->setTesting(0);
    }
    ...

不是编码问题。 Authorize.Net已将这些电子邮件发送超过一年 与所有其他符合PCI标准的支付网关一样,它们需要使用TLS 1.2或更高版本才能保持PCI兼容,这意味着它们的所有客户也必须兼容。 这是您在服务器上配置的内容,而不是PHP代码中配置的内容。 如果您使用的是共享Web托管服务提供商,则需要与他们联系并要求将其移至支持TLS 1.2的服务器或查找支持TLS 1.2的新主机。

仅供参考,您还应该使用新的Akamai URL作为其API,这也必​​须更新。 正确使用的URL是https://api2.authorize.net/xml/v1/request.api

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM