バックグラウンド
この点を部分的にカバーしているスタックオーバーフローに関するいくつかの投稿を見てきましたが、包括的な質問/回答を提供する投稿をまだ見つけていません。
POS システムの開発者として、PCI DSS には私が興味を持っている 2 つのコンポーネントがあります。
- 私が開発したソフトウェアに関するPA DSS (Payment Application)
- ソフトウェアを使用するすべてのクライアントに関する PCI DSS (加盟店)
PA DSS は、最も率直に次のように指摘しているようです。
「9.1 支払いアプリケーションは、データベース サーバーと Web サーバーが同じサーバー上にある必要がないように、またデータベース サーバーが Web サーバーとの DMZ にある必要がないように開発する必要があります」
テスト手順:
9.1.a ペイメント アプリケーションがカード会員データを内部ネットワークに保存し、DMZ には決して保存しないことを確認するには、ペイメント アプリケーションが DMZ でのデータ ストレージを必要とせず、DMZ を使用してインターネットをカード会員データを保存するシステム (たとえば、支払いアプリケーションでは、データベース サーバーと Web サーバーが同じサーバー上にあること、または Web サーバーと一緒に DMZ にあることを要求してはなりません)。
9.1.b 顧客がインターネットに接続されたサーバーにカード所有者データを保存できる場合は、ベンダーが作成した PA-DSS 実装ガイドを調べて、顧客と再販業者/インテグレーターが、インターネットにアクセス可能なシステム (Web サーバーなど) にカード所有者データを保存しないように指示されていることを確認します。およびデータベース サーバーは同じサーバー上にある必要はありません)。
そして加盟店の PCI DSS から:
1.3.5 カード会員データ環境からインターネットへのアウトバウンド トラフィックを制限して、アウトバウンド トラフィックが DMZ 内の IP アドレスにのみアクセスできるようにします。
質問
私の質問は非常に単純です。データベースとアプリケーション サーバーは論理的に異なる (仮想化された OS が異なる) か、物理的に異なる (物理/専用サーバーが異なる) 必要がありますか?
また、インターネットにまったく接続されていないデータベース サーバーを配置する必要があることも少し心配です。このサーバーをリモートで管理するにはどうすればよいですか? それとも、アプリケーション サーバー経由でデータベース サーバーにアクセスしても問題ないでしょうか。