NL2SQLのセマンティク・ストアの使用および管理の権限

このトピックでは、管理者がセマンティック・ストアを管理したり、ユーザーがセマンティック・ストアを使用したり、OCI生成AIのセマンティック・ストア・リソースが他のOCIリソースにアクセスするために必要なIAM権限について説明します。

NL2SQLを使用したSQL検索について

SQL検索(NL2SQL)を使用して、OCI生成AIのエンタープライズ・データの自然言語リクエストを検証済SQLに変換できます。

NL2SQLは、エンタープライズAIエージェントが、基礎となるデータを移動または複製することなく、フェデレーテッド・エンタープライズ・データを操作するのに役立ちます。セマンティック・エンリッチメント・レイヤーを使用して、ビジネス用語をデータベース表、列および結合にマップし、自然言語入力からSQLを生成します。

NL2SQLはSQLのみを生成します。クエリー自体は実行されません。問合せの実行は、エンド・ユーザーのアイデンティティと適切なガードレールを使用してソース・データベースに対する問合せを認可および実行するデータベース・ツールMCPサーバーを介して個別に処理されます。

このトピックでは、IAM管理者が他のリソースにアクセスするためにセマンティック・ストア用のテナンシに追加する必要のある権限と、セマンティック・ストア管理者およびユーザーがセマンティック・ストアにアクセスしてNL2SQLツールを使用するために必要な権限について説明します。

セマンティック・ストア管理者用

セマンティック・ストア管理者は、OCI生成AIセマンティック・ストア・リソースおよびそのNL2SQL関連操作を作成、更新、削除および管理する管理者です。

管理者のIAMグループを作成するよう管理者に依頼します。このトピックでは、管理グループは次のように表されます。

  • <セマンティック・ストア- 管理者>
allow group <semantic-store-admin> 
to manage generative-ai-semantic-store 
in compartment <compartment-with-semantic-store>
allow group <semantic-store-admin> 
to manage generative-ai-nl2sql 
in compartment <compartment-with-semantic-store>
先行2つのポリシーで使用可能な管理タスク

<semantic-store-admin>では、次のことができます。

  • セマンティック・ストアの作成
  • 表示および更新
  • 削除または移動
  • トリガー・エンリッチメント
  • エンリッチメント結果の検査
  • 検証/テストのために自然言語からSQLを生成
  • ストアに関連付けられたNL2SQL操作の管理

セマンティック・ストア・ユーザー向け

セマンティック・ストア・ユーザーは、既存のセマンティック・ストアにアクセスしてNL2SQL機能を使用できるが、リソースを管理する必要がないエンド・ユーザーです。

管理者に、ユーザーのIAMグループを作成するように依頼します。このトピックでは、ユーザー・グループは次のように表されます。

  • <セマンティック・ストア・ユーザー>
allow group <semantic-store-users> 
to read generative-ai-semantic-store 
in compartment <compartment-with-semantic-store>
allow group <semantic-store-users> 
to read generative-ai-nl2sql 
in compartment <compartment-with-semantic-store>
先行2つのポリシーで使用可能なユーザータスク

<semantic-store-users>では、次のことができます。

  • セマンティック・ストアの表示
  • 関連付けられたNL2SQL関連機能を使用
  • inspectおよびqueryの出力
  • アクセス・エンリッチメント情報

OCI生成AIセマンティック・ストア向け

  • テナンシまたは指定したコンパートメントに作成されるセマンティック・ストアの動的グループを作成します。
  • 動的グループに次の権限を付与します。
    • データベース・ツール接続へのアクセス
    • データベース・メタデータの読取り
    • Autonomous Databaseメタデータの読取り
    • 生成AI推薦へのアクセス
    • データベース・ツール接続で使用されるシークレットの読取り
  1. 次の一致ルールを使用して、テナンシ内のアセマンティック・ストアの動的グループを作成します:
    all {resource.type='generativeaisemanticstore'}
  2. セマンティック・ストアを特定のコンパートメントに制限するには、前の条件を次のように更新します:
    all {resource.type='generativeaisemanticstore',
     resource.compartment.id='<your-compartment-OCID>'}
  3. ポリシーを作成して、指定されたコンパートメントのデータベース・ツール接続にアクセスする権限を動的グループに付与します。
    allow dynamic-group <dynamic-group-name> 
    to use database-tools-family in compartment <your-compartment-name>'}
  4. データベース・ツール接続で使用されるシークレットを読み取る権限を動的グループに付与するポリシーを追加します。
    allow dynamic-group <dynamic-group-name> 
    to read secret-family in compartment <your-compartment-name>
  5. データベース・ツール接続用のOracle Databaseメタデータを読み取る権限を動的グループに付与するポリシーを追加します。
    allow dynamic-group <dynamic-group-name> 
    to read database-family in compartment <your-compartment-name>
  6. データベース・ツールの接続およびエンリッチメント・ジョブのAutonomous Databaseメタデータを読み取る権限を動的グループに付与するポリシーを追加します。
    allow dynamic-group <dynamic-group-name> 
    to read autonomous-database-family in compartment <your-compartment-name>
  7. 推論のためにOCI生成AIリソースにアクセスする権限を動的グループに付与するポリシーを追加します。
    allow dynamic-group <dynamic-group-name> 
    to use generative-ai-family in compartment <your-compartment-name>
二つの政治が与えるもの

generativeaisemanticstoreリソースでは、次のことができます。

  • 生成AIによるLLM推論の起動
  • データベース・ツール接続を使用したエンリッチメントおよび問合せ
  • データベース・ツールによってバックアップされた接続に必要なシークレットの読取り
  • Oracle DatabaseおよびAutonomous Databaseメタデータの読取り