Edge Public Cloud の PCI 構成ガイド

お客様が Apigee Edge Public Cloud 上で PCI に準拠するためには、「共同責任モデル」に基づいていくつかのアクションとプロセスを行っていただく必要があります。PCI コンプライアンス パックを購入し、PCI に準拠する必要があるお客様は、このページに記載されている項目をご確認ください。これらの項目は Edge 内ではセルフサービスとなります。そのため、お客様の組織(org)が PCI に準拠するためには、お客様自身でご対処いただく必要があります。「Google がプラットフォームを保護し、お客様がデータを保護する」というのが全体の考え方となります。

お客様の責任マトリックス

お客様は、独自の PCI 監査を実施する際に、Google Apigee PCI-DSS 3.2.1 責任マトリックスを参照し、PCI 認定セキュリティ評価機関と共有する必要があります。

PCI 要件のマッピング

PCI 要件 セクション
要件 7: カード会員データへのアクセスを、業務上必要な範囲内に制限する

使用 / 承認

要件 3: 保存されるカード会員データを保護する

データ マスキング

要件 10: ネットワーク リソースおよびカード会員データへのすべてのアクセスを追跡および監視する

監査証跡

要件 8: パソコンにアクセスできる各ユーザーに一意の ID を割り当てる

複雑なパスワード要件または SAML

要件 11: セキュリティ システムおよびプロセスを定期的にテストする

エンドポイントのスキャン

要件 4: オープンな公共ネットワーク経由でカード会員データを伝送する場合、暗号化する

TLS 構成

要件 3: 保存されるカード会員データを保護する

データ ストレージ

要件 4: オープンな公共ネットワーク経由でカード会員データを伝送する場合、暗号化する

データ暗号化

PCI データ セキュリティ基準へのコンプライアンス認定(AOC)を取得するには、Apigee サポートでチケットをオープンするか、Apigee セールスチームにお問い合わせください。

Trace / Debug

Trace / Debug というトラブルシューティング ツールを使用して、Apigee Message Processor で API 呼び出しが処理される際にそのステータスと内容を表示できます。Trace と Debug はどちらも同じサービスを指す名前ですが、サービスにアクセスするために使用するメカニズムが異なります。Trace は、Edge UI 内でのサービス名です。Debug は、API 呼び出しで使用するときのサービス名です。このドキュメントで使用する Trace という用語は、Trace と Debug の両方に適用されます。

Trace セッション中は、「データのマスキング」が適用されます。このツールによって、トレース中にデータが表示されないようにできます。後述するデータ マスキングのセクションをご覧ください。

PCI のお客様は、暗号化された Key-Value マップ(KVM)をご利用できます。暗号化された KVM が使用されている場合でも Trace を使用できますが、一部の変数は Trace 表示画面で表示されません。追加の手順を踏むことで、これらの変数も Trace セッション中に表示できるようになります。

Trace を使用する方法について詳しくは、Trace ツールを使用するをご覧ください。

暗号化された KVM を含めて KVM の詳細については、Key-Value マップの操作をご覧ください。

使用 / 承認

Trace へのアクセスは、Edge 内のユーザー アカウント用 RBAC(ロールベースのアクセス制御)システムによって管理されます。RBAC システムを使用して Trace 権限を付与する方法と取り消す方法について詳しくは、ロールの割り当てUI でのカスタムのロールの作成をご覧ください。Trace 権限を割り当てられたユーザーは、Trace の起動、Trace の停止、Trace セッションの出力へのアクセスが許可されます。

Trace では API 呼び出しのペイロード(旧称「メッセージ本文」)にアクセスできるため、Trace の実行アクセス権限をどのユーザーに与えるかを検討することが重要です。ユーザー管理はお客様の責任であるため、Trace 権限の付与もお客様の責任となります。Apigee はプラットフォーム オーナーであるため、お客様の組織にユーザーを追加して、権限を割り当てることができます。ただし Apigee は、お客様のサービスが機能していないと思われ、その根本原因に関する情報を入手するのに Trace セッションを確認することが最善であると判断できる状況において、お客様のサポート リクエストを受けた場合に限ってこの操作を行います。

データ マスキング

データ マスキングは、Trace(Edge UI)と Debug(Edge API)によるバックエンドの両方で、Trace / Debug セッション中のみ機密データの表示を防止します。マスキングの設定方法については、データのマスキングと非表示をご覧ください。センシティブ データのマスキングは、PCI 要件 3: 保存されるカード会員データを保護するの一部です

データをマスキングしても、ログファイル、キャッシュ、分析などではデータが表示されます。ログファイル内でもデータがマスキングされるようにするには、logback.xml ファイルへの正規表現パターンの追加を検討してください。通常、キャッシュやアナリティクスへの機密データの書き込みは、ビジネス上のやむを得ない理由があり、お客様のセキュリティ チームと法務チームでレビューしたうえでなければ、行うべきでありません。

L1 / L2 キャッシュ

PCI のお客様は、規制対象外のデータに対してのみ、キャッシュを使用できます。キャッシュは、個人健康情報(PHI)に使用するべきではありません。Apigee PCI コンプライアンス監査では、キャッシュは CHD 用のストレージとして承認されていません。PCI ガイダンス(要件 3: 保存されたカード会員データを安全に保護する)に従って、PCI データを PCI 準拠の場所にのみ保存する必要があります。L1 キャッシュを使用すると、自動的に L2 キャッシュも使用されます。L1 キャッシュは「メモリのみ」ですが、L2 キャッシュでは複数の L1 キャッシュを同期させるためにデータをディスクに書き込みます。L2 キャッシュは、リージョン内の複数の Message Processor を全体的に同期された状態に維持するためのものです。現在のところ、L2 キャッシュのサポートなしに L1 キャッシュを有効にすることはできません。L2 キャッシュは、お客様の組織の他の Message Processor にデータを同期させるために、データをディスクに書き込みます。L2 キャッシュはデータをディスクに書き込むことから、CHD やその他の規制対象のデータに対するキャッシュの使用はサポートされません。

非 CHD やその他の規制対象外のデータについては、お客様によるキャッシュの使用が許可されています。PCI のお客様には、キャッシュをデフォルトで無効にしておりません。お客様によっては、1 つの組織から PCI 関連の API 呼び出しと PCI に関連しない API 呼び出しの両方を実行するためです。このように、キャッシュ機能は PCI のお客様にも有効であるため、ユーザーがサービスを適切に使用し、PCI データが API 呼び出しに含まれる可能性がある場合にキャッシュを使用しないようにする必要があります。そのようにユーザーをトレーニングする責任は、お客様にあります。Apigee PCI コンプライアンス監査では、キャッシュに保管された CHD はサポートしていません。

キャッシュの使用方法については、キャッシュと永続性の追加をご覧ください。

監査証跡

お客様は、お客様の組織内で実施されたすべての管理アクティビティ(Trace の使用を含む)の監査証跡を確認できます。詳細な手順については、こちらTrace ツールの使用をご覧ください(PCI 要件 10: ネットワーク リソースおよびカード会員データへのすべてのアクセスを追跡および監視する)。

複雑なパスワード要件または SAML

PCI のお客様については、PCI DSS で必須とされる高度な要件を満たすようにユーザー パスワードが構成されます。これらのパスワード要件は、PCI コンプライアンスに最小限必要な設定です。Edge では多要素認証も使用できるようになっています(PCI 要件 8: コンピュータにアクセスできる各ユーザーに一意の ID を割り当てる)。使用できる多要素認証については、Apigee アカウントの 2 要素認証プロセスの有効化をご覧ください。また、Edge で SAML 認証を有効化する方法について説明しているように、認証制御の代替手段として SAML を使用することもできます。

エンドポイントのセキュリティ

エンドポイントのスキャン

ホストのスキャンとテストは、PCI コンプライアンスのために必要です(要件 11: セキュリティ システムおよび管理手順を定期的にテストする)。Edge Cloud の場合、Edge 内で使用する API エンドポイント(「ランタイム コンポーネント」とも呼ばれます)をスキャンしてテストする責任は、お客様にあります。お客様によるテストでは、Edge 上でホストされている実際の API プロキシ サービスも対象にしてください。API トラフィックは処理される前に API プロキシ サービスから Edge に送信され、そこで処理された後にお客様のデータセンターに配信されます。管理ポータル UI などの共有リソースのテストは、個々のお客様には認可されていません(お客様からのリクエストに応じて、機密保持契約の下、共有サービスのテストに関するサードパーティ レポートをご用意します)。

お客様の API エンドポイトは、お客様自身がテストすべきであり、そうすることが推奨されています。Apigee との契約では、お客様がご自身の API ポイントをテストすることを禁止していませんが、共有管理 UI のテストについては許可していません。さらに明確な説明が必要である場合は、サポート リクエストをオープンし、予定しているテストについて記載してください。テストについて事前に Apigee にご連絡していただけると、テスト トラフィックを認識できるため助かります。

お客様がエンドポイントをテストする際は、API 固有の問題や Apigee サービスに関連する問題の有無を調べるだけでなく、TLS とその他の構成可能な項目についても確認してください。Apigee サービス関連の問題が見つかった場合は、サポート リクエストによって Apigee にご連絡ください。

エンドポイント関連の問題のほとんどは、お客様のセルフサービスとなる項目であり、Edge ドキュメントを確認することで解決できます。解決方法が不明な場合は、サポート リクエストを開いてください。

TLS 構成

PCI 標準に従って、SSL と初期 TLS をセキュリティで保護されたバージョンに移行する必要があります。お客様は、独自の API プロキシ用 TLS エンドポイントを定義して構成する責任があります。これは、Edge ではセルフサービスとなります。暗号化、プロトコル、アルゴリズムの選択に関するお客様の要件はさまざまであり、個々のユースケースに固有なものです。Apigee ではあらゆるお客様の API 設計やデータ ペイロードの詳細を把握していないため、転送中のデータに適切な暗号化を判断するのは、お客様の責任となりますTLS 構成の詳細な手順については、TLS / SSL をご覧ください。

データ ストレージ

Edge 内にデータを保管することは、Edge を正常に機能させるための要件ではありません。ただし、Edge 内でのデータ ストレージとして利用できるサービスがいくつかあります。お客様は、データ ストレージにキャッシュ、Key-Value マップまたは分析を使用することもできます。これらのどのサービスも、Apigee PCI 監査では CHD のストレージとして許可していません。PCI 要件 3(要件 3: 保存されるカード会員データを保護する)に従って、PCI データは PCI 準拠の場所にのみ保存する必要があります。これらのサービスは、お客様のセキュリティ要件と法的要件が適用される非 PCI データやその他の規制対象外のデータを保管するために使用できます。これらのサービスは、お客様のセルフサービスとなる項目です。したがって、CHD を取り込んだり保管したりしないようにサービスを構成する責任は、お客様にあります。非準拠の方法での Edge でのデータ ストレージ サービスの偶発的または悪意のある使用を避けるために、構成、ポリシー、およびデプロイの確認をお客様の管理者が行うことが推奨されています。

データ暗号化

お客様が Edge 内で使用するためのデータ暗号化ツールは提供されていません。ただし、お客様は Edge に送信する前の PCI データを自由に暗号化できます。PCI 要件 4: (オープンな公共ネットワーク経由でカード会員データを伝送する場合、暗号化する)では、公衆ネットワーク上でカード会員データを送信する場合は、データを暗号化することが推奨されています。ペイロード(つまり、メッセージ本文)に含まれるデータを暗号化しても、Edge が機能しなくなることはありません。ただし一部の Edge ポリシーでは、お客様が暗号化したデータを受信した場合、そのデータを操作できない可能性があります。たとえば、変換操作の場合、Edge が変更対象のデータそのものを変更できなければ、変換は不可能です。しかし、それ以外のポリシーとお客様が作成したポリシーやバンドルは、データ ペイロードが暗号化されていても機能します。