Amazon Web Services ブログ

AmazonがAmazon AppStream 2.0を用いてデータサイエンティストとアナリストに分析環境を提供した方法

私たちの挑戦

2020年2月28日、COVID-19の影響を受けて、Amazonは従業員とコミュニティの健康を守るための措置をとったことを発表しました。これには、大規模なイベントの中止、ステークホルダーとのミーティングのオンライン化、フルフィルメントセンターの見学の一時停止などが含まれます。この記事を投稿した時点で、AmazonはCOVID-19に対する安全対策に80億ドル以上の投資を行なっています。

こうした安全対策の取り組みを補完するために、Amazonはそれぞれの拠点におけるCOVID-19の広がりとリスクを予測する必要性に迫られました。この予測には、インタラクティブなレポートと機械学習モデルの構築が必要でした。そこでAmazonは、機密性の高いデータを保存するためのセキュアなデータレイクと、グローバル規模で耐障害性のある分析環境を構築することになりました。このようなデータレイクを構築する際の課題は、その相反する要件です。一方ではデータを安全に、匿名化して隔離しなければならず、他方ではデータを意図した消費者に公開しなければならないのです。

このソリューションのアーキテクチャは、以下のセキュリティ要件を満たす必要がありました。

  • すべてのデータは、インターネットにアクセスできない隔離された環境に保存されていること
  • 環境の管理者を含め、生データに直接アクセスできないこと
  • IAMロールを用いて、分析インターフェースへのアクセスのみに制限すること
  • 社用デバイスから接続し、社内ネットワーク上にある場合にのみアクセスが可能であること
  • コピー&ペーストや印刷など、隔離された環境からデータの持ち出しを禁止すること
  • ユーザーの利用に対して包括的な監査を行えること

このような環境へのアクセスを提供するために、AmazonはソリューションとしてVDI(Virtual Desktop Infrastructure)を採用しました。VDIでは、画面描写のみがユーザーにストリーミングされ、データ自体がユーザーのデバイスに保存されることはありません。Amazonのデータサイエンティストやデータアナリストの作業環境を分離することで、セキュリティを高めることができます。さらに、ツールをデータの近くに配置することで、パフォーマンスを向上させることもできます。

Amazonは、Amazon Elastic Compute Cloud (Amazon EC2) 上でソリューションを構築するか、Amazon AppStream 2.0Amazon WorkSpacesなどのAWSのマネージド型サービスを利用するかを検討し、最終的にAppStream 2.0を採用しました。

Amazon AppStream 2.0とは?

Amazon AppStream 2.0は、マネージド型で非永続的なアプリケーションおよびデスクトップストリーミングサービスです。AppStream 2.0上でデスクトップアプリケーションを一元的に管理し、様々なデバイスに安全に配信することができます。ハードウェアやインフラストラクチャの導入、プロビジョニング、運用は不要で、ユーザー数無制限で世界中の利用者に向けてアプリケーションを配信することができます。AppStream 2.0はAWS クラウド上に構築されており、セキュリティに敏感な組織のために設計されたデータセンターとネットワークアーキテクチャの恩恵を受けることができます。

AppStream 2.0は非永続的なソリューションです。アプリケーションのアップデートやオペレーティングシステムのパッチを管理するためのイメージベースのアプローチを持つAppStream 2.0は、Amazonのニーズに最も適していました。管理者は、データサイエンティストやデータアナリストのために環境を整えることができ、アップデートの展開にかかる工数も多くはありません。

さらに、AppStream 2.0はインスタンスプロファイルを通じてIAMロールを利用する機能を備えているため、アクセスキーやシークレットキーを必要とせずに様々なAWSサービスへのアクセスを提供することができました。これにより、重要なセキュリティ要件の1つを満たすことができました。さらに、ネイティブな監査機能により、Amazonのセキュリティ監査要件を容易に満たすことができました。

最後に、Auto Scaling を使用することで、使用していない時には環境が自動的に縮小されるため、Amazonは費用対効果の高いソリューションを構築することができました。

AppStream 2.0の利用を決定した後、Amazonは1週間で構想〜検証まで完了させることができました。もしEC2を使ってVDI(仮想デスクトップ基盤)環境を構築する必要があったのなら、かなりの時間が追加で必要でした。サーバーやストリーミングゲートウェイを構築し、サードパーティーのVDIソリューションの利点と欠点を検討し、自分たちで管理しなければならなかったと思います。

ソリューション

AmazonがCOVID-19プロジェクトにAppStream 2.0を採用したことで、データサイエンティストやデータアナリストは、隔離されたデータに安全な方法でアクセスできるようになりました。ユーザーは当社の企業ネットワークに接続されている場合にのみデータにアクセスすることができます。 また、AppStream 2.0は、ファイル転送、印刷、コピー&ペーストを無効にする機能を管理者に提供しており、ユーザーが機密性の高いデータを自身のデバイスに不正に持ち出すことを防止します。

以下の図が、このソリューションの略図です。

このソリューションを実装するために、プロジェクトチームはAppStream 2.0へのエントリーポイントとしてAmazonで使用されている既存のSAML認証を使用しました。これにより、ユーザーにアクセスを許可する前に多要素認証を要求するだけでなく、ユーザーが企業ネットワークの外から環境にアクセスすることを防ぐことができます。

AppStream 2.0上ではWindowsを使用できるため、データアナリストに使い慣れたアプリケーションを使用することができます。これにより、再作業や再教育を減らすことができました。例えば、データアナリストは、ODBCドライバーを介してAmazon Redshiftのクエリを実行し、経営陣が必要とするレポートのためにデータを分析することができます。

Amazon SageMakerを使用することで、データサイエンティストはこのセキュアな環境でJupyter Notebookを使用することができる一方、ノートブックやセルをコピーすることはできません。この機能により、データサイエンティストは、COVID-19に関連するセンシティブなデータソースを使用して機械学習モデルを構築することができる一方、データをローカルデバイスにダウンロードすることができない、というセキュリティ要件も実現しました。

また、AppStream 2.0のAPIをLambdaと連携させ、ユーザーのセッション識別子が偽装されていないかをチェックしています。この機能により、ユーザーの検証とデータ漏洩防止のための別のレイヤーが作成されます。これにより、データへのアクセスを許可されたユーザーが、本人であることを保証します。

環境の監査

前の章で述べたように、要件の1つは環境の包括的な監査の実現です。Amazonでは、誰がこの環境に入ったのか、誰がどのデータに触れたのかを知る必要がありました。AppStream 2.0環境ではセキュリティイベントが発生した場合、当社のセキュリティチームはすべての活動を完全に追跡することができます。これを実現するため、AWS CloudTrailのログとAppStream 2.0の使用状況レポートを集中管理されたログの保管場所に取り込んでいます。これにより、当社のセキュリティアナリストとインシデントレスポンスチームは、誰が当社の環境にログオンしたのか、そしてそのセッション中に行われたすべてのアクションを正確に把握することができます。

収集するログの例を以下に示します。

まずCloudTrailからLogonの報を収集します。これにより、ログオンしたユーザーのユーザー IDを得ることができます。次にCloudTrailからAmazon S3 putを収集し、AppStream 2.0インスタンスのIPアドレスを取得します。最後に、AppStream 2.0の使用レポートを収集し、AppStream 2.0インスタンスのIPアドレスとユーザーIDを取得します。これにより、Amazon S3上である時点でアクティビティを実行したユーザーIDを紐付けることができます。

結論

Amazonは、COVID-19 への安全対策を行うために、COVID-19 に関連する機密性の高いデータを取り込み、キュレーションし、分析するセキュアなデータレイクを構築しました。データサイエンティストやデータアナリストがそのデータにアクセスできるようにするために、Amazonは新たなVDI環境を構築する必要がありました。

AmazonはVDIソリューションとして、EC2を使用して独自に構築するのではなく、AppStream 2.0を選択することでインフラの構築と管理に時間を費やす必要がなくなり、迅速な対応が可能になりました。また、AppStream 2.0を使用することで、ユーザーが社内環境から接続したときにのみデータにアクセスできるようにし、すべてのアクティビティが監査され、追跡可能であることを保証することができました。さらに、AppStream 2.0を使用することで、データサイエンティストやデータアナリストに、業務PCから直接アクセスする場合と比較して、より優れたパフォーマンスと一貫したユーザーエクスペリエンスを提供することができました。

AmazonがCOVID-19への安全対策を強化する中で、AppStream 2.0は機密データへの安全なアクセスを提供する上で不可欠な役割を果たし続けています。

次のステップ:

具体的な導入方法については、こちらのブログ記事(英語)もご参照ください。