たろログ2

実験的運用により、記事品質が乱高下することがあります。予めご了承ください。

2022-06-24 Google Certified Professional Cloud Security Engineer 模擬試験

Cloud IAP

問題

ある組織が最近、顧客向けのウェブ アプリケーションを構築、ホストするために、App Engine を使用し始めました。この組織は、既存の IAM 設定を使用して、デベロッパーがアプリケーションへの昇格されたアクセス権をリモートで利用できるようにしたいと考えています。こうすることで、デベロッパーは HTTPS 接続を介して、更新プログラムや修正プログラムをアプリケーションにプッシュできるようになります。デベロッパー以外の従業員には、開発権限なしで、本番環境バージョンへのアクセス権のみを付与する必要があります。この要件をクリアするためには、どの Google Cloud ソリューションを使用すればよいですか?

回答

Cloud Identity-Aware Proxy(Cloud IAP)を設定して、従業員によるアクセスの認証やさまざまな承認レベルを管理する。

解説

コンセプトについての説明 では、Cloud IAP について十分に理解することができなかった。stackoverflow で紹介されていた以下ページを参照しようやく理解できた。

Quickstart: Authenticate users with Google Accounts | Identity-Aware Proxy

Cloud IAP の App Engine でのユースケース

信頼されたユーザ

Cloud IAP を有効にし、そこにユーザを追加する。

追加されたユーザは、Cloud IAP において「信頼されたユーザ」として扱われる。

それ以外のユーザは、「信頼されていないユーザ」として扱われる。

IAP による AppEngine の保護

Cloud IAP で、保護するアプリケーションを選択する。

こうすることによって、信頼されたユーザは AppEngine にアクセスでき、信頼されていないユーザは AppEngine にアクセスできないというアクセス管理が実現できる。

Google にログインしていないユーザがアクセスした場合は Cloud IAP によってリダイレクトが行われ、ログインページが表示される。

想定されるユースケース

自社の社員のみが利用することを想定している AppEngine のアプリケーションがある場合、 Cloud IAP を利用することで、簡単にアクセスを自社の社員のみに絞ることができる。

アプリケーション側でアクセスを絞る機能を作成する必要がなくなる。また、 Cloud IAP があるためアプリケーションは全公開とすることができる。

送信元アドレスに制限をかける、 VPN 経由で接続する等のソリューションが不要となる。

また、自社の社員のうち、一部の社員のアクセスを絞りたい場合は、 Cloud IAP の管理画面からポチポチとユーザの追加、削除を行うことでその管理を行うことができる。

Shared VPC

問題

Google Cloud 内の VPC でサブネットを定義しました。複数のプロジェクトで、このサブネットの IP アドレスを使用して Compute Engine インスタンスを作成する必要があります。何をすべきですか?

回答

共有 VPC を使用して、サブネットを他のプロジェクトと共有する。

解説

サブネットの異なるプロジェクト間での共有は、共有 VPC によって行う

Shared VPC overview | Google Cloud

Cloud DLP における、秘匿化のカスタム検出器作成

問題

メールアドレスなどの顧客 ID を含むアプリケーションのログデータを秘匿化する必要があります。ただし、このログには社内のデベロッパーのメールアドレス(company.com)も含まれており、それらは秘匿化しないようにします。この要件をクリアするためには、どのソリューションを使用すればよいでしょうか?

回答

正規表現regex)のカスタム infoType 検出器を作成し、@company.com を照合する。

解説

全く知らなかった機能だが、GCP には Cloud Data Loss Prevention (Cloud DLP) という機能があるらしい。

データウェアハウスに保存されているデータから機密データを検出したり、それらの機密データについて自動的にマスキングを行ったり、個人を特定できるような組み合わせとなっているデータを検出したりすることができる。

機密データの保管に関する総合的なソリューションのように感じた。

ここでは触りだけとし、詳しくは Google Skills Boost で学びたい。ドキュメントは以下。

InfoType detector reference | Data Loss Prevention Documentation | Google Cloud

Creating custom infoType detectors | Data Loss Prevention Documentation | Google Cloud

Cloud Storage におけるデータの保護

問題

Cloud Storage のデフォルトの暗号化では、どの暗号化アルゴリズムが使用されますか?

回答

AES-256

解説

標準では暗号化アルゴリズムとして AES-256 が利用される。

サーバ側暗号化は自動的に、また必ず行われる。それによる追加料金やパフォーマンスの低下は発生しない。

通常、Cloud Storage を利用するユーザがこの暗号化処理を意識することは少ないと思われる。

Google-managed encryption keys | Cloud Storage

Cloud Storage における保持期間の指定

問題

あなたの会社は Cloud Storage にファイルを保管しています。地域の規制を遵守するために、アップロードしたファイルは、以降 5 年間は削除できないようにする必要があります。設定した保持期間は、後から短縮できないようにする必要もあります。何をすべきですか?

回答

5 年間の保持期間をバケットに適用し、バケットをロックする。

解説

保持期間の設定は、「data retension policy」として設定することができる。

また、設定したポリシーをロックすることで、「設定した保持期間は、後から短縮できないようにする」という要件を満たすことができる。

ポリシーをロックすることで、ポリシーが不意に変更されることを防ぎ、データの保護を確実とすることができる。

一度行ったロックは解除することが不可能となる。バケットを削除するしかないが、そのバケットの削除も条件が厳しく、最悪もう利用しない、削除したいバケットについて、保持期間が終わるまでずっと望まない課金を行い続けることになる。適用は慎重に行うこと。

Retention policies and retention policy locks | Cloud Storage | Google Cloud

コンテナイメージへのセキュリティパッチ適用

問題

あなたの会社は、Google Kubernetes Engine にアプリケーションをデプロイしています。Google が推奨する方法に沿って対応する場合、新しいデプロイで使用するコンテナ イメージに、確実に最新のセキュリティ パッチを含めるためには、どうすればよいですか?

回答

すべてのコンテナで Google が管理するベースイメージを使用する。

解説

この問題の解説では、https://cloud.google.com/container-registry/docs/managed-base-images というページにリンクが貼られていたが、そのページは現在リンク切れとなっている。

同様のページもないため、 Google はこの managed-base-images の提供をやめたのかもしれない。

https://cloud.google.com/container-registry/docs/container-best-practices