1K Views
February 05, 25
スライド概要
このセッションでは、GCPと既存オンプレミスシステムを利用して、医療データを高セキュリティ環境で管理、提供する方法についてご紹介します。
私たちのアプローチは、インターネットに接続しない閉域網でのデータ処理を前提としており、医療データの機密性と安全性を最優先に考えています。
また、リモート勤務を前提とした遠隔開発環境を構築しており、DaaS (Desktop as a Service) 環境には高度なセキュリティ機能を実装しています。
現在は医療従事者向けの施設横断検診ビューワーを提供しており、将来的には医療データの分析、可視化、AI活用を目指しています。
◆ チャンネル登録はこちら↓
https://www.youtube.com/c/denatech?sub_confirmation=1
◆ X(旧Twitter)
https://x.com/denaxtech
◆ DeNA Engineering
https://engineering.dena.com/
◆ DeNA Engineer Blog
https://engineering.dena.com/blog/
◆ DeNA × AI Day ‖ DeNA TechCon 2025 公式サイト
https://techcon2025.dena.dev/
DeNA が社会の技術向上に貢献するため、業務で得た知見を積極的に外部に発信する、DeNA 公式のアカウントです。DeNA エンジニアの登壇資料をお届けします。
医療向けプロダクトにおける 閉域網なクラウドネットワーク構築 1 © DeNA Co., Ltd.
⾃⼰紹介 前⽥ 幹夫 Mikio Maeda 🟩通信キャリアで、次世代ネットワークの研究開発 🟩デジタルマーケティング業界で、DWH/GPUシステム構築 🟩2019年にDeNAに⼊社し、データ基盤のクラウド移⾏ 🟩現在、医療データ統合、REST API開発、インフラ構築 🟩Webバックエンド、監視ツールなどの開発経験を経て 2022年 DeNAに⼊社しデータエンジニアのキャリアを開始 Takao Nakamoto 🟩現在は医療系データ基盤のインフラ構築‧運⽤、データ統 合のほかにリモート開発⽤のDaaS(Desktop as a Service)の 整備を担当 中本 崇⽣ 2 © DeNA Co., Ltd.
⽬次 - 3 背景と問題提起 プロダクト概要と概要図 既存ネットワークと新規GCP環境 セキュリティ施策 メディカルデータビューワー まとめ © DeNA Co., Ltd.
背景 - ⾼齢化の進展、メディカル‧ヘルスケア分野でのDXの推進 - リゾートトラスト株式会社とDeNAによる合弁会社の設⽴ - 医療データを安全に収集‧蓄積‧活⽤するセキュアなデータ基盤構築 - 複数施設のデータの集約、統合閲覧やデータ分析 東京 名古屋 ⼤阪 4 © DeNA Co., Ltd.
問題提起 - 約10カ所の検診施設にて⾼精度検診を実施 - 各検診施設の医療機器のデータ形式に互換性がない場合がある - データが集約できておらず、経年変化を確認しにくい 東京 名古屋 問題1 データ形式の互換性 問題2 データ集約 ⼤阪 5 © DeNA Co., Ltd.
プロダクト概要 - ⾼セキュリティで、既存オンプレシステムとGCPを連携する - Cloud VPN で閉域網を構築 - Private Service Connect 内部IPアドレスで GCP API を利⽤する - VPC Service Controls で特定リソースへのアクセスを制御 - リモート勤務を考慮した、独⾃カスタム DaaS(Desktop as a Service) 環境を提供 - メディカルデータビューワー - データ互換性、データ集約の問題解決 - 検診施設横断で医療データを閲覧する 6 © DeNA Co., Ltd.
医療施設 オンプレデータセンター 検診機器 VPN GCP プロジェクト : マネジメント環境 GCP プロジェクト : データ統合環境 Cloud VPN (HA VPN) Cloud Router データ転送システム VPC Service Controls VPC Service Controls BigQuery 外部テーブル DaaS (GCE) Private Service Connect dbt (Cloud Run jobs) 読影機器 DeNA 社内ネットワーク Cloud Storage BigQuery Cloud 実テーブル Workflows VPN Cloud 電子カルテ機器、その他 Scheduler Analytics Hub 自宅 GCP プロジェクト : データ利用環境 (メディカルデータビューア ) VPC Service Controls クロスリージョン内部ア プリケーションロードバ 問診、メディカルデータビューア ビューワートップページ等 BigQuery 実テーブル ランサー REST API (Cloud Run) VPN Cloud VPN (HA VPN) Cloud Router Identity Platform 認証やリアルタイムデータ連携 Private Service Connect Firestore 7 © DeNA Co., Ltd.
既存ネットワークとGCP環境 ーVPNやプライベートネットワークでのGoogleAPIの利⽤ 8 © DeNA Co., Ltd.
⾃⼰紹介 前⽥ 幹夫 Mikio Maeda 🟩通信キャリアで、次世代ネットワークの研究開発 🟩デジタルマーケティング業界で、DWH/GPUシステム構築 🟩2019年にDeNAに⼊社し、データ基盤のクラウド移⾏ 🟩現在、医療データ統合、REST API開発、インフラ構築 🟩Webバックエンド、監視ツールなどの開発経験を経て 2022年 DeNAに⼊社しデータエンジニアのキャリアを開始 Takao Nakamoto 🟩現在は医療系データ基盤のインフラ構築‧運⽤、データ統 合のほかにリモート開発⽤のDaaS(Desktop as a Service)の 整備を担当 中本 崇⽣ 9 © DeNA Co., Ltd.
医療施設 オンプレデータセンター 検診機器 VPN GCP プロジェクト : マネジメント環境 GCP プロジェクト : データ統合環境 Cloud VPN (HA VPN) Cloud Router データ転送システム VPC Service Controls VPC Service Controls BigQuery 外部テーブル DaaS (GCE) Private Service Connect dbt (Cloud Run jobs) 読影機器 DeNA 社内ネットワーク Cloud Storage BigQuery Cloud 実テーブル Workflows VPN Cloud 電子カルテ機器、その他 Scheduler Analytics Hub 自宅 GCP プロジェクト : データ利用環境 (メディカルデータビューア ) VPC Service Controls クロスリージョン内部ア プリケーションロードバ 問診、メディカルデータビューア ビューワートップページ等 BigQuery 実テーブル ランサー REST API (Cloud Run) VPN Cloud VPN (HA VPN) Cloud Router Identity Platform 認証やリアルタイムデータ連携 Private Service Connect Firestore 10 © DeNA Co., Ltd.
Private Service ConnectによるGoogle APIの利⽤⽅法の⼀例 既存端末 名前解決リクエスト storage.googleapis.com レスポンス 外部IP: 142.250.198.27 GCP プロジェクト : データ統合環境 RTネットワーク データ転送シ ステム (Windows Server) カスタムルートアドバタイ ズ機能を使って先⽅のネッ トワークにPrivate Service Connectエンドポイント IP(10.16.30.1)を広報する Cloud Router Cloud VPN (HA VPN) Private Service Connect 10.16.30.1 外部IPが レスポンスされてしまう 医療施設クラ イアント端末 (Windows) Cloud Storage Identity Platform hostsファイルに以下設定を追加 Firestore 10.16.30.1 storage.googleapis.com 10.16.30.1 firestore.googleapis.com 10.16.30.1 identitytoolkit.googleapis.com 10.16.30.1 securetoken.googleapis.com 11 © DeNA Co., Ltd.
Private Service Connect利⽤の補⾜ 🔳公開済みのサービス ‧terraform で利⽤できない 🔳VPC SC ‧⼀部の Google API で不具合あり 例: securetoken.googleapis.com Webブラウザーで CORS エラー ‧GCP サポート回答 VPC SC 設定は、⼀部のGoogle API が利⽤不可 ‧2024年7⽉時点 🔳すべての Google Cloud API ‧本システム環境への影響なし ‧暫定的に設定変更し運⽤中 12 © DeNA Co., Ltd.
セキュリティ施策の紹介 ーVPC Service Controls ーセキュアな開発環境: DaaS(Desktop as a Service) 13 © DeNA Co., Ltd.
VPC Service Controls 🔳概要 - - GCPプロジェクトにサービス境界(Service Perimeter)という論理的な囲いを作る - サービス境界外からのアクセスを制限 - サービス境界外へのデータの流出を制限 IAMではデータを完全に保護はできないため併⽤が基本 個⼈情報を取り扱うシステムでは必須級のサービス Service Perimeter Unauthorized Client Authorized Project & VPC Project Unauthorized Project Unauthorized VPC Project GCS Bucket with Sensitive Data 14 © DeNA Co., Ltd.
VPC Service Controlsの例1(データ統合環境->データ利⽤環境へのデータ連携) GCP プロジェクト : データ統合環境 VPC Service Controls (Service Perimeter) BigQuery 外部テーブル Cloud Storage dbt (Cloud Run jobs) Cloud Workflows BigQuery 実テーブル Cloud Scheduler Analytics Hub 各Service Perimeterで Ingress/Egress のルールを設定 ->Analytics Hubのデータ共 有を限られたGCPプロジェ クトに許可する GCP プロジェクト : データ利用環境 (メディカルデータビューア ) VPC Service Controls (Service Perimeter) BigQuery 実テーブル REST API (Cloud Run) Identity Platform 15 Firestore © DeNA Co., Ltd.
VPC Service Controlsの例2(DaaS->データ統合環境へのデータ参照) Access Context Managerの Access Levelにて ‧DaaSのIPアドレス ‧特定のユーザーのEmail からのアクセスを許可 GCP プロジェクト : データ統合環境 VPC Service Controls (Service Perimeter) BigQuery 外部テーブル GCP プロジェクト : マネジメント環境 Cloud Storage Cloud Workflows dbt DaaS (GCE) BigQuery 実テーブル Cloud Scheduler VPC Service Controls (Service Perimeter) (Cloud Run jobs) Analytics Hub VPC Service Controlsにて Ingress/Egress のルールを設定 ->マネジメント環境からデー タ統合環境のBigQueryなど のリソースにアクセスできる DeNA 社内ネットワーク 自宅 VPN DaaS 以外の経路からのアクセスは、ブロック 16 © DeNA Co., Ltd.
VPC Service Controls の運⽤Tips 🔳サービス境界への「ドライランモード」の活⽤ - 実際にはアクセスを制限はしないが、ログに結果出⼒されるモード - 既存‧新規のサービス境界の影響を事前検証できる - ❗既存サービス境界にドライランを適⽤する際は注意 - 紐づいたAccess Levelも巻き込まれるので意図しない情報漏洩の可能性 🔳検証できる環境(組織)を別で⽤意する - VPC Service Controlsはプロジェクトではなく組織(Organization)に対する設定 - スコープポリシーを⽤いてプロジェクト単位の設定が可能 - 通常1つの組織で運⽤するため、簡単に⼿元で検証することが難しいかも。。 - VPC Service Controls検証⽤の組織を別途作成するのがオススメ - ⼗分な検証時間を確保することで、設定ミスによる意図しない情報の 漏洩を防⽌ 17 © DeNA Co., Ltd.
DaaS(Desktop as a Service): 開発、運⽤環境 GCP プロジェクト : データ統合環境 VPC Service Controls (Service Perimeter) Cloud Storage BigQuery 外部テーブル ‧データの調査‧検証 ‧データパイプラインの開発 ‧REST APIの開発 dbt (Cloud Run jobs) Cloud Workflows BigQuery 実テーブル GCP プロジェクト : マネジメント環境 VPC Service Controls (Service Perimeter) Cloud Scheduler Analytics Hub DaaS (GCE) DeNA 社内ネットワーク GCP プロジェクト : データ利用環境 (メディカルデータビューア ) VPC Service Controls (Service Perimeter) BigQuery 実テーブル VPN REST API (Cloud Run) 自宅 Identity Platform 18 Firestore © DeNA Co., Ltd.
DaaS(Desktop as a Service): 開発、運⽤環境 Remote Desktop 接続 GCP プロジェクト : マネジメント環境 VPC Service Controls (Service Perimeter) DeNA VPN 🔳その他ポイント ‧xrdpサーバーによるローカルへのコピペ抑⽌ ‧制限付きシェル(rbash)によるコマンドの制限 ‧ClamAVによるマルウェア検知の定期実⾏ ‧定期的な画⾯キャプチャによる監視 VPC Network Ubuntu Desktop & xrdp vscode & DevContainer chrome GitHub Enterprise for DeNA 開発に必要なサービス群 Firewall Poilicy 19 その他アクセス不要な サイト‧サービス © DeNA Co., Ltd.
メディカルデータビューアー 20 © DeNA Co., Ltd.
メディカルデータビューワー (1) 検診、読影等、データ転送 ⼤阪 名古屋 (2) データ統合(=ELT等) 東京 Cloud Storage Cloud Run jobs & dbt BigQuery 問題2の対応 安全なデータの集約 問題1の対応 データ形式の統⼀の情報 Cloud VPN Private Service Connect (3) 問診、検診結果等 Analytics Hub マスターデータ Google Spreadsheet (4) バックエンド、REST API 等 Cloud Load Balancing & Cloud Run トップページへアクセス ログイン、トークン(JWT)の返却 Identity Platform リアルタイムデータ連携 検診、読影等データリクエスト ヘッダにJWTを付与 21 Firestore VPC SC で Cloud Run のサービ スアカウントのみ データ参照を許可 © DeNA Co., Ltd.
まとめ - 既存ネットワークと新規GCP環境を閉域網で接続 - Cloud VPN - Private Service Connect - 閉域網の内部IPアドレスで GCP API を提供 - 医療データへのアクセス制御 - VPC Service Controls - 下記コンテキストを元に接続許可 - ユーザーアカウント、サービスアカウント - IP アドレス、GCP プロジェクト - 独⾃のカスタマイズDaaS - メディカルデータビューワー - 全施設横断で医療データが参照可能 - 受診者の検診結果の経年変化をチェック 22 © DeNA Co., Ltd.