Ruby on rails 如何使用paypal/ruby on rails/active merchant创建安全的信用卡网关

Ruby on rails 如何使用paypal/ruby on rails/active merchant创建安全的信用卡网关,ruby-on-rails,security,https,paypal,Ruby On Rails,Security,Https,Paypal,我现在正在使用Active Merchant和PayPal沙盒创建一个商店。它似乎运行良好,但我认为它甚至一点也不安全。对于HTTPS以及如何实现安全连接,我真的不太了解 我目前正在会话中传递信用卡和账单信息(可能不是最聪明的主意)。我现在的代码贴在下面。我真的需要帮助,以什么方向和步骤采取,以使这一安全,可用的存储 def payment session[:billing_address] = params[:billing_address] end def summary

我现在正在使用Active Merchant和PayPal沙盒创建一个商店。它似乎运行良好,但我认为它甚至一点也不安全。对于HTTPS以及如何实现安全连接,我真的不太了解

我目前正在会话中传递信用卡和账单信息(可能不是最聪明的主意)。我现在的代码贴在下面。我真的需要帮助,以什么方向和步骤采取,以使这一安全,可用的存储

 def payment
session[:billing_address] = params[:billing_address] 
 end

 def summary
    @credit_card = params[:credit_card]
    session[:credit_card] = params[:credit_card]
    @billing_address = session[:billing_address]
    @cart = get_cart
    @purchases  = @cart.purchases
    @total = @cart.total
 end

 def finish
     @cart = get_cart
     @total = @cart.total

     credit_card = ActiveMerchant::Billing::CreditCard.new( session[:credit_card] )

     billing_address = session[:billing_address]

     flash[:notice] = credit_card.errors and return unless credit_card.valid?

     gateway = ActiveMerchant::Billing::PaypalGateway.new(:login=>$PAYPAL_LOGIN, :password=>$PAYPAL_PASSWORD)

     res = gateway.authorize(@total, credit_card, :ip=>request.remote_ip, :billing_address=>billing_address)

     if res.success?
        gateway.capture(@total, res.authorization)
        flash[:notice] = "Authorized" 
     else
        flash[:notice] = "Failure: " + res.message.to_s
     end    
  end

关于如何实现ssl,有一个很好的railscast


好的。但是在会话中将信用卡信息传递给视图可以吗。这足够安全吗。还有,如何使用https。如果您想让整个站点在https下运行,最简单的方法是使用Passenger()运行Rails应用程序,然后让Apache对您正在运行的虚拟主机()使用https,就像使用会话传递信用卡信息一样。我记得读到所有的会话信息都是加密的,在表单中使用auth密钥,但我不是这方面的权威。