CREATE_CREDENTIAL
ユーザー認証の詳細をOracle Databaseに格納するための資格証明名を作成するには、DBMS_VECTOR.CREATE_CREDENTIAL
資格証明ヘルパー・プロシージャを使用します。
用途
データベース内で認証の資格証明を安全に管理することが目的です。こうした資格証明は、Cohere、Google AI、Hugging Face、Oracle Cloud Infrastructure (OCI) Generative AI、OpenAI、Vertex AIなどから選択したサードパーティ・サービス・プロバイダへのREST APIコール時にアクセスを可能にするために必要になります。
資格証明名は、ユーザー名、パスワード、アクセス・トークン、秘密キー、指紋などの認証パラメータを保持します。
Oracle Databaseをサービス・プロバイダとして使用している場合は、資格証明を作成する必要はありません。
警告:
データベースの特定の機能により、たとえば、REST APIへのアクセスを容易にするJSON仕様を使用して、第三者によって個別に提供されるサービスにアクセスできる場合があります。
お客様によるこれらの機能の使用は、お客様自身の責任においてのみ行われ、お客様は、当該第三者サービスの使用に関連するあらゆる条件を遵守する責任を負います。第三者のサービスに関するその他の条件にかかわらず、お客様は、かかるデータベース機能の使用によって、そのリスクを受諾し、当該アクセスにより生じた一切の損害について、Oracleの責任または法的責任を明示的に除外することになります。
構文
DBMS_VECTOR.CREATE_CREDENTIAL (
CREDENTIAL_NAME IN VARCHAR2,
PARAMS IN JSON DEFAULT NULL
);
CREDENTIAL_NAME
認証パラメータを保持するために作成する資格証明の名前を指定します。
PARAMS
選択したサービス・プロバイダに基づいて、認証パラメータをJSON形式で指定します。
{
"user_ocid" : "<user ocid>",
"tenancy_ocid" : "<tenancy ocid>",
"compartment_ocid": "<compartment ocid>",
"private_key" : "<private key>",
"fingerprint" : "<fingerprint>"
}
{ "access_token": "<access token>" }
表12-2 パラメータの詳細
パラメータ | 説明 |
---|---|
|
OCIコンソールのユーザーの詳細ページにリストされている、ユーザーのOracle Cloud Identifier (OCID)。 |
|
OCIコンソールのテナンシの詳細ページにリストされている、テナンシのOCID。 |
|
OCIコンソールのコンパートメント情報ページにリストされている、コンパートメントのOCID。 |
|
OCI秘密キー。 ノート: 生成された秘密キーは次のように表示されます:
(BEGIN とEND の行を除く) <private key string> 値を単一行または複数行として渡します。
|
|
OCIコンソールのAPIキーの下のユーザーの詳細ページにリストされている、OCIプロファイル・キーの指紋。 |
|
サードパーティ・サービス・プロバイダから取得したアクセス・トークン。 |
必要な権限
このAPIをコールするには、CREATE CREDENTIAL
権限が必要です。
例
-
生成AIの場合:
declare jo json_object_t; begin jo := json_object_t(); jo.put('user_ocid','ocid1.user.oc1..aabbalbbaa1112233aabbaabb1111222aa1111bb'); jo.put('tenancy_ocid','ocid1.tenancy.oc1..aaaaalbbbb1112233aaaabbaa1111222aaa111a'); jo.put('compartment_ocid','ocid1.compartment.oc1..ababalabab1112233abababab1111222aba11ab'); jo.put('private_key','AAAaaaBBB11112222333...AAA111AAABBB222aaa1a/+'); jo.put('fingerprint','01:1a:a1:aa:12:a1:12:1a:ab:12:01:ab:a1:12:ab:1a'); dbms_vector.create_credential( credential_name => 'OCI_CRED', params => json(jo.to_string)); end; /
-
Cohereの場合:
declare jo json_object_t; begin jo := json_object_t(); jo.put('access_token', 'A1Aa0abA1AB1a1Abc123ab1A123ab123AbcA12a'); dbms_vector.create_credential( credential_name => 'COHERE_CRED', params => json(jo.to_string)); end; /
エンドツーエンドの例:
この手順を使用してエンドツーエンドのシナリオ例を実行するには、「LLMを利用するAPIを使用したサマリーおよびテキストの生成」を参照してください。
親トピック: DBMS_VECTOR