Платежные системы - Что мне нужно знать, если я хочу принимать кредитные карты на моем сайте? [закрыто]


258

Этот вопрос говорит о разных платежных процессорах и их стоимости, но я ищу ответ на вопрос, что мне нужно сделать, если я хочу принимать платежи по кредитным картам?

Предположим, мне нужно хранить номера кредитных карт для клиентов, так что очевидное решение полагаться на процессор кредитных карт для выполнения тяжелой работы недоступно.

PCI Data Security , который, очевидно, является стандартом для хранения информации о кредитных картах, имеет множество общих требований, но как их реализовать ?

А как насчет поставщиков, таких как Visa , у которых есть свои лучшие практики?

Нужно ли иметь брелок для доступа к машине? Как насчет физической защиты от хакеров в здании? Или даже что, если кто-то получил в свои руки файлы резервных копий с файлами данных сервера sql?

Как насчет резервного копирования? Существуют ли другие физические копии этих данных?

Совет: если вы получаете учетную запись продавца, вам следует договориться о том, что они взимают с вас плату «interchange-plus» вместо многоуровневой цены. При многоуровневом ценообразовании они будут взимать с вас различные тарифы в зависимости от того, какой тип Visa / MC используется, т.е. они берут с вас больше за карты с большими наградами. Interchange plus выставление счетов означает, что вы платите процессору только то, что Visa / MC берет с них, плюс фиксированная плата. (Amex и Discover взимают свои собственные тарифы напрямую с продавцами, поэтому это не относится к этим картам. Вы найдете, что ставки Amex находятся в диапазоне 3%, а Discover - всего 1%. Visa / MC находится в диапазон 2%). Этот сервис должен вести переговоры за вас (я не использовал его, это не реклама, и я не связан с сайтом,

Этот пост в блоге дает полное изложение обращения с кредитными картами (специально для Великобритании).


Возможно, я неправильно сформулировал вопрос, но я ищу такие советы:

  1. Используйте SecurID или eToken, чтобы добавить дополнительный слой паролей к физическому блоку.
  2. Убедитесь, что коробка находится в комнате с физическим замком или кодовой комбинацией.

1
Это было осуждено PA-DSS 2.0.

Ответы:


236

Я прошел этот процесс не так давно в компании, на которую работал, и я планирую в ближайшее время снова пройти через это с моим собственным бизнесом. Если у вас есть некоторые технические знания по сети, это действительно не так уж плохо. В противном случае вам будет выгоднее использовать Paypal или другой тип сервиса.

Процесс начинается с настройки торгового счета и привязки к вашему банковскому счету. Вы можете проверить с вашим банком, потому что многие крупные банки предоставляют торговые услуги. Возможно, вы сможете получать предложения, потому что вы уже являетесь их клиентом, но если нет, то вы можете делать покупки по всему. Если вы планируете принимать Discover или American Express, они будут разделены, потому что они предоставляют услуги продавца для своих карт, не обходясь без этого. Есть и другие особые случаи. Это процесс подачи заявки, будьте готовы.

Затем вы захотите приобрести SSL-сертификат, который вы можете использовать для защиты ваших сообщений, когда информация о кредитной карте передается по общедоступным сетям. Есть много продавцов, но мое правило - выбрать того, кто является торговой маркой. Чем лучше они известны, тем лучше ваш клиент, вероятно, слышал о них.

Затем вы захотите найти платежный шлюз для использования с вашим сайтом. Хотя это может быть необязательным в зависимости от вашего роста, но в большинстве случаев это не так. Вам понадобится один. Поставщики платежного шлюза предоставляют способ связи с API интернет-шлюза, с которым вы будете общаться. Большинство поставщиков обеспечивают связь HTTP или TCP / IP со своим API. Они будут обрабатывать информацию о кредитной карте от вашего имени. Двумя поставщиками являются Authorize.Net и PayFlow Pro . Ссылка, которую я предоставляю ниже, содержит дополнительную информацию о других поставщиках.

Что теперь? Для начала есть рекомендации о том, что ваше приложение должно придерживаться для передачи транзакций. В процессе настройки всего, кто-то будет смотреть на ваш сайт или приложение и удостовериться, что вы придерживаетесь руководящих принципов, таких как использование SSL, и что у вас есть условия использования и документация по политике относительно того, какая информация используется вами, которую использует пользователь для. Не кради это с другого сайта. Придумайте свое, нанимайте адвоката, если вам нужно. Большинство этих вещей подпадает под ссылку PCI Data Security, предоставленную Майклом в его вопросе.

Если вы планируете хранить номера кредитных карт, лучше подготовиться к внутренним мерам безопасности для защиты информации. Убедитесь, что сервер, на котором хранится информация, доступен только тем пользователям, которым необходим доступ. Как и любая хорошая безопасность, вы делаете вещи в слоях. Чем больше слоев вы положите на место, тем лучше. Если вы хотите, вы можете использовать безопасность типа брелка, как SecureID или eTokenчтобы защитить комнату, в которой находится сервер. Если вы не можете позволить себе маршрут брелка, используйте метод двух ключей. Позвольте человеку, имеющему доступ в комнату, подписать ключ, который идет вместе с ключом, который он уже носит. Им понадобятся оба ключа для доступа в комнату. Далее вы защищаете связь с сервером с помощью политик. Моя политика заключается в том, что единственное, что связывается с ним по сети - это приложение, и эта информация зашифрована. Сервер не должен быть доступен в любой другой форме. Для резервного копирования я использую truecryptдля шифрования томов, на которые будут сохранены резервные копии. Каждый раз, когда данные удаляются или сохраняются где-то еще, вы снова используете truecrypt для шифрования тома, на котором находятся данные. В основном, где бы ни находились данные, они должны быть зашифрованы. Убедитесь, что все процессы для получения данных содержат контрольные записи. используйте журналы для доступа к серверной комнате, используйте камеры, если можете, и т. д. ... Другая мера - зашифровать информацию о кредитной карте в базе данных. Это гарантирует, что данные могут быть просмотрены только в вашем приложении, где вы можете установить, кто видит информацию.

Я использую pfsense для своего брандмауэра. Я запускаю его с компактной флэш-карты и у меня есть два сервера. Один для аварийного переключения для резервирования.

Я нашел эту запись в блоге Рика Стрэла, которая очень помогла понять, как делать электронную коммерцию и что нужно для приема кредитных карт через веб-приложение.

Ну, это оказалось длинным ответом. Я надеюсь, что эти советы помогут.


13
Идеальный ответ. Я надеюсь, что другие добавляют к этому.
Майкл Прайор

3
Один из лучших, которые я видел .... +1
Фредерик Морин

2
@ Майкл Прайор: Если это так прекрасно, зачем другим нужно добавлять к нему? Да ???
пончик

17
@donut: потому что время идет, а ответы редко остаются статичными.
анонимный тип

22

Задайте себе следующий вопрос: почему вы хотите хранить номера кредитных карт в первую очередь ? Скорее всего, вы этого не сделаете. В самом деле, если вы делаете их хранения и управления иметь один украден, вы могли бы смотреть на какой - то серьезной ответственности.

Я написал приложение, которое хранит номера кредитных карт (поскольку транзакции обрабатывались в автономном режиме). Вот хороший способ сделать это:

  • Получите сертификат SSL!
  • Создайте форму, чтобы получить CC # от пользователя.
  • Зашифруйте часть (не все!) CC # и сохраните ее в своей базе данных. (Я бы предложил средние 8 цифр.) Используйте надежный метод шифрования и секретный ключ.
  • Отправьте остаток CC # тому, кто обрабатывает ваши транзакции (возможно, вам самим), с идентификатором лица, которое нужно обработать.
  • Когда вы войдете позже, вы введете идентификатор и часть CC #, отправленную по почте. Ваша система может расшифровать другую часть и рекомбинировать, чтобы получить полный номер, чтобы вы могли обработать транзакцию.
  • Наконец, удалите онлайн-запись. Моим параноидальным решением было перезаписать запись случайными данными перед удалением, чтобы исключить возможность восстановления.

Это звучит как большая работа, но, никогда нигде не записывая полный CC #, вы очень усложняете хакеру поиск чего-либо ценного на вашем веб-сервере. Поверьте мне, это стоит душевного спокойствия.


1
Проверьте комментарий Майкл оставил для Сэма Уэссела ниже.
Дейл Раган

17

Документ PCI 1.2 только что вышел. Это дает процесс для того, как реализовать соответствие PCI наряду с требованиями. Вы можете найти полный документ здесь:

https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml

Короче говоря, создайте отдельный сегмент сети для тех серверов, которые будут выделены для хранения информации CC (обычно это сервер (ы) БД). Максимально изолируйте данные и обеспечьте наличие минимального доступа, необходимого для доступа к данным. Зашифруйте его, когда сохраните. Никогда не храните PAN. Очистите старые данные и поверните ключи шифрования.

Пример не делает:

  • Не позволяйте той же учетной записи, которая может искать общую информацию в базе данных, искать информацию CC.
  • Не храните базу данных CC на том же физическом сервере, что и веб-сервер.
  • Не допускайте внешнего (интернет) трафика в ваш сегмент сети базы данных CC.

Пример Dos:

  • Используйте отдельную учетную запись базы данных для запроса информации CC.
  • Запретить весь трафик на сервер базы данных CC через межсетевой экран / списки доступа
  • Ограничить доступ к серверу CC ограниченному кругу авторизованных пользователей.

5
Обратите внимание, что требования PCI-DSS применяются ко всем системам, через которые проходят данные карты, а не только к месту их хранения . Поэтому те же самые ограничения и требования безопасности также применяются к веб-серверу / серверу приложений (и сайтам, принадлежащим всем другим vhosts на этих машинах) и всем остальным хостам в том же сегменте сети, что и эти машины.
Cheekysoft

И если вы принимаете номера кредитных карт по телефону или на бумаге и вводите их на своем настольном компьютере, то там действуют те же ограничения.
Stobor

15

Я хотел бы добавить нетехнический комментарий, о котором вы можете подумать

Некоторые из моих клиентов управляют сайтами электронной коммерции, в том числе пара, у которых есть умеренно большие магазины. Оба из них, хотя они, конечно, могли бы реализовать платежный шлюз, выбирают не слишком, они берут номер cc, временно хранят его в зашифрованном виде в сети и обрабатывают его вручную.

Они делают это из-за высокого уровня мошенничества, а ручная обработка позволяет им пройти дополнительные проверки перед выполнением заказа. Мне сказали, что они отклоняют чуть более 20% всех своих транзакций - обработка вручную, безусловно, занимает дополнительное время, и в одном случае у них есть сотрудник, который не выполняет ничего, кроме обработки транзакций, но стоимость выплаты его зарплаты, очевидно, меньше, чем их воздействие, если они только что передали номера cc через онлайн-шлюз.

Оба этих клиента поставляют физические товары с ценой перепродажи, поэтому они особенно уязвимы и для таких предметов, как программное обеспечение, когда мошенническая продажа не приведет к какой-либо реальной потере, ваш пробег может измениться, но стоит учитывать технические аспекты интернет-шлюза если это действительно то, чего вы хотите.

РЕДАКТИРОВАТЬ: И с момента создания этого ответа я хотел бы добавить предостерегающий рассказ и сказать, что время прошло, когда это была хорошая идея.

Зачем? Потому что я знаю другого контакта, который использовал подобный подход. Данные карты были сохранены в зашифрованном виде, доступ к веб-сайту осуществлялся по протоколу SSL, а номера были удалены сразу после обработки. Как вы думаете, безопасно?

Ни один компьютер в их сети не заразился трояном регистрации ключей. В результате они были определены как источник нескольких подделок кредитных карт и, как следствие, были оштрафованы на крупный штраф.

В результате я никогда не советую никому обращаться с кредитными картами самостоятельно. Платежные шлюзы с тех пор стали намного более конкурентоспособными и экономически эффективными, а меры по борьбе с мошенничеством улучшились. Риск теперь больше не стоит.

Я мог бы удалить этот ответ, но я думаю, что лучше оставить отредактированный как предостерегающий рассказ.


1
Это действительно полезный комментарий, который я никогда не рассматривал. Спасибо
0plus1

8

Имейте в виду, что использование SSL для отправки номера карты из браузера на сервер - это все равно, что закрывать номер кредитной карты большим пальцем при передаче карты кассиру в ресторане: большой палец (SSL) не позволяет другим клиентам в ресторане (Сеть) не видит карту, но как только карта находится в руках кассира (веб-сервера), карта больше не защищена обменом SSL, и кассир может делать с этой картой все что угодно. Доступ к сохраненному номеру карты может быть остановлен только службой безопасности на веб-сервере. То есть большинство краж карт в сети не совершаются во время передачи, они совершаются путем взлома плохой безопасности сервера и кражи баз данных.


Вот где приходит PCI DSS. То есть, не сохраняя полную PAN на сервере.
Мартин Кларк

5

Зачем беспокоиться о соответствии PCI? В лучшем случае вы будете экономить на процентах от платы за обработку. Это один из тех случаев, когда вы должны быть уверены в том, что именно этим вы хотите заниматься, уделяя время как на этапе разработки, так и с течением времени в соответствии с последними требованиями.

В нашем случае наиболее разумно было использовать шлюз, сохраняющий подписку, и связать его с торговой учетной записью. Абонентский шлюз позволяет пропустить все требования PCI и ничего не делать, кроме как правильно обработать транзакцию.

Мы используем TrustCommerce в качестве нашего шлюза и довольны их услугами / ценами. У них есть код для нескольких языков, что делает интеграцию довольно простой.


5
Одной из причин было бы избежать удержания заложником платежного шлюза, когда, если вы хотите переключиться на другой шлюз, предыдущий шлюз, вероятно, не предоставит вам доступ ко всей информации CC, которую они имеют о ваших клиентах, что заставит вас спросить клиенты для CC подробно о покупке с новым платежным шлюзом. Переходите к шагу 1. :)
Забба

3

Обязательно разберитесь с дополнительной работой и бюджетом, необходимыми для PCI. PCI может потребовать огромных сборов внешнего аудита и внутренних усилий / поддержки. Также следует помнить о штрафах / штрафах, которые могут быть наложены на вас в одностороннем порядке, что зачастую чрезвычайно непропорционально масштабу «правонарушения».


2

Там много всего процесса. Самый простой способ сделать это - воспользоваться услугами, аналогичными PayPal, чтобы вы никогда не обрабатывали данные кредитных карт. Кроме того, есть довольно много вещей, которые нужно пройти, чтобы получить разрешение на предоставление услуг кредитной карты на вашем сайте. Вам, вероятно, следует поговорить с вашим банком и людьми, которые выдают ваш торговый идентификатор, чтобы помочь вам в настройке процесса.


2

Как уже упоминали другие, самый простой путь в эту область - использование Paypal , Google Checkout или Nochex . Однако, если вы собираетесь заниматься значительным бизнесом, возможно, вы захотите поискать «обновление» до сервисов интеграции сайтов более высокого уровня, таких как WorldPay , NetBanx (Великобритания) или Neteller (США) . Все эти сервисы достаточно просты в настройке. И я знаю, что Netbanx предлагает удобную интеграцию в некоторые готовые решения, такие как Intershop(потому что я написал некоторые из них). Кроме того, вы смотрите на прямую интеграцию с банковскими системами (и их системами APAX), но это сложно, и на этом этапе вам также необходимо доказать компаниям, выпускающим кредитные карты, что вы обрабатываете номера кредитных карт надежно (вероятно, не стоит задумываться о том, Вы не берете сумму в $ 100 тыс. в месяц).

Работая с первого до последнего, затраты / выгоды заключаются в том, что ранние варианты гораздо проще (быстрее / дешевле) настроить, поэтому вы платите довольно высокую плату за обработку каждой транзакции. последующие установки намного дороже, но в конечном итоге вы платите меньше.

Другое преимущество большинства не предназначенных для этого решений заключается в том, что вам не нужно защищать зашифрованные номера кредитных карт. Это чужая проблема :-)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.