KubeCon Europe 2023およびオンデマンドで提供する、Snyk、HashiCorp、AWSの新しいIaCセキュリティワークショップ
Sarah Conway
2023年4月10日
0 分で読めますDevSecOpsという概念が話題に上ると、独自のアプリケーションコードやサードパーティ製コンポーネントが中心だと思いがちです。しかし現在、コードはアプリケーション自体の作成だけに使われるわけではありません。Infrastructure as Code(IaC)もコードを使い、開発を支えるあらゆるもの、つまり裏側で稼働するサーバーやストレージなどを定義します。物理サーバーやストレージを使う代わりに、チームはすべてのインフラリソースの設定を編集可能なテキストファイルに保存します。IaCは、設定のずれを防ぎ、以前は時間とリソースを費やしていた手作業のプロセスを自動化するため、開発チームに大きな変革をもたらします。
しかし、ほかのコードベースのプロジェクトと同様に、IaCは大きなセキュリティリスクになり得ます。現在のチームはセキュリティよりスピードを重視することが多く、設定ミスのあるIaCや過剰な権限を付与したIaCを誤って公開してしまう可能性があります。幸い、セキュアでかつアジャイルなIaCを作ることは十分可能です。必要なのは、適切なツール、プロセス、文化の組み合わせです。
Snyk、HashiCorp Terraform、AWSによる新しいワークショップ
特定のツール群を使ってIaCセキュリティを実装する方法を紹介するため、Snyk、HashiCorp、Amazon Web Services(AWS)のエキスパートが新しいワークショップを作成しました。セキュリティツール、Infrastructure as Codeソリューション、クラウドプロバイダーを連携させ、開発者にシームレスな体験を提供する方法を解説します。
AWS、HashiCorp、Snykのエキスパートが案内するこのワークショップは、4月18日(火)14:30~16:30(CEST)にKubeCon Europe 2023で開催されます。無料の併催バーチャルイベントにお申し込みください。KubeCon Europeに参加できない場合は、オンデマンドでワークショップをご覧ください。
SnykとHashiCorp
HashiCorpは、イノベーションを推進するアプリケーションのプロビジョニング、保護、接続、実行を開発チームに提供します。Terraform Cloudなど、マルチクラウドのインフラ自動化製品群を提供しており、開発者はあらゆる環境でリソースのプロビジョニング、変更、バージョン管理を自動化できます。
Snykを利用することで、HashiCorpユーザーは、HashiCorpの自動化ツールがもたらす大きなイノベーションのスピードを落とすことなく、増大するクラウドの脅威からIaC環境をより適切に保護できます。
SnykとAWS
AWSのユーザー数は150万人近くに上り、フル機能を備えた200以上のサービスを提供しています。特にAWS CodeBuildは、IaCのデプロイを自動化するために開発者によく利用されています。SnykはAWS Partner Network(APN)のAdvanced Technology Partnerであり、DevOpsとセキュリティのAWS Competenciesを有しています。
AWSのパイプラインにSnykを組み込めば、開発者は使い慣れた簡単な設定で、既存のワークフローにセキュリティをシームレスに統合できます。
Snyk、HashiCorp、AWSの設定方法
オンデマンドのAWSワークショップでは、IaCの作成、デプロイ、セキュリティ確保までを一貫してシームレスに行えるよう、これら3つのソリューションを設定します。ワークショップの主な内容をご紹介します。
設定
まず、この連携に必要なソリューションをインストールして設定します。この手順に沿って進めるには、次のものが必要です。
以下に対応したリージョンのAWSアカウント:
AWS CodeCommit
AWS CodeBuild
AWS CodePipeline
Amazon EC2
Amazon S3
Teamプラン以上のSnykアカウント
AWSアカウントと連携するようSnyk Cloudを設定して有効化していること
ワークステーションに次のソフトウェアがインストールされていること:
HashiCorpのTerraformCLI
使用するリージョンで動作するよう設定されたAWS CLI
ユーザーにAWSCodeCommitPowerUserポリシーがアタッチされたAWSユーザーロール
公開リポジトリで変更やコミットをフォークするためのGitHubアカウント
Snyk IaC
環境の設定後、ワークショップではSnykを使ってIaCの設定ミスを検出し、修正する方法を紹介します。セキュリティ上の問題を含むIaCを作成するため、設定ミスのあるEC2インスタンスを含むリポジトリをクローンします。次に、AWS CodeBuildリポジトリでコマンドを1つ実行してSnyk IaCを実行します。数秒後には、中程度の深刻度のセキュリティ問題が3件と、それぞれに関するコンテキスト情報が表示されます。
次に、ツールに組み込まれた修正ガイダンスに従って、IaCの設定ミスを修正する方法を学びます。最後に、結果をSnykと同期して、SnykのUIを最新の状態にします。
HashiCorp Terraform
この段階では、同じEC2インスタンスにある3件の中程度の問題を使って、HashiCorp Terraformの演習を行います。まず、Terraform Cloud、AWS、Snykを連携させ、それぞれが相互にやり取りできるようにします。次に、既存のリポジトリブランチを確認し、TerraformがネイティブCLIにどのように表示されるかを見ていきます。
続いて、Terraform Cloudからplanコマンドを実行し、予定されている変更を確認して、Snykで3件の中程度の問題を修正する方法を体験します。
このワークショップの主なポイント
このワークショップでは、AWS、Snyk、HashiCorpのエキスパートが、各社の連携によって得られる効果を紹介します。それぞれ異なる強力なツールを活用し、安全なInfrastructure as Codeの自動化パイプラインを構築する方法をご覧ください。AWS CodeBuild、HashiCorp Terraform、Snyk IaCの各ツールが、IaCパイプラインの自動化、俊敏性、セキュリティを高めます。ワークショップの主なポイントは次のとおりです。
TerraformはIaCのデプロイに欠かせないツールです。Terraformを使えば、AWSリソースを数秒でデプロイできます。手動でのプロビジョニングよりも速く、正確に作業できることから、自動化されたIaCツールが今後も活用されることは明らかです。
IaCの設定ミスはよく見られます。IaCツールは強力ですが、よくあるセキュリティ上の問題をすべて検出できるわけではありません。このワークショップでは、Snyk IaCが中程度の深刻度のIaCの脆弱性をいくつか検出します。これらのセキュリティ上の問題から、IaC環境の設定は多くの場合、デフォルトで安全ではないことがわかります。
セキュリティツールは開発者のワークフローに組み込める必要があります。リスクの検出と修正にかかる時間と労力は、最小限に抑えるべきです。開発チームには、ほかにも取り組むべきタスクが数多くあります。このワークショップでは、コマンドラインでコマンドを1つ入力するだけでセキュリティスキャンを開始でき、数秒で結果が返されます。
修正ガイダンスは、セキュリティツールに欠かせない要素です。ツールは設定ミスを報告するだけでなく、開発者が簡単に修正を適用し、すぐにコーディングに戻れるよう、手順を追った修正方法も提示する必要があります。
HashiCorp、Snyk、AWSを活用したIaCの自動化とセキュリティ確保について詳しく知りたい方は、最近開催されたAWS Immersion Dayをご覧ください。ワークショップの手順を追ったテキスト版もぜひご活用ください。



