Gemini Code Assist Standard ライセンスと Enterprise ライセンスを管理する

Gemini Code Assist Standard と Enterprise を使用するには、組織内の各ユーザーにライセンスが必要です。

デフォルトでは、すべてのサブスクリプションでライセンスの自動割り当てが有効になっています。必要な権限を持つ組織内のユーザーは、サポートされている IDE で Gemini Code Assist の使用を開始すると、ライセンスが自動的に割り当てられます。これらの権限については、このドキュメントの後半で詳しく説明します。Gemini Code Assist を設定したら、ライセンスの割り当てを手動で行うか、自動割り当てを続行するかを選択できます。

関連する請求先アカウントにリンクされているプロジェクトにアクセスできるユーザーには、ライセンスを割り当てることができます。

始める前に

  • 請求先アカウント管理者(roles/billing.admin)または Consumer Procurement Order 管理者(roles/consumerprocurement.orderAdmin)の IAM ロールが付与されていることを確認します。このロールにより、次のセクションで説明されている特定のライセンス管理タスクに必要な権限を請求先アカウントに付与できます。

  • Gemini Code Assist が設定されていることを確認します。

  • Google Cloud コンソールではなく API を使用してライセンスを管理する場合は、次の点を確認してください。

サブスクリプション内の Gemini Code Assist Standard ライセンスと Enterprise ライセンスの数を変更する

Gemini Code Assist ライセンスの数は、 Google Cloud コンソールから直接、または Google アカウント担当者または正規販売パートナー経由で追加または削除できます。

Gemini Code Assist Standard ライセンスと Enterprise ライセンスの割り当てを表示する

次のオプションのいずれかを選択します。

コンソール

  1. サブスクリプションを所有する請求先アカウントに対して、次の IAM 権限があることを確認します。

    • billing.accounts.get
    • consumerprocurement.orders.get
    • consumerprocurement.licensePools.get
    • consumerprocurement.licensePools.enumerateLicensedUsers
    • resourcemanager.projects.get
  2. [Gemini の管理] ページに移動し、Gemini Code Assist Standard または Enterprise サブスクリプションの請求先アカウントに関連付けられているプロジェクトを選択します。

    [Gemini の管理] に移動

  3. 変更するサブスクリプションを選択して、[サブスクリプションを変更] を選択します。

    ライセンスが割り当てられている各ユーザーについて、次の情報を確認できます。

    • 名前。
    • メール。
    • ライセンスが割り当てられた日付。
    • ライセンスが最後に使用された日時。
  4. 特定のユーザーセットを検索するには、次のようにリストをフィルタして並べ替えます。

    • リストをフィルタするには、[フィルタ] フィールドにプロパティと値を入力します。
    • リストを並べ替えるには、並べ替えるキーの列見出しを選択します。たとえば、ユーザー名をアルファベット順に並べ替えるには、[名前] 列の見出しを選択します。

API

Gemini Code Assist Standard または Enterprise のライセンスの割り当てを表示するには、billingAccounts.orders.licensePool.enumerateLicensedUsers メソッドを使用します。

  1. ライセンス割り当てを表示するライセンス プールを含む請求先アカウントに対する consumerprocurement.licensePools.enumerateLicensedUsers IAM 権限があることを確認します。

  2. cURL を使用してメソッドを呼び出します。

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://cloudcommerceconsumerprocurement.googleapis.com/v1/billingAccounts/BILLING_ACCOUNT_ID/orders/ORDER_ID/licensePool:enumerateLicensedUsers/"
    

    次のように置き換えます。

    • PROJECT_ID: プロジェクトの ID。API リクエストに関連付けられた割り当ての使用量と料金は、このプロジェクトに適用されます。
    • BILLING_ACCOUNT_ID: ライセンス プールに関連付けられている請求先アカウントの ID。
    • ORDER_ID: オーダー ID。オーダー ID がわからない場合は、請求先アカウントに関連付けられているオーダーのリストを表示して取得できます。

このコマンドが成功すると、licensedUsers の出力が次の形式で返されます。

{
  "licensedUsers": [
      {
          "username": "dana@example.com",
          "assignTime": "2024-09-26T16:24:40.559222Z"
      },
      {
          "username": "lee@example.com",
          "assignTime": "2024-09-26T16:24:40.559222Z"
      },
      {
          "username": "taylor@example.com",
          "assignTime": "2024-09-26T16:24:40.559222Z"
      },
      {
          "username": "bola@example.com",
          "assignTime": "2024-09-26T16:24:14.610828Z"
      }
  ]
}

Gemini Code Assist Standard または Enterprise のライセンス割り当てがない場合、または ORDER_ID が無効な場合、次の形式で licensedUsers 出力が返されます。

{}

Gemini Code Assist Standard ライセンスと Enterprise ライセンスを自動的に割り当てる

サブスクリプションのライセンスの自動割り当てを有効にできます。

ライセンスの自動割り当ては、VS Code、IntelliJ、その他のサポートされている JetBrains IDE でのみサポートされています。

Gemini Code Assist Standard または Enterprise のライセンスを自動的に割り当てる場合、そのアカウントの個々のユーザー ライセンスを削除または追加することはできません。ライセンスが割り当てられているが Gemini Code Assist Standard または Enterprise の機能を使用していないユーザーは、管理者が設定した非アクティブ期間の終了時に自動的にプロビジョニング解除されます。

  1. Google Cloud コンソールで、[Gemini の管理] ページに移動します。

    [Gemini の管理] に移動

  2. [Gemini Code Assist を管理]、[サブスクリプションを管理] の順に選択します。

  3. [ライセンスの管理]、[ライセンスの自動割り当てを有効にする] の順に選択します。[Enable automatic licenses] ダイアログが表示されます。

    このサブスクリプションをライセンスの自動割り当てに切り替えると、変更後にライセンスの手動割り当てが無効になりますが、既存のライセンス割り当てには影響しません。

  4. 割り当て先がアクティブでない場合の、ライセンスの割り当て解除までの時間を設定し、[変更を確認] を選択します。[ライセンスの自動割り当てが有効になりました] ダイアログが表示されます。

    割り当て解除までの非アクティブ期間を T 日に構成した場合、ライセンスは自動的に割り当て解除され、T+1 日目にライセンス プールで使用可能になります。たとえば、割り当て解除までの非アクティブ期間を 7 日に構成した場合、ライセンスは 8 日目に割り当て解除され、ライセンス プールで使用可能になります。

  5. [閉じる] を選択します。

  6. ライセンス取得ユーザーに対して、Gemini for Google Cloud ユーザーと Service Usage コンシューマーの IAM ロールを付与します。

    cloudaicompanion.licenses.selfAssign 権限を持つユーザーは、ライセンスの自動割り当てが構成された有効なサブスクリプションと請求先アカウントのサブスクリプションで利用可能なライセンスがある、請求先アカウントで支払われたプロジェクトで Gemini Code Assist Standard または Enterprise に初めてアクセスしたときに、ライセンスを自動的に受け取ります。

ライセンスの自動割り当てを無効にする手順は次のとおりです。

  1. Google Cloud コンソールで、[Gemini の管理] ページに移動します。

    [Gemini の管理] に移動

  2. [Gemini Code Assist を管理]、[サブスクリプションを管理] の順に選択します。

  3. [ライセンス管理]、[ライセンスの自動割り当てを管理する] の順に選択します。[ライセンスの自動割り当てを管理する] ダイアログが表示されます。

  4. [自動ライセンス管理を無効にする] を選択します。

  5. [変更を確認] を選択します。

Gemini Code Assist Standard ライセンスと Enterprise ライセンスを個々のユーザーに手動で割り当てる

ライセンスの割り当てを手動で行う場合は、ユーザーのライセンスを個別に追加または削除できます。この方法では、Gemini Code Assist にアクセスできるユーザーを直接制御できるため、特定のユーザーセットにアクセス権を付与する場合に最適です。

次のオプションのいずれかを選択します。

コンソール

  1. サブスクリプションを所有する請求先アカウントに対して、次の IAM 権限があることを確認します。

    • billing.accounts.get
    • consumerprocurement.orders.get
    • consumerprocurement.licensePools.get
    • consumerprocurement.licensePools.enumerateLicensedUsers
    • consumerprocurement.licensePools.assign
    • resourcemanager.projects.get
  2. [Gemini の管理] ページに移動します。

    [Gemini の管理] に移動

  3. [Gemini Code Assist を管理]、[サブスクリプションを変更] の順に選択します。

  4. この Gemini Code Assist Standard または Enterprise サブスクリプションの [ライセンスの割り当て] を [Manually Assign Licenses] に設定します。Gemini Code Assist Standard または Enterprise サブスクリプションが [ライセンスを自動的に割り当てる] に設定されている場合、個々のライセンスを管理することはできません。この請求先アカウントを [Manually Assign Licenses] に切り替えると、変更後にライセンスの自動割り当てが無効になりますが、既存のライセンス割り当てには影響しません。

  5. [Add licensed user] を選択します。ユーザー選択のダイアログが表示されます。@gmail.com@googlegroups.com、Google Workspace ドメインなど、個人の Google アカウントのメールアドレスのみがサポートされています。Workforce Identity 連携(BYOID)はサポートされていません。

  6. [Add licensed user] を選択します。

  7. ライセンス取得ユーザーに対して、Gemini for Google Cloud ユーザーと Service Usage コンシューマーの IAM ロールを付与していることを確認します。

API

Gemini Code Assist Standard と Enterprise のライセンスを割り当てるには、billingAccounts.orders.licensePool.assign メソッドを使用します。

  1. 割り当てるライセンスのライセンス プールを含む請求先アカウントに対して、次の IAM 権限があることを確認します。
  • billing.accounts.get
  • consumerprocurement.licensePools.assign
  • consumerprocurement.licensePools.get
  • consumerprocurement.licensePools.unassign
  • consumerprocurement.orders.get
  1. 次の情報が含まれる JSON ファイルを作成します。

    {
      "usernames": [
        USER_EMAILS
      ]
    }
    

    USER_EMAILS は、ライセンスが割り当てられているユーザー アカウントのカンマ区切りリストに置き換えます(例: "dana@example.com", "lee@example.com")。@gmail.com@googlegroups.com、Google Workspace ドメインなど、個人の Google アカウントのメールアドレスのみがサポートされています。Workforce Identity 連携(BYOID)はサポートされていません。

  2. cURL を使用してメソッドを呼び出します。

    curl -X POST --data-binary @JSON_FILE_NAME \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://cloudcommerceconsumerprocurement.googleapis.com/v1/billingAccounts/BILLING_ACCOUNT_ID/orders/ORDER_ID/licensePool:assign/"

    次のように置き換えます。

    • JSON_FILE_NAME: 手順 2 で作成した JSON ファイルのパス。
    • PROJECT_ID: プロジェクトの ID。API リクエストに関連付けられた割り当ての使用量と料金は、このプロジェクトに適用されます。
    • BILLING_ACCOUNT_ID: ライセンス プールに関連付けられている請求先アカウントの ID。
    • ORDER_ID: オーダー ID。オーダー ID がわからない場合は、請求先アカウントに関連付けられているオーダーの一覧を表示して取得できます。

成功すると、レスポンスは次のようになります。

{}

割り当てを確認するには、割り当てのリストを表示します。

次に、ライセンスを持つユーザーに対して、Gemini for Google Cloud ユーザーと Service Usage コンシューマーの IAM ロールを付与していることを確認します。

Gemini Code Assist Standard ライセンスと Enterprise ライセンスの割り当てを手動で解除する

次のオプションのいずれかを選択します。

コンソール

  1. サブスクリプションを所有する請求先アカウントに対して、次の IAM 権限があることを確認します。

    • billing.accounts.get
    • consumerprocurement.orders.get
    • consumerprocurement.licensePools.get
    • consumerprocurement.licensePools.enumerateLicensedUsers
    • consumerprocurement.licensePools.unassign
    • resourcemanager.projects.get
  2. [Gemini の管理] ページに移動します。

    [Gemini の管理] に移動

  3. [Gemini Code Assist を管理]、[サブスクリプションを管理] の順に選択します。

  4. [ライセンス管理]、[ライセンスの自動割り当てを管理する] の順に選択します。[ライセンスの自動割り当てを管理する] ダイアログが表示されます。

  5. ライセンスの割り当てを解除するユーザーを選択して、[ライセンスの割り当てを解除する] を選択します。

  6. [確認] を選択します。

API

Gemini Code Assist Standard と Enterprise のライセンスの割り当てを解除するには、billingAccounts.orders.licensePool.unassign メソッドを使用します。

  1. このタスクを行うには、ライセンスの割り当てを解除するライセンス プールを含む請求先アカウントに対する consumerprocurement.licensePools.unassign Identity and Access Management(IAM)権限が必要です。

  2. 次の情報が含まれる JSON ファイルを作成します。

    {
      "usernames": [
        USER_EMAILS
      ]
    }
    

    USER_EMAILS は、ライセンスが割り当てられているユーザー アカウントのカンマ区切りリストに置き換えます(例: "dana@example.com", "lee@example.com")。

  3. cURL を使用してメソッドを呼び出します。

    curl -X POST --data-binary @JSON_FILE_NAME \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    -H "Content-Type: application/json" \
    "https://cloudcommerceconsumerprocurement.googleapis.com/v1/billingAccounts/BILLING_ACCOUNT_ID/orders/ORDER_ID/licensePool:unassign/"

    次のように置き換えます。

    • JSON_FILE_NAME: 手順 2 で作成した JSON ファイルのパス。
    • PROJECT_ID: プロジェクトの ID。API リクエストに関連付けられた割り当ての使用量と料金は、このプロジェクトに適用されます。
    • BILLING_ACCOUNT_ID: ライセンス プールに関連付けられている請求先アカウントの ID。
    • ORDER_ID: オーダー ID。オーダー ID がわからない場合は、請求先アカウントに関連付けられているオーダーの一覧を表示して取得できます。

成功すると、レスポンスは次のようになります。

{}

割り当てが解除されたことを確認するには、割り当てのリストを表示します。

Gemini Code Assist Standard ライセンスと Enterprise ライセンスを移行する

Gemini Code Assist Standard ライセンスと Enterprise ライセンスは、ユーザー間で直接転送することはできません。代わりに、ユーザーからライセンスの割り当てを解除してから、新しいユーザーにライセンスを割り当ててください。

組織間のライセンス使用を防止する

Gemini Code Assist Standard ライセンスと Enterprise ライセンスは、組織やプロジェクトではなく個々のユーザーに割り当てられます。これにより、個々のユーザーは複数の組織で Gemini Code Assist Standard と Enterprise を使用できます。

Gemini Code Assist で生成されたログは、使用が発生したプロジェクトに保存され、ライセンシーには保存されません。また、Gemini Code Assist のカスタマイズや構成(コードのカスタマイズなど)は、ライセンスまたはサブスクリプション レベルではなく、プロジェクトで行われます。

大規模な組織では、組織内の特定のプロジェクトで Gemini Code Assist Standard または Enterprise を使用できないようにしたい場合があります。たとえば、特定のプロジェクトに異なる請求先アカウントがある場合や、異なるプロジェクトが異なるテナンシーとツールを持つ異なる顧客に関連付けられている場合などです。

このような場合、プロジェクトで Gemini Code Assist Standard と Enterprise の組織をまたいだ使用を防止するには、次のいずれかを行います。

制限事項