このドキュメントでは、Model Armor のフロア設定を表示して更新する方法について説明し、フロア設定違反の例を示します。
フロア設定には、主に次の 2 つの目的があります。
テンプレートの準拠: 新しいテンプレートが、フロア設定で定義されたものと同等以上の制限があることを確認します。テンプレートの準拠は、組織レベルとフォルダレベルで定義されます。
インライン適用: Model Armor の保護を Gemini モデルと Google Cloud MCP サーバーに適用します。インライン適用はプロジェクト レベルで構成されます。インライン適用にフロア設定を使用する場合は、テンプレートの準拠が必要です。
始める前に
始める前に、次のタスクを完了します。
必要な権限を取得する
フロア設定の管理に必要な権限を取得するには、Model Armor フロア設定に対する Model Armor Floor Setting 管理者(roles/modelarmor.floorSettingsAdmin)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
API を有効にする
Model Armor を使用するには、Model Armor API を有効にする必要があります。
コンソール
Enable the Model Armor API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.Model Armor を有効にするプロジェクトを選択します。
gcloud
始める前に、Google Cloud CLI で Model Armor API を使用して、次の処理を行います。
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
次のコマンドを実行して、グローバル API エンドポイントを使用します。
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.googleapis.com/"
- フォルダレベル(より具体的でない)のフロア設定: このフォルダ内のすべてのコンテンツで、悪意のある URI フィルタを有効にする必要があります。
- プロジェクト レベル(より具体的)のフロア設定: フォルダにあるプロジェクトでは、中程度の信頼度でプロンプト インジェクションとジェイルブレイクの検出を使用する必要があります。
プロジェクト レベルの設定は常にフォルダレベルの設定よりも優先されるため、プロジェクトで作成するテンプレートには、プロンプト インジェクションとジェイルブレイクの検出フィルタを含める必要があります。
別のプロジェクトで作成されたテンプレート(別のフォルダで作成されたテンプレートも含む)は、最初のフォルダの悪意のある URI フィルタ ルールの影響を受けません。
- Google Cloud コンソールで、[Model Armor] ページに移動します。
- プロジェクトを選択します。
- [Model Armor] ページで、[フロア設定] タブに移動し、[フロア設定を構成] をクリックします。
- [フロア設定の構成] ページで、構成オプションを選択します。
- [検出] セクションで、検出設定を構成します。
- 省略可: Sensitive Data Protection の検出を選択する場合は、Sensitive Data Protection の設定を構成する必要があります。
[責任ある AI] セクションで、コンテンツ フィルタごとに信頼度を設定します。
[サービス] セクションで、これらのフロア設定を適用するサービスを選択します。
[ログ] セクションで、[Cloud Logging を有効にする] を選択して、すべてのユーザー プロンプト、モデル レスポンス、フロア設定の検出機能の結果をログに記録します。
多言語検出の設定を使用するには、[多言語サポートを有効にする] を選択します。
[フロア設定を保存] をクリックします。
親のフロア設定を継承する: リソース階層の上位で設定されたフロア設定を継承します。[フロア設定を保存] をクリックして、次の手順をスキップします。継承された設定を表示するには、[フロア設定] タブに移動します。
カスタム: このプロジェクトのフロア設定を定義します。プロジェクトに定義したカスタム設定によって、継承されたフロア設定がオーバーライドされます。
無効にする: 継承されたフロア設定を無効にします。つまり、Gemini ワークロードの Model Armor テンプレートと Vertex AI に検出ルールが適用されません。[フロア設定を保存] をクリックして、次の手順をスキップします。[フロア設定] タブで無効ステータスを確認します。
Model Armor - テンプレートの作成と更新: フロア設定に従って、プロジェクト内の新規および変更済みのすべての Model Armor テンプレートに最小設定が指定されていることを確認します。
Google MCP サーバー: Google または Google Cloud リモート MCP サーバーとの間で送受信されるリクエストが、フロア設定のしきい値を満たしているかどうかを確認します。詳細については、Google Cloud MCP サーバーとの Model Armor の統合(プレビュー)をご覧ください。
Vertex AI: Gemini モデルに送信されたリクエストをスクリーニングし、フロア設定のしきい値を満たすリクエストをログに記録するかブロックします。
[Vertex AI] を選択すると、[Vertex AI] セクションが表示され、フロア設定の適用方法を選択できます。
- 検査のみ: フロア設定を満たしていないリクエストを検出しますが、ブロックしません。
- 違反を検出し、ブロックする: フロア設定を満たしていないリクエストを検出してブロックします。
Google Cloud コンソールで、[Model Armor] ページに移動します。
Model Armor を有効にしたプロジェクトが表示されていることを確認します。
[Model Armor] ページの [フロア設定] タブに移動します。フロア設定が組織レベルで設定されている場合は、ここで確認できます。フロア設定が定義されていない場合は、構成する必要があります。詳細については、フロア設定を構成するをご覧ください。
特定のプロジェクトの Model Armor のフロア設定を表示します。
gcloud model-armor floorsettings describe \ --full-uri='projects/PROJECT_ID/locations/global/floorSetting'
特定の組織の Model Armor のフロア設定を表示します。
gcloud model-armor floorsettings describe \ --full-uri='organizations/ORGANIZATION_ID/locations/global/floorSetting'
特定のフォルダの Model Armor のフロア設定を表示します。
gcloud model-armor floorsettings describe \ --full-uri='folders/FOLDER_ID/locations/global/floorSetting'
次のように置き換えます。
PROJECT_ID: フロア設定のプロジェクトの ID。FOLDER_ID: フロア設定のフォルダの ID。ORGANIZATION_ID: フロア設定の組織の ID。
特定のプロジェクトの Model Armor のフロア設定を表示します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"
特定のフォルダの Model Armor のフロア設定を表示します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://modelarmor.googleapis.com/v1/folders/FOLDER_ID/locations/global/floorSetting"
特定の組織の Model Armor のフロア設定を表示します。
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://modelarmor.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/floorSetting"
PROJECT_ID: フロア設定のプロジェクトの ID。FOLDER_ID: フロア設定のフォルダの ID。ORGANIZATION_ID: フロア設定の組織の ID。特定のプロジェクトの Model Armor のフロア設定を表示します。
特定のフォルダの Model Armor のフロア設定を表示します。
特定の組織の Model Armor のフロア設定を表示します。
特定のプロジェクトの Model Armor のフロア設定を表示します。
特定のフォルダの Model Armor のフロア設定を表示します。
特定の組織の Model Armor のフロア設定を表示します。
特定のプロジェクトの Model Armor のフロア設定を表示します。
特定のフォルダの Model Armor のフロア設定を表示します。
特定の組織の Model Armor のフロア設定を表示します。
特定のプロジェクトの Model Armor のフロア設定を表示します。
特定のフォルダの Model Armor のフロア設定を表示します。
特定の組織の Model Armor のフロア設定を表示します。
特定のプロジェクトの Model Armor のフロア設定を表示します。
特定のフォルダの Model Armor のフロア設定を表示します。
特定の組織の Model Armor のフロア設定を表示します。
特定のプロジェクトの Model Armor のフロア設定を表示します。
特定のフォルダの Model Armor のフロア設定を表示します。
特定の組織の Model Armor のフロア設定を表示します。
Google Cloud コンソールで、[Model Armor] ページに移動します。
Model Armor を有効にしたプロジェクトが表示されていることを確認します。
[Model Armor] ページで、[フロア設定] タブに移動し、[フロア設定を構成] をクリックします。
必須フィールドを更新して、[フロア設定を保存] をクリックします。
PROJECT_ID: フロア設定のプロジェクトの ID。FOLDER_ID: フロア設定のフォルダの ID。特定のプロジェクトの Model Armor のフロア設定を更新します。
curl -X PATCH -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }, "rai_settings":{"rai_filters":{"filter_type":"DANGEROUS", "confidence_level":"LOW_AND_ABOVE" }, \ "rai_filters":{"filter_type":"HATE_SPEECH", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"HARASSMENT", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"SEXUALLY_EXPLICIT", "confidence_level":"LOW_AND_ABOVE" }}},"enableFloorSettingEnforcement":"true"}' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token) \ "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"
特定のフォルダの Model Armor のフロア設定を更新します。
curl -X PATCH \ -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": {"filterEnforcement": "ENABLED" }},"enableFloorSettingEnforcement":"true"}' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://modelarmor.googleapis.com/v1/folders/FOLDER_ID/locations/global/floorSetting"
特定の組織の Model Armor のフロア設定を更新します。
curl -X PATCH \ -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }},"enableFloorSettingEnforcement":"true"}' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://modelarmor.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/floorSetting"
次のように置き換えます。
PROJECT_ID: フロア設定のプロジェクトの ID。FOLDER_ID: フロア設定のフォルダの ID。ORGANIZATION_ID: フロア設定の組織の ID。
更新コマンドは、次のレスポンスを返します。
{ "name": "projects/PROJECT_ID/locations/global/floorSetting", "updateTime": "2024-12-19T15:36:21.318191Z", "filterConfig": { "piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED" }, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" } } }
特定のプロジェクトの Model Armor のフロア設定を更新します。
特定のフォルダの Model Armor のフロア設定を更新します。
特定の組織の Model Armor のフロア設定を更新します。
特定のプロジェクトの Model Armor のフロア設定を更新します。
特定のフォルダの Model Armor のフロア設定を更新します。
特定の組織の Model Armor のフロア設定を更新します。
特定のプロジェクトの Model Armor のフロア設定を更新します。
特定のフォルダの Model Armor のフロア設定を更新します。
特定の組織の Model Armor のフロア設定を更新します。
特定のプロジェクトの Model Armor のフロア設定を更新します。
特定のフォルダの Model Armor のフロア設定を更新します。
特定の組織の Model Armor のフロア設定を更新します。
特定のプロジェクトの Model Armor のフロア設定を更新します。
特定のフォルダの Model Armor のフロア設定を更新します。
特定の組織の Model Armor のフロア設定を更新します。
特定のプロジェクトの Model Armor のフロア設定を更新します。
特定のフォルダの Model Armor のフロア設定を更新します。
特定の組織の Model Armor のフロア設定を更新します。
- 制限の緩い設定のテンプレートが、フロア設定の構成前に作成されている。
- テンプレートに必須のフィルタがありません。
- テンプレートがフィルタの最小信頼レベルを満たしていない。
- Model Armor について確認する。
- Model Armor テンプレートについて確認する。
- プロンプトとレスポンスをサニタイズする。
- Model Armor に関する問題のトラブルシューティングを行う。
フロア設定の適用
ローカル設定は常に適用されます。たとえば、フロア設定が競合する場合は、リソース階層の下位にある設定が優先されます。同様に、プロジェクト レベルで設定されたフロア設定は、その上のフォルダレベルで設定された競合するフロア設定をオーバーライドします。
次の表に、さまざまな場所でフロア設定がどのように適用されるかを示します。
| フロア設定の場所 | アプリケーション |
|---|---|
| 組織レベル | 組織内のすべてのものに適用されます。 |
| フォルダレベル | 特定のフォルダ内のすべてのプロジェクトに適用されます。 |
| プロジェクト レベル | 特定のプロジェクトにのみ適用されます。 |
さまざまなレベルで設定されたフロア設定がどのように適用されるかを示すため、次のシナリオ例を考えてみましょう。次のようなフロア設定を行うとします。
このシナリオでは、設定した内容に応じて次の処理が行われます。
フロア設定は、組織レベルで設定されていない限り、階層内の特定の場所でのみ適用されます。組織レベルで設定されている場合は、組織全体に適用されます。
テンプレートとフロア設定の準拠
Model Armor テンプレートが作成または更新されると、Model Armor はテンプレートの構成がフロア設定に準拠しているかどうかを確認します。フロア設定よりも厳しくないテンプレートを作成または更新することはできません。
フロア設定は、組織レベル、フォルダレベル、プロジェクト レベルで設定できます。ユーザー インターフェースはプロジェクト レベルでのみ使用でき、組織レベルまたはフォルダレベルの設定を継承できます。組織レベルまたはフォルダレベルでフロア設定を行うには、API を使用する必要があります。
Vertex AI および Google Cloud MCP サーバーとの統合
Model Armor は Vertex AI および Google Cloud MCP サーバーと統合され、定義されたフロア設定に基づいて Gemini モデルとGoogle Cloud リモート MCP サーバーからのリクエストとレスポンスをスクリーニングします。プロンプトとレスポンスを可視化するには、Cloud Logging を有効にする必要があります。詳細については、Vertex AI との Model Armor の統合と Google Cloud MCP サーバーとの Model Armor の統合をご覧ください。
フロア設定の構成
フロア設定を使用して、Model Armor テンプレートの最小検出しきい値を構成します。これらの設定により、新規および変更済みのテンプレートがすべて特定の要件を満たしていることを確認します。
フロア設定を構成する手順は次のとおりです。
フロア設定の変更が反映されるまで数分待ちます。
フロア設定の継承方法を定義する
フロア設定を構成するときに、構成オプションを選択します。
フロア設定の適用先を定義する
構成したフロア設定が適用される次のいずれかのサービスを選択します。
Model Armor のフロア設定を表示する
Model Armor のフロア設定を表示して、既存の設定の確認、AI アプリケーションの最小要件の特定、テンプレートが想定どおりに動作しない場合の問題のトラブルシューティングを行います。
次のコマンドを実行して、Model Armor のフロア設定を表示します。
コンソール
gcloud
REST
次のように置き換えます。
C#
このコードを実行するには、まず C# 開発環境を設定し、Model Armor C# SDK をインストールします。
Go
このコードを実行するには、まず Go 開発環境を設定し、Model Armor Go SDK をインストールします。
Java
このコードを実行するには、まず Java 開発環境を設定し、Model Armor Java SDK をインストールします。
Node.js
このコードを実行するには、まず Node.js 開発環境を設定し、Model Armor Node.js SDK をインストールします。
PHP
このコードを実行するには、まず PHP 開発環境を設定し、Model Armor PHP SDK をインストールします。
Python
このコードを実行するには、まず Python 開発環境を設定し、Model Armor Python SDK をインストールします。
Model Armor のフロア設定を更新する
Model Armor のフロア設定を更新して、セキュリティ ポリシーの変更を反映するためのテンプレートの最小要件の変更、構成ミスの修正、フロア設定間の競合の解決を行います。
次のコマンドを実行して、Model Armor のフロア設定を更新します。
コンソール
gcloud
gcloud model-armor floorsettings update --full-uri=<full-uri-of-the-floorsetting>
コマンドの例:
gcloud model-armor floorsettings update \
--malicious-uri-filter-settings-enforcement=ENABLED \
--pi-and-jailbreak-filter-settings-enforcement=DISABLED \
--pi-and-jailbreak-filter-settings-confidence-level=LOW_AND_ABOVE \
--basic-config-filter-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "low_and_above", "filterType": "HARASSMENT"}, {"confidenceLevel": "high", "filterType": "SEXUALLY_EXPLICIT"}]'
--full-uri='folders/FOLDER_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=true
多言語検出を有効にしてフロア設定を構成するには、次のコマンドを実行します。
gcloud model-armor floorsettings update \
--full-uri=projects/PROJECT_ID/locations/global/floorSetting \
--enable-multi-language-detection
次のように置き換えます。
REST
C#
このコードを実行するには、まず C# 開発環境を設定し、Model Armor C# SDK をインストールします。
Go
このコードを実行するには、まず Go 開発環境を設定し、Model Armor Go SDK をインストールします。
Java
このコードを実行するには、まず Java 開発環境を設定し、Model Armor Java SDK をインストールします。
Node.js
このコードを実行するには、まず Node.js 開発環境を設定し、Model Armor Node.js SDK をインストールします。
PHP
このコードを実行するには、まず PHP 開発環境を設定し、Model Armor PHP SDK をインストールします。
Python
このコードを実行するには、まず Python 開発環境を設定し、Model Armor Python SDK をインストールします。
フロア設定違反に関する検出結果を確認する
各 Model Armor の検出結果は、フロア設定の違反を特定します。Model Armor テンプレートがリソース階層のフロア設定で定義された最小セキュリティ基準を満たしていない場合に違反が発生します。フロア設定では、テンプレートの最小要件を定義します。
次のいずれかのフロア設定違反が発生すると、検出結果が生成されます。
違反が検出されると、Security Command Center に重大度の高い検出結果が生成されます(Security Command Center のプレミアム サービスティアまたはエンタープライズ サービスティアを使用している場合のみ)。この検出結果は、違反したフロア設定、非準拠のテンプレート、違反の詳細が示します。
次の例は、検出結果の sourceProperties フィールドを示しています。悪意のある URI フィルタに関連するこの違反は、maliciousUriFilterSettings のテンプレート設定が DISABLED であるのに対し、フロア設定では ENABLED にする必要があるために発生しました。
{ "filterConfig": { "raiSettings": { "raiFilters": [ { "filterType": "HATE_SPEECH", "confidenceLevel": { "floorSettings": "LOW_AND_ABOVE", "template": "MEDIUM_AND_ABOVE" } }, { "filterType": "HARASSMENT", "confidenceLevel": { "floorSettings": "MEDIUM_AND_ABOVE", "template": "HIGH" } } ] }, "piAndJailbreakFilterSettings": { "confidenceLevel": { "floorSettings": "LOW_AND_ABOVE", "template": "HIGH" } }, "maliciousUriFilterSettings": { "floorSettings": "ENABLED", "template": "DISABLED" } } }
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2026-01-19 UTC。