このドキュメントでは、Gemini Code Assist のセキュリティをサポートするコントロールについて説明します。また、これらの管理機能は、ビジネスに適用されるプライバシーと規制の要件を満たすうえでも役立ちます。
Google Cloud サービスのセキュリティ、プライバシー、コンプライアンスは責任の共有です。たとえば、Google は Google Cloud サービスが実行されるインフラストラクチャを保護し、アクセス制御などのツールを提供して、サービスとリソースにアクセスできるユーザーを管理できるようにしています。インフラストラクチャを保護する方法の詳細については、Google インフラストラクチャのセキュリティ設計の概要をご覧ください。
Gemini Code Assist のアーキテクチャ
次の図は、Gemini Code Assist アーキテクチャのコンポーネントを示しています。
コンポーネントは次のとおりです。
- オンプレミス環境では、アプリケーション デベロッパーが Visual Studio または JetBrains 用の Gemini Code Assist 拡張機能をインストールします。デベロッパーは、この拡張機能を使用して Gemini Code Assist を操作できます。
- デフォルトでは、拡張機能はインターネット経由の暗号化された TLS 接続を使用して、オンプレミス環境から Google Cloud に接続します。オンプレミス環境と Google Cloud の間に専用の保護された接続を作成するには、Cloud VPN または Cloud Interconnect を構成します。
- Google Cloud 環境内で VPC Service Controls のサービス境界を設定できます。VPC Service Controls では、信頼できる境界の外部にある Google マネージド サービスへのアクセスを禁止して、信頼できない場所からのデータへのアクセスをブロックし、データ漏洩のリスクを軽減するセキュリティ ポリシーを定義できます。
- Gemini Code Assist サービスを有効にした Google Cloud プロジェクト。Gemini Code Assist は、Gemini for Google Cloud API を使用して会話を処理します。Gemini for Google Cloud API は、プロジェクト内の他の API やリソースにアクセスできません。
組織で Cloud Workstations を使用している場合は、デベロッパーはワークステーションの Gemini Code Assist を操作できます。詳細については、Gemini Code Assist を使用してコードを記述するをご覧ください。
ほとんどの Google Cloud APIs とは異なり、Gemini for Google Cloud API は Google 提供のクライアント専用に開発された API です。この API を使用すると、これらのクライアントは Gemini Code Assist を強化するステートレス LLM にアクセスできます。これらの LLM インスタンスは、Gemini for Google Cloud API を有効にするすべての Google ユーザーが共有します。
デプロイのセキュリティ管理
このセクションでは、Google Cloud の Gemini Code Assist のセキュリティ管理について説明します。
認証
Gemini Code Assist では、アプリケーション デベロッパーが Google Cloud で認証して、ID とアクセス権限を確認する必要があります。各デベロッパーに、Cloud Identity、Google Workspace、または Cloud Identity または Google Workspace と連携させた ID プロバイダによって管理されるユーザー アカウントを設定する必要があります。詳細については、Identity and Access Management の概要をご覧ください。
アカウントを作成したら、次のセキュリティに関するベスト プラクティスを検討してください。
- 外部 ID プロバイダで認証する場合は、シングル サインオンを有効にします。
- 2 段階認証プロセスを使用して、パスワードの盗難からユーザーを保護します。
- パスワード要件を適用、監視する。
アクセス制御
Identity and Access Management(IAM)を使用して、Gemini Code Assist へのアプリケーション デベロッパーのアクセスを制御できます。IAM ロールを大規模に管理するには、アプリケーション デベロッパーのグループを作成し、Gemini Code Assist に必要な IAM ロールまたは権限をそのグループに付与することをおすすめします。IAM ロールを個々のユーザーに付与することはおすすめしません。個々の割り当てによってロールの管理と監査が複雑になる可能性があるためです。
アプリケーション デベロッパー グループにロールを割り当てるときは、最小権限の原則やその他の IAM セキュリティのベスト プラクティスに準拠してください。
グループの作成とメンバー管理には、既存の ID プロバイダのプロセスを使用します。IAM の設定の詳細については、IAM の概要をご覧ください。
Gemini Code Assist に必要な IAM ロールの詳細については、プロジェクトに Gemini Code Assist を設定するをご覧ください。アプリ デベロッパーに必要な最小権限については、高度な設定タスクをご覧ください。
管理アクティビティとアクセス アクティビティを監査するには、Gemini for Google Cloud をご覧ください。
ネットワーク セキュリティ
デフォルトでは、Gemini Code Assist を含むすべての Google Cloud サービスで、転送中のデータを保護します。
主な接続は、アプリケーション デベロッパーのワークステーションと Google Front End(GFE)間の接続です。GFE は、Google ネットワークと外部との間でトラフィックを転送するグローバルに分散されたシステムです。Gemini Code Assist は、この接続を使用してデベロッパー プロンプトを受け取って応答します。デフォルトでは、この接続は TLS を使用して保護されます。デフォルトのネットワーク保護の詳細については、転送データの暗号化をご覧ください。
組織で必要に応じて、追加のセキュリティ管理を構成して、Google Cloud ネットワーク上のトラフィックと Google Cloud ネットワークと企業ネットワーク間のトラフィックをさらに保護できます。
次の点を考慮してください。
- Cloud VPN または Cloud Interconnect を使用して、企業ネットワークと Google Cloud 間の接続のセキュリティと信頼性を最大化します。詳細については、ネットワーク接続プロダクトの選択をご覧ください。
VPC Service Controls を使用する。VPC Service Controls を使用すると、Google サービス内のデータの移動を制御し、コンテキスト ベースの境界セキュリティを設定できます。VPC Service Controls の設定の詳細については、Gemini 用に VPC Service Controls を構成するをご覧ください。
Google Cloud では、ネットワーク トポロジとして共有 VPC を検討してください。共有 VPC により、環境の分離を維持しながら、ネットワーク構成管理を一元化できます。ネットワーク トポロジの詳細については、Google Cloud ランディング ゾーンのネットワーク設計を決定するをご覧ください。
ネットワーク セキュリティのベスト プラクティスの詳細については、ネットワークを保護すると Google Cloud ランディング ゾーンのネットワーク設計を決定するをご覧ください。
データ保護とプライバシー
このセクションでは、Gemini コード アシスタンスと拡張機能がデータとプライバシーを保護する仕組みについて説明します。
顧客データ
顧客データは Google Cloud 利用規約で定義されています。お客様データの処理と保護方法については、Cloud のデータ処理に関する追加条項(お客様向け)をご覧ください。
たとえば、Gemini Code Assist と拡張機能は、次のカスタマー データを送信します。
- プロンプト データ(デベロッパーのクエリを含む)
- Gemini Code Assist からのレスポンス データ
- 追加のコンテキスト(現在の会話履歴、IDE で開いているファイルのスニペット、開いているファイルの隣に保存されているファイルのスニペット、現在のファイル内のカーソルの位置など)
Gemini Code Assist はステートレスな Google Cloud サービスであるため、プロンプトとレスポンスを Google Cloud に保存しません。必要に応じて、Gemini Code Assist を設定して、ユーザー入力とレスポンスを Cloud Logging バケットに保存できます。詳細については、Gemini ログを表示するをご覧ください。Gemini Code Assist の使用状況をモニタリングするには、Gemini for Google Cloud の使用状況をモニタリングするをご覧ください。
Google Cloud が保存データを暗号化する方法については、デフォルトの保存データの暗号化をご覧ください。
サービスデータ
サービスデータは、Google Cloud のプライバシーに関するお知らせで定義されています。
Gemini Code Assist によって収集されるサービスデータの例を次に示します。
- ユーザー分析(デベロッパーのアクションに関するデータ)
- テレメトリー データ
- Google からのフィードバック
テレメトリー データには、製品の技術的な動作を記述するデータが含まれます。テレメトリー データの例を次に示します。
- リクエストが行われたことを示すイベント(リクエストの内容は含まれません)
- レスポンスが受信されたことを示すイベント(レスポンスの内容は含まれません)
- レスポンスに対するユーザーの反応(ユーザーがレスポンスを承認または拒否したかどうかなど)
- 承認された候補の文字数
- ユーザーによるさまざまな UI 要素の操作
Gemini Code Assist エンジニアはテレメトリー データにアクセスして、プロダクトの継続的な改善に役立てることができます。
Google フィードバック フォームに含める情報はカスタマイズできます(特定のログを共有または非公開にするかどうかなど)。フィードバック履歴を表示するには、フィードバック レポートをご覧ください。
データの処理場所
Gemini Code Assist は、グローバル Google Edge ネットワークを使用して、処理するデータを受信します。通常、処理はリクエストの地理的な送信元に最も近いデータセンターで行われます。ただし、リージョンは保証されません。
データのプライバシー
データのプライバシーを保護するため、Gemini Code Assist は生成 AI テクノロジーを使用した Google のプライバシーに関する取り組みに準拠しています。このコミットメントには、次のような項目が含まれます。
- Google がお客様のデータを許可なく自社のモデルのトレーニングに使用することはありません。
- Google は、一般的なプライバシー原則に記載されているようなプライバシー原則を Gemini Code Assist の開発に組み込んでいます。
AI に関する原則について詳しくは、Google AI に関する原則をご覧ください。
Gemini Code Assist は、エクスペリエンスやおすすめのパーソナライズ、問題のトラブルシューティング、サービスのメンテナンスなど、すべてのカスタマー データのデータ処理者として機能します。Google は、請求、アカウント管理、不正行為の検出などの情報についてもデータ管理者として機能します。詳細については、Google Cloud のプライバシーに関するお知らせをご覧ください。
認定資格
Gemini Code Assist は、次の認定を受けています。
Google Cloud が準拠しているさまざまな規制枠組みと認定について詳しくは、コンプライアンス リソース センターをご覧ください。
Gemini Code Assist を安全に使用する
一般的に、AI コーディング支援を使用しているかどうかにかかわらず、アプリケーションの開発には安全なソフトウェア開発ライフサイクル(SDLC)を使用することをおすすめします。SDLC のベスト プラクティスについて詳しくは、DevOps とはと SLSA をご覧ください。
Gemini Code Assist は、生成 AI 補償サービスです。Gemini Code Assist によって生成されたコンテンツを使用した後に、著作権の問題に直面した場合、Google は、関連する潜在的な法的リスクに対して一定の責任を負います。補償の詳細については、サービス固有の規約をご覧ください。また、この問題に関するブログ投稿もご覧ください。
次のステップ
生成 AI、プライバシー、Google Cloud(PDF)をご覧ください。