arrow_back

Implement Cloud Security Fundamentals on Google Cloud: チャレンジラボ

参加 ログイン
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Implement Cloud Security Fundamentals on Google Cloud: チャレンジラボ

Lab 1時間 30分 universal_currency_alt クレジット: 5 show_chart 中級
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP342

Google Cloud セルフペース ラボ

概要

チャレンジラボでは、シナリオと一連のタスクが提供されます。各ステップの説明に沿って進める形式ではなく、クエスト内のラボで習得したスキルを駆使して、ご自身でタスクを完了していただきます。タスクが適切に完了したかどうかは、このページに表示される自動スコアリング システムで確認できます。

チャレンジラボは、Google Cloud の新しいコンセプトについて学習するためのものではありません。デフォルト値を変更する、エラー メッセージを読み調査を行ってミスを修正するなど、習得したスキルを応用する能力が求められます。

100% のスコアを達成するには、制限時間内に全タスクを完了する必要があります。

このラボは、「Implement Cloud Security Fundamentals on Google Cloud」スキルバッジに登録している受講者を対象としています。準備が整ったらチャレンジを開始しましょう。

テスト対象トピック

  • カスタム セキュリティ ロールを作成する。
  • サービス アカウントを作成する。
  • IAM セキュリティ ロールをサービス アカウントにバインドする。
  • カスタム サブネット内に Kubernetes Engine の限定公開クラスタを作成する。
  • Kubernetes Engine の限定公開クラスタにアプリケーションをデプロイする

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。

このハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モードまたはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。
  • ラボを完了するために十分な時間を確保してください。ラボをいったん開始すると一時停止することはできません。
注: すでに個人の Google Cloud アカウントやプロジェクトをお持ちの場合でも、このラボでは使用しないでください。アカウントへの追加料金が発生する可能性があります。

チャレンジ シナリオ

あなたは Jooli Inc. の Orca 部門で、セキュリティ チームのジュニア メンバーとして新たな役割を担うことになりました。チームは、会社のアプリケーションを支える Google Cloud のインフラストラクチャとサービスのセキュリティを確保する責任があります。

これらのタスクのスキルや知識があるという前提のため、手順ガイドは提供されません。

チャレンジ

あなたは、Kubernetes Engine クラスタをデプロイ、構成、テストするよう頼まれています。このクラスタは、Orca の開発チームがアプリケーションの開発とパイプラインのテストに使用するものです。

新しい Kubernetes Engine クラスタは、組織の最新のセキュリティ基準に従って構築され、以下の点を満たす必要があります。

  • クラスタは、必要な最小権限が構成された専用のサービス アカウントでデプロイする必要がある。
  • クラスタは、Kubernetes Engine の限定公開クラスタとしてデプロイする必要がある。その際、パブリック エンドポイントは無効にし、マスター承認済みネットワークには Orca グループの管理ジャンプホストの IP アドレスのみが含まれるように設定する。
  • Kubernetes Engine の限定公開クラスタは、Orca Build VPC 内の orca-build-subnet にデプロイする必要がある。

以前のプロジェクトから、Kubernetes Engine クラスタ用に指定されるサービス アカウントに必要な最小権限は、次の 3 つの組み込みのロールで対応できることがわかっています。

  • roles/monitoring.viewer
  • roles/monitoring.metricWriter
  • roles/logging.logWriter

これらのロールは、Google Kubernetes Engine(GKE)の「クラスタのセキュリティを強化する」ガイドの「最小権限の Google サービス アカウントを使用する」セクションで指定されています。

上記のロールを、クラスタで使用されるサービス アカウントにバインドする必要があります。また、開発チームが指定するその他のサービスにアクセスできるようにカスタムロールを作成してバインドする必要があります。開発チームの要求として、クラスタで使用するサービス アカウントには、Google Cloud Storage バケット内でオブジェクトを追加および更新できる権限が必要であることが最初に説明されています。これを行うには、以下の権限を付与する新しいカスタム IAM ロールを作成する必要があります。

  • storage.buckets.get
  • storage.objects.get
  • storage.objects.list
  • storage.objects.update
  • storage.objects.create

新しい限定公開クラスタを作成したら、管理サブネット orca-mgmt-subnet 内のジャンプホスト orca-jumphost からクラスタに接続して、適切に構成されていることをテストする必要があります。このコンピューティング インスタンスは限定公開クラスタとは異なるサブネットにあるため、クラスタのマスター承認済みネットワークにそのインスタンスの内部 IP アドレスが含まれている必要があります。また、gcloud container clusters get-credentials コマンドを使用してクラスタの認証情報を取得する際に、--internal-ip フラグを指定します。

新しく作成するすべてのクラウド オブジェクトとサービスに、接頭辞「orca-」を含める必要があります。

最終的なタスクは、クラスタが適切に動作していることを検証することです。シンプルなアプリケーションをクラスタにデプロイし、orca-jumphost コンピューティング インスタンスから kubectl ツールを使用して、クラスタへの管理アクセスが機能していることをテストします。

このラボのすべてのタスクで、 リージョンと ゾーンを使用します。

タスク 1. カスタム セキュリティ ロールを作成する

最初のタスクは、 という新しいカスタム IAM セキュリティ ロールを作成することです。このロールによって、Google Cloud Storage のバケットとオブジェクトに、ストレージ オブジェクトの作成と更新に必要な権限が付与されます。

カスタム セキュリティ ロールが作成されていることを確認する

タスク 2. サービス アカウントを作成する

2 番目のタスクは、新しい限定公開クラスタ用サービス アカウントとして使用される専用のサービス アカウントを作成することです。このアカウントは、 という名前にする必要があります。

新しいサービス アカウントが作成されていることを確認する

タスク 3. カスタム セキュリティ ロールをサービス アカウントにバインドする

ここでは、Kubernetes Engine クラスタのサービス アカウントに必要な Cloud Operations のロギングとモニタリングのロールと、ストレージの権限用に作成したカスタム IAM ロールを、先ほど作成したサービス アカウントにバインドする必要があります。

適切な組み込みのロールとカスタム セキュリティ ロールが新しいサービス アカウントにバインドされていることを確認する

タスク 4. 新しい Kubernetes Engine の限定公開クラスタを作成、構成する

ここでは、Kubernetes Engine の新しい限定公開クラスタ作成時に構成したサービス アカウントを使用します。新しいクラスタの構成は、以下の内容を満たす必要があります。

  • クラスタの名前は である
  • クラスタはサブネット orca-build-subnet にデプロイされる
  • サービス アカウント を使用するようにクラスタが構成されている
  • 限定公開クラスタのオプション enable-master-authorized-networksenable-ip-aliasenable-private-nodesenable-private-endpoint が有効になっている

クラスタを構成したら、コンピューティング インスタンス orca-jumphost の内部 IP アドレスを、マスター承認済みネットワークのリストに追加する必要があります。

Kubernetes Engine の限定公開クラスタが適切にデプロイされていることを確認する

タスク 5. Kubernetes Engine の限定公開クラスタにアプリケーションをデプロイする

シンプルなテスト用アプリケーションがあります。このアプリケーションを任意のクラスタにデプロイして、コンテナの基本的なデプロイ機能が動作していること、基本的なサービスを作成してアクセスできることを素早くテストできます。ジャンプホスト orca-jumphost を使用してこのシンプルなデモを新しいクラスタにデプロイできるように、環境を構成する必要があります。

注: kubectl コマンドを実行する前に、gke-gcloud-auth-plugin を適切にインストールしてください。詳しくは、下記のヒント 1 をご覧ください。 kubectl create deployment hello-server --image=gcr.io/google-samples/hello-app:1.0

このコマンドを実行すると、テスト用の基本的なロードバランサ サービスを使用して公開可能な、ポート 8080 でリッスンするアプリケーションがデプロイされます。

アプリケーションが Kubernetes Engine の限定公開クラスタにデプロイされていることを確認します。

ヒントとアドバイス

  • ヒント 1. kubectl を継続的に使用するには、gke-gcloud-auth-plugin を使用する必要があります。インストールするには、以下のコマンドを実行します。次のコマンドの GKE クラスタ名、クラスタゾーン、プロジェクト ID を必ず置き換えてください。
sudo apt-get install google-cloud-sdk-gke-gcloud-auth-plugin echo "export USE_GKE_GCLOUD_AUTH_PLUGIN=True" >> ~/.bashrc source ~/.bashrc gcloud container clusters get-credentials <クラスタ名> --internal-ip --project=<プロジェクト ID> --zone <クラスタゾーン>
  • ヒント 2. Kubernetes Engine の限定公開クラスタの承認済みアドレスのリストに orca-jumphost マシンの内部 IP アドレスを追加する場合、ネットマスク /32 を使用して、特定のコンピューティング インスタンスのみが承認されるようにする必要があります。

  • ヒント 3. enable-private-endpoint オプションが指定されている場合、VPC、または限定公開クラスタがデプロイされている VPC 外部の他のネットワークから、Kubernetes Engine の限定公開クラスタに直接アクセスすることはできません。これは、限定公開クラスタの最高レベルのセキュリティ オプションを示しています。クラスタの管理用内部 IP アドレスに接続するには、ジャンプホスト、またはクラスタと同じ VPC 内のプロキシを使用する必要があります。

お疲れさまでした

このラボでは、クラスタの実行に必要な最小権限を持つ専用のサービス アカウントを使用する、新しい Kubernetes Engine 限定公開クラスタを構成しました。また、Google Cloud Storage バケットのストレージ オブジェクトの作成と更新に必要な権限を付与するカスタム IAM ロールを作成し、クラスタで使用されるサービス アカウントにそのロールをバインドしました。さらに、クラスタが適切に動作していることも検証しました。この検証では、シンプルなアプリケーションをクラスタにデプロイし、orca-jumphost コンピューティング インスタンスから kubectl ツールを使用して、クラスタへの管理アクセスが機能していることをテストしました。

「Implement Cloud Security Fundamentals on Google Cloud」バッジ

次のスキルバッジを獲得する

このセルフペース ラボは、「Implement Cloud Security Fundamentals on Google Cloud」スキルバッジの一部です。このスキルバッジを完了すると成果が認められて、上のようなバッジが贈られます。獲得したバッジを履歴書やソーシャル プラットフォームに記載し、#GoogleCloudBadge を使用して成果を公表しましょう。

このスキルバッジは、Google Cloud のクラウド セキュリティ エンジニア向け学習プログラムの一部です。この学習プログラムの他のスキルバッジを獲得済みの場合は、他の登録可能なスキルバッジをカタログで検索してみてください。

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2024 年 3 月 25 日

ラボの最終テスト日: 2023 年 12 月 4 日

Copyright 2024 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。