このページのトピック
GCPでスタックを作成する
GCPのクラウドアカウントを作成する
手順 に従って、GCPのクラウドアカウントを作成します。
クラウドアカウントを作成したら、 GCPプロジェクトAPIを呼び出して、 serviceAccountEmail を取得します。
前提条件
-
シェルスクリプトを実行する環境を設定します。
gcloud CLIでのTerraformの使用
TerraformによるAll-in-one Stackの作成
-
gcloudにログインします。
gcloud auth application-default login
-
gcloudプロジェクトを設定する
gcloud config set project PROJECT-ID
ここで、
PROJECT-ID
はスタックをデプロイするGCPプロジェクトのIDです。 -
テンプレートをダウンロードします。
wget https://file-storage-security.s3.amazonaws.com/latest/gcp-templates/gcp-templates-terraform.zip && unzip gcp-templates-terraform.zip
-
Terraformのデプロイを使用してGCPプロジェクトを構成します。
sed -i.bak "s/<GCP_PROJECT_ID>/<projectID>/g" ./gcp-configuration/terraform.tfvars.json
terraform -chdir=gcp-configuration init && terraform -chdir=gcp-configuration apply
どこに...
projectID
はGCPプロジェクトのIDに置き換える必要があります。
-
次のコマンドを使用して、GCPで All-in-one Stack を作成します。
sed -i.bak "s/<GCP_PROJECT_ID>/<projectID>/g" ./all-in-one/terraform.tfvars.json
sed -i "s/<SCANNER_STACK_NAME>/<scannerStackName>/g" ./all-in-one/terraform.tfvars.json
sed -i "s/<STORAGE_STACK_NAME>/<storageStackName>/g" ./all-in-one/terraform.tfvars.json
sed -i "s/<GCP_REGION>/<region>/g" ./all-in-one/terraform.tfvars.json
sed -i "s/<SCANNING_BUCKET_NAME>/<scanningBucketName>/g" ./all-in-one/terraform.tfvars.json
sed -i "s/<MANAGEMENT_SERVICE_ACCOUNT_GCP_PROJECT_ID>/<managementServiceAccountProjectID>/g" ./all-in-one/terraform.tfvars.json
sed -i "s/<MANAGEMENT_SERVICE_ACCOUNT_ID>/<managementServiceAccountID>/g" ./all-in-one/terraform.tfvars.json
terraform -chdir=all-in-one init && terraform -chdir=all-in-one apply
どこに...
projectID
はGCPプロジェクトのIDに置き換える必要があります。scanningBucketName
は、Cloud Storageに表示される[Cloud Storage バケット] の名前に置き換える必要があります。指定できるバケットは1つのみです。例:my-bucket-to-scan-01
scannerStackName
は、スタック名のプレフィックスに置き換える必要があります。プレフィックスは17文字未満である必要があります。例:FSS-AIO-SCANNER
storageStackName
は、スタック名のプレフィックスに置き換える必要があります。プレフィックスは17文字未満である必要があります。例:FSS-AIO-STORAGE
region
は、 バケットに置き換える必要があります。サポートされるGCPリージョンのリストについては、サポートされるGCPリージョンを参照してください。例:us-central1
managementServiceAccountProjectID
は、前の手順でserviceAccountEmail
から取得した管理サービスアカウントのGCPプロジェクトIDに置き換える必要があります。例:cloud-one-service-account@<managementServiceAccountProjectID>.iam.gserviceaccount.com
managementServiceAccountID
は、前の手順でserviceAccountEmail
から取得したサービスアカウントに置き換える必要があります。例:<managementServiceAccountID>@my-gcp-project.iam.gserviceaccount.com
デプロイが完了すると、後のデプロイ手順で使用するスタック出力がtfstateファイルに生成されます。
Terraformを使用して Scanner Stack を作成する
-
gcloudにログインします。
gcloud auth application-default login
-
gcloudプロジェクトを設定する
gcloud config set project PROJECT-ID
ここで、
PROJECT-ID
はスタックをデプロイするGCPプロジェクトのIDです。 -
テンプレートをダウンロードします。
wget https://file-storage-security.s3.amazonaws.com/latest/gcp-templates/gcp-templates-terraform.zip && unzip gcp-templates-terraform.zip
-
Terraformのデプロイを使用してGCPプロジェクトを構成します。
sed -i.bak "s/<GCP_PROJECT_ID>/<projectID>/g" ./gcp-configuration/terraform.tfvars.json
terraform -chdir=gcp-configuration init && terraform -chdir=gcp-configuration apply
どこに...
<projectID>
はGCPプロジェクトのIDに置き換える必要があります。
-
次のコマンドを使用して、GCPで Scanner Stack を作成します。
sed -i.bak "s/<GCP_PROJECT_ID>/<projectID>/g" ./scanners/terraform.tfvars.json
sed -i "s/<SCANNER_STACK_NAME>/<scannerStackName>/g" ./scanners/terraform.tfvars.json
sed -i "s/<GCP_REGION>/<region>/g" ./scanners/terraform.tfvars.json
sed -i "s/<MANAGEMENT_SERVICE_ACCOUNT_GCP_PROJECT_ID>/<managementServiceAccountProjectID>/g" ./scanners/terraform.tfvars.json
sed -i "s/<MANAGEMENT_SERVICE_ACCOUNT_ID>/<managementServiceAccountID>/g" ./scanners/terraform.tfvars.json
terraform -chdir=scanners init && terraform -chdir=scanners apply
どこに...
projectID
はGCPプロジェクトのIDに置き換える必要があります。scannerStackName
は、スタック名のプレフィックスに置き換える必要があります。プレフィックスは17文字未満である必要があります。例:FSS-AIO-SCANNER
region
は、 バケットのに置き換える必要があります。サポートされるGCPリージョンのリストについては、サポートされるGCPリージョンを参照してください。例:us-central1
managementServiceAccountProjectID
は、前の手順でserviceAccountEmail
から取得した管理サービスアカウントのGCPプロジェクトIDに置き換える必要があります。例:cloud-one-service-account@<managementServiceAccountProjectID>.iam.gserviceaccount.com
managementServiceAccountID
は、前の手順でserviceAccountEmail
から取得したサービスアカウントに置き換える必要があります。例:<managementServiceAccountID>@my-gcp-project.iam.gserviceaccount.com
デプロイが完了すると、後のデプロイ手順で使用するスタック出力がtfstateファイルに生成されます。
Terraformを使用して Storage Stack を作成する
-
gcloudにログインします。
gcloud auth application-default login
-
gcloudプロジェクトを設定する
gcloud config set project PROJECT-ID
ここで、
PROJECT-ID
はスタックをデプロイするGCPプロジェクトのIDです。 -
テンプレートをダウンロードします。
wget https://file-storage-security.s3.amazonaws.com/latest/gcp-templates/gcp-templates-terraform.zip && unzip gcp-templates-terraform.zip
-
Terraformのデプロイを使用してGCPプロジェクトを構成します。
sed -i.bak "s/<GCP_PROJECT_ID>/<projectID>/g" ./gcp-configuration/terraform.tfvars.json
terraform -chdir=gcp-configuration init && terraform -chdir=gcp-configuration apply
どこに...
projectID
はGCPプロジェクトのIDに置き換える必要があります。
-
次のコマンドを使用して、GCPに Storage Stack を作成します。
sed -i.bak "s/<GCP_PROJECT_ID>/<projectID>/g" ./storages/terraform.tfvars.json
sed -i "s/<STORAGE_STACK_NAME>/<storageStackName>/g" ./storages/terraform.tfvars.json
sed -i "s/<GCP_REGION>/<region>/g" ./storages/terraform.tfvars.json
sed -i "s/<SCANNING_BUCKET_NAME>/<scanningBucketName>/g" ./storages/terraform.tfvars.json
sed -i "s/<MANAGEMENT_SERVICE_ACCOUNT_GCP_PROJECT_ID>/<managementServiceAccountProjectID>/g" ./storages/terraform.tfvars.json
sed -i "s/<MANAGEMENT_SERVICE_ACCOUNT_ID>/<managementServiceAccountID>/g" ./storages/terraform.tfvars.json
sed -i "s/<SCANNER_STACK_PROJECT_ID>/<scannerProjectID>/g" ./storages/terraform.tfvars.json
sed -i "s/<SCANNER_STACK_PUBSUB_TOPIC_NAME>/<scannerTopic>/g" ./storages/terraform.tfvars.json
sed -i "s/<SCANNER_STACK_SERVICE_ACCOUNT_ID>/<scannerServiceAccountID>/g" ./storages/terraform.tfvars.json
terraform -chdir=storages init && terraform -chdir=storages apply
どこに...
projectID
はGCPプロジェクトのIDに置き換える必要があります。scanningBucketName
は、Cloud Storageに表示される[Cloud Storage バケット] の名前に置き換える必要があります。指定できるバケットは1つのみです。例:my-bucket-to-scan-01
storageStackName
は、スタック名のプレフィックスに置き換える必要があります。プレフィックスは17文字未満である必要があります。例:FSS-AIO-STORAGE
region
は、 バケットに置き換える必要があります。サポートされるGCPリージョンのリストについては、サポートされるGCPリージョンを参照してください。例:us-central1
managementServiceAccountProjectID
は、前の手順でserviceAccountEmail
から取得した管理サービスアカウントのGCPプロジェクトIDに置き換える必要があります。例:cloud-one-service-account@<managementServiceAccountProjectID>.iam.gserviceaccount.com
managementServiceAccountID
は、前の手順でserviceAccountEmail
から取得したサービスアカウントに置き換える必要があります。例:<managementServiceAccountID>@my-gcp-project.iam.gserviceaccount.com
scannerProjectID
は、 ScannerのTerraform環境のscanner_informations
出力に含まれる、 ScannerのGCPプロジェクトのIDに置き換える必要があります。scannerTopic
は、 ScannerのTerraform環境のscanner_informations
出力に含まれる、 Scannerの Pub/Sub トピックの名前に置き換えてください。scannerServiceAccountID
は、 ScannerのTerraform環境のscanner_informations
出力に含まれる、ご使用の ScannerのサービスアカウントIDの名前に置き換える必要があります。
デプロイが完了すると、後のデプロイ手順で使用するスタック出力がtfstateファイルに生成されます。