Как создать безопасный шлюз кредитной карты, используя PayPal / Ruby на рельсах / активный продавец
-
19-08-2019 - |
Вопрос
Сейчас я создаю магазин, используя 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.
Не связан с StackOverflow