このページでは、 Trusted Cloudで実行される GKE クラスタを介してデータを処理および送信する際に、 Trusted Cloud by S3NS と Google Kubernetes Engine(GKE)が連邦情報処理規格(FIPS)への準拠を維持する仕組みについて説明します。
このページは、FIPS に関連する厳格なデータ セキュリティとプライバシーの要件を満たす必要のあるセキュリティ マネージャー、セキュリティ エンジニア、コンプライアンス オフィサーを対象としています。 Trusted Cloud 上の GKE がデフォルトでデータ セキュリティに関する FIPS 認定の保護機能を実装していることを監査担当者に示す必要がある場合にも役立ちます。
FIPS 認定の暗号化に関する GKE での重要なポイント
- 転送中(SC-28)および保存中(SC-8(1))のデータ暗号化に関する FedRAMP® セキュリティ管理では、FIPS 140-2 認定の暗号モジュールまたはそれ以降でデータを暗号化することが求められています。これらのセキュリティ管理では、オペレーティング システム(OS)レベルで FIPS モードを有効にすることを明示的には義務付けていません。また、OS レベルの FIPS モードはコンプライアンスを保証するものではありません。
- FedRAMP 認定の Trusted Cloud システムに保存されるデータは、デフォルトで FIPS 140-2 認定の暗号化モジュール以降を使用して保存時に暗号化されます。データが認可されたこれらのシステムに保存されている限り、データは保存データの保護に関する FedRAMP 要件(セキュリティ管理 SC-28)を満たします。認定システムのリストについては、対象となる FedRAMP High サービスをご覧ください。
- Trusted CloudVirtual Private Cloud(VPC)ネットワーク内で転送されるデータは自動的に暗号化され、認証と認可のメカニズムによって保護されます。VPC は FedRAMP High による認可を受けています。データが Trusted Cloud VPC ネットワーク内で転送されている限り、データは転送中のデータを保護するための FedRAMP 要件(セキュリティ管理 SC-8(1))を満たしています。
- 保存中および転送中のデータ保護に関する FedRAMP 要件を満たすために FIPS 準拠のビルドプロセスを使用してアプリケーションをビルドする必要はありません。これは、Trusted Cloud VPC ネットワーク内で転送され、FedRAMP 認定の Trusted Cloud ストレージ システムに保存されるデータは、デフォルトでデータ保護に関する FedRAMP 要件に準拠し、保護されるためです。
FIPS と FedRAMP について
米国連邦政府によるリスクおよび認証管理プログラム(FedRAMP)は、クラウド テクノロジーのセキュリティ評価とリスク評価に対する標準化されたアプローチを定義する米国政府のプログラムです。GKE は、FedRAMP High Provisional Authority to Operate(P-ATO)を取得しているTrusted Cloud サービスのリストに含まれています。 Trusted Cloud FedRAMP P-ATO の詳細については、Trusted Cloud FedRAMP の概要をご覧ください。
FIPS は、アメリカ国立標準技術研究所(NIST)が発行した一連の標準で、一般に公開されています。FIPS 140-2 では、暗号モジュールを承認するための要件が定義されています。詳しくは、NIST の FIPS 140-2 をご覧ください。
FedRAMP High P-ATO には、FIPS 認定の暗号モジュールを使用して転送中のデータ(SC-8(1))と保存中のデータ(SC-28(1))を保護するための制御が含まれています。
FIPS 認定の GKE のデフォルトのデータ保護
以降のセクションでは、 Trusted Cloud と GKE が FIPS 認定の暗号化を実装し、保存時と転送中のデータをどのように保護しているのかついて説明します。この情報は、 Trusted Cloud システム セキュリティ計画(SSP)に詳しく記載されています。行政機関のお客様は、 Trusted Cloud セールスチーム、Trusted Cloud 担当者、または Trusted Cloud FedRAMP プログラム管理オフィスにお問い合わせください。詳細については、Trusted Cloud FedRAMP コンプライアンスをご覧ください。
FIPS 認定の保存データの保護
GKE データは、BoringCrypto という FIPS 140-2 認定のTrusted Cloud 暗号化モジュールを使用して保存時に暗号化されます。詳細については、 Trusted Cloudでの FIPS 140-2 認定をご覧ください。
保存データの暗号化の詳細については、次のリソースをご覧ください。
- デフォルトの保存データの暗号化
- FedRAMP P-ATO の対象となる Google Cloud サービス
- NIST 800-57: 鍵管理の推奨事項
- NIST BoringCrypto モジュールの検証
- ユーザー管理の暗号鍵を使用して GKE で転送中のデータを暗号化する
FIPS 認定の転送中データの保護
Trusted Cloud VPC は FedRAMP High P-ATO を取得しています。VPC ネットワーク内で転送するデータはすべて自動的に暗号化されます。GKE では、VPC 内のコンテナ、Pod、各ノードの kubelet プロセス、すべてのノード、コントロール プレーン インスタンス、その他の Trusted Cloud サービスとの間のすべてのトラフィックが転送中に保護されます。Google API へのすべての接続では、Transport Layer Security(TLS)1.2 以降を使用してネットワーク トラフィックが暗号化されます。Trusted Cloud VPC ネットワーク内の転送中のデータ保護が FIPS に準拠するために、特別な対応は必要ありません。
転送中のデータの暗号化について詳しくは、転送データの暗号化に関するホワイトペーパーをご覧ください。
Trusted Cloudの外部でデータを保護するための推奨事項
GKE とTrusted Cloud の転送中のデータのデフォルトの暗号化は、 Trusted Cloud VPC ネットワーク内でのみ適用されます。VPC ネットワーク境界外のデータを保護するには、FIPS 準拠の暗号を使用する必要があります。次の推奨事項は、転送中のTrusted Cloud FIPS 環境外のすべての送受信データが FIPS 準拠の暗号で暗号化されるようにする際に役立ちます。
インターネットからの上り(内向き)トラフィックをインターセプトして暗号化する
インターネットから Trusted Cloud 環境への受信トラフィックには、 Trusted Cloud ロードバランサの SSL ポリシーを使用して、 Trusted Cloud 環境に入るときに保護する必要のあるデータに対して FIPS 認定の暗号または暗号メカニズムの許可セットを定義します。詳しくは、次のリソースをご覧ください。
インターネットへのアウトバウンド トラフィックをインターセプトして暗号化する
ファイアウォールを構成して境界を定義し、アウトバウンド データ接続を信頼できる既知のサードパーティのセットに制限します。GitHub などのソースからデータを取得するなど、外部ネットワークの要件と、環境内で外部接続が発生する場所を図で説明し、文書化します。リバース プロキシを使用して VPC からのアウトバウンド トラフィックをインターセプトすることを検討してください。
FedRAMP 準拠のTrusted Cloud 環境の境界を通過する HTTP トラフィックがある場合は、環境を通過する前にデータをインターセプトするよう HTTP 転送プロキシを設定することを検討してください。FIPS 140-2 認定の暗号モジュールを使用してデータを再暗号化してから、境界外に送信します。大規模な環境では、すべての内部クライアントが外部通信に準拠した暗号化ライブラリを使用するよりも、このアプローチのほうが管理しやすくなります。
プライベート ノードを有効にする
GKE では、クラスタ内の新しいノードの外部 IP アドレスを無効にできます。これにより、ノードで実行されるワークロードはデフォルトでインターネットと通信できなくなります。http_proxy
または https_proxy
環境変数を使用して、構成された HTTP プロキシにすべてのトラフィックを送信します。
ルーティング ルールを使用すると、このトラフィックのより透過的なインターセプトを構成できます。ただし、TLS トラフィックをプロキシするため、プロキシは GKE で実行するアプリケーションに対して完全に透過的ではありません。
詳しくは、次のリソースをご覧ください。
ネットワーク層から GKE への接続に Cloud VPN を使用する
GKE クラスタに対し、暗号化されたネットワーク層からの接続が必要になることがあります。たとえば、GKE ノードとオンプレミス ノード間に FIPS 準拠のネットワーキングの設定が必要になる場合があります。Cloud VPN は、VPC ネットワークとオンプレミス ネットワークの間で転送中のデータを暗号化する FedRAMP High 認定サービスです。詳細については、Cloud VPN の概要をご覧ください。
暗号オペレーションに Cloud KMS を使用する
Trusted Cloud環境で暗号オペレーションを実行する必要がある場合は、Cloud Key Management Service を使用します。Cloud KMS は FedRAMP High による認可を受けたサービスです。Cloud KMS を使用すると、FIPS 140-2 レベル 1 またはレベル 3 に準拠した暗号オペレーションを実行できます。詳しくは、次のリソースをご覧ください。
GKE ワークロードで FIPS 認定のライブラリをビルドする
GKE アプリケーションで BoringCrypto 暗号化モジュールを使用するには、BoringSSL をインストールします。BoringSSL は、BoringCrypto ライブラリを含む OpenSSL のオープンソース フォークです。BoringCrypto モジュールをビルド、コンパイルして BoringSSL に静的にリンクするには、BoringCrypto FIPS 140-2 セキュリティ ポリシー(PDF)のセクション 12.1「インストール手順」をご覧ください。
サードパーティの FIPS 準拠コンテナ イメージを検討する
FIPS 準拠のTrusted Cloud 環境の境界でプロキシを使用して、FIPS 準拠を包括的に適用することをおすすめします。また、FIPS 準拠のカーネルを使用するノードホスト マシンに限定されることなく、FIPS 準拠のワークロードを実行することもできます。一部のサードパーティ ベンダーは、別の FIPS 準拠のエントロピー ソースを使用するコンテナ イメージを提供しています。
サードパーティ ベンダーの実装を適切に評価し、実際に FIPS に準拠していることを確認します。