Edge Public Cloud の PCI 構成ガイド

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

PCI 要件のマッピング

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

使用 / 認可

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

データのマスキング

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

監査証跡

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

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

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

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

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

TLS 構成

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

データ ストレージ

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

データ暗号化

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

Trace / Debug

Apigee Message Processor で API 呼び出しが処理される際に、そのステータスと内容を表示するには、Trace / Debug というトラブルシューティング ツールを使用できます。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 のお客様は、規制対象外のデータに対してのみ、キャッシュを使用できます。PCI カード所有者データ(CHD)にはキャッシュを使用しないでください。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 内でのデータ ストレージとして利用できるサービスがいくつかあります。お客様はデータ ストレージとしてキャッシュ、BaaS(Backend-as-a-Service)、または Analytics を使用できます。これらのどのサービスも、Apigee PCI 監査では CHD のストレージとして許可していません。PCI 要件 3(保存されるカード会員データを保護する)に従い、PCI データは PCI に準拠する場所にのみ保管してください。これらのサービスは、お客様のセキュリティ要件と法的要件が適用される非 PCI データやその他の規制対象外のデータを保管するために使用できます。これらのサービスは、お客様のセルフサービスとなる項目です。したがって、CHD を取り込んだり保管したりしないようにサービスを構成する責任は、お客様にあります。Edge 内でデータ ストレージ サービスが PCI に準拠しない形で誤って使用されたり悪用されたりしないよう、お客様の管理者が構成、ポリシー、デプロイを確認することをおすすめします。

データ暗号化

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