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

Я сейчас создаю магазин, используя Active Merchant и PayPal sandbox. Кажется, что он работает нормально, но я не думаю, что это даже удаленно безопасно. Я не слишком много знаю о 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

1 Ответ

7 голосов
/ 18 января 2009

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...