SnykとTrek10、サーバーレスCI/CDデプロイメントを保護する新しいAWS Quick Startガイドを公開
Jay Yeras
2020年9月29日
0 分で読めます約1年前、私はTrek10と協力し、AWS上でサーバーレスアプリケーションを開発するお客様が、エンタープライズ対応のデプロイメントパイプラインをすぐに利用開始できるソリューションの構築に取り組みました。AWS Quick Startでは、独自のデプロイメントパイプラインの構築、管理、保護に関する手順を説明しています。
SnykはAWSの各種サービスと連携し、組織によるアプリケーションセキュリティの向上を支援します。APN Advanced TechnologyパートナーであるSnykは、オープンソース、コンテナ、サーバーレスを活用するアプリケーションの脆弱性を検出して修正する、開発者ファーストのセキュリティプラットフォームを提供しています。
AWSワークロードの設計、構築、サポートを支援するTrek10とSnykが提携し、エンタープライズ対応の動的なデプロイメントパイプラインを備えたCI/CDソリューションを設計、提供します。このソリューションは、サーバーレスアプリケーション向けに、リソースを分離するためのAWSのベストプラクティスに従い、開発、共有サービス、本番の3つのAWSアカウント(サブアカウント)の作成手順を案内します。

SnykとTrek10によるAWSクラウドでのエンタープライズ向けサーバーレスCI/CDが、公式のAWS Quick Startとして公開されたことをお知らせします。このガイドでは、サーバーレスアプリケーションのオープンソース依存関係に潜む重大な脆弱性を見つける方法を詳しく紹介します。
この本番環境対応のリファレンスデプロイメントは、AWS、Snyk、Trek10の専門家によるテストと検証を経ており、セキュリティと高可用性に関するAWSのベストプラクティスに準拠しています。図1に示すアーキテクチャを見ていきましょう。

このソリューションでは、開発用および本番用サブアカウント間のクロスアカウントアクセスに加え、Snyk APIへのアクセスが可能です。また、3つのサブアカウントにAWS CodeCommit、AWS CodePipeline、AWS CodeBuild、AWS CodeDeployと、Amazon API Gateway、AWS Lambda、Amazon DynamoDBを活用するサンプルのサーバーレスアプリケーションをデプロイします。サーバーレスアプリケーションはSnykのAWS Lambdaインテグレーションによって監視されます。また、CodeBuildのbuildspec.ymlファイルからSnyk CLIを実行して、追加のアプリケーションスキャンを行うこともできます。


図2に示すように、このインテグレーションでは、Snykが実行する各テストのたびにLambdaと直接通信し、現在デプロイされているコードと使用中の依存関係を正確に特定できます。各依存関係をSnykの脆弱性データベースと照合し、既知の脆弱性が含まれていないか確認します。設定に応じて脆弱性が見つかった場合、SnykからメールまたはSlackで通知されるため、すぐに修正措置を講じることができます。
同様に、図3に示すように、AWS CodeBuildでビルドを失敗させることで、エクスプロイトの危険にさらされるデプロイメントを防ぐことができます。

このソリューションをスムーズにデプロイできるよう、私たちは多くの工夫を重ねてきました。各サービスのプロビジョニングとデプロイメントを自動化しただけでなく、SnykのAWS Marketplace掲載ページ(セルフサービス購入とプライベートオファーの両方に対応)を通じて、請求も簡素化しました。Trek10による高度な導入支援と専門家のガイダンスもご利用いただけます。サーバーレスCI/CDデプロイメントにセキュリティを組み込むためのSnykとTrek10の連携について詳しくはこちらをご覧ください。



