Как создать безопасный шлюз кредитной карты, используя PayPal / Ruby на рельсах / активный продавец

StackOverflow https://stackoverflow.com/questions/454391

Вопрос

Сейчас я создаю магазин, используя 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
Это было полезно?

Решение

Был хороший Railscast о том, как реализовать SSL.

http://railscasts.com/episodes/143-paypal-security

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top