13 Oracle Key Vault拡張操作管理API
Oracle Key Vaultには、カスタムKMIPリクエストの実行に使用する操作が用意されています。
- Oracle Key VaultクライアントSDKの拡張操作管理APIについて
この項では、カスタムKMIPリクエストの実行に使用するOracle Key Vault操作のインタフェースについて説明します。 - okvOpsCreate
okvOpsCreateでは、カスタムKMIP操作の実行に使用するためのOracle Key Vault操作ハンドルを作成します。 - okvOpsExecuteOp
okvOpsExecuteOpでは、1つ以上のカスタムKMIP操作を実行します。 - okvOpsFree
okvOpsFreeでは、Oracle Key Vault操作ハンドルを解放します。
13.1 Oracle Key VaultクライアントSDKの拡張操作管理APIについて
この項では、カスタムKMIPリクエストの実行に使用するOracle Key Vault操作のインタフェースについて説明します。
親トピック: Oracle Key Vault拡張操作管理API
13.2 okvOpsCreate
okvOpsCreateでは、カスタムKMIP操作の実行に使用するためのOracle Key Vault操作ハンドルを作成します。
カテゴリ
KMIP拡張操作管理API
用途
okvOpsCreateでは、カスタムKMIP操作の実行に使用することになるOracle Key Vault操作ハンドルを作成します。
構文
OKVOps *okvOpsCreate(OKVEnv *env, OKVOpsNo ops);
パラメータ
| パラメータ | IN/OUT | 説明 |
|---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル |
ops |
IN |
KMIP操作 |
戻り値
| 戻り値 | 説明 |
|---|---|
OKVOps* |
Oracle Key Vault操作ハンドル。 成功: Oracle Key Vault操作ハンドルへの有効なポインタが返されます。 失敗: |
コメント
Oracle Key Vault KMIP拡張APIを使用すると、KMIPレスポンス・パケットを取得するためにOracle Key Vaultサーバーに送信できるカスタムOKVTTLVリクエスト・パケットを作成できます。カスタムOKVTTLVリクエスト・パケットによる操作は、カスタムKMIP操作です。
Oracle Key Vault KMIP拡張APIでは、KMIPレスポンスを解析することもできます。操作が実行されると、Oracle Key Vault操作ハンドルはOracle Key VaultサーバーからのOKVTTLVレスポンス・パケットも保持します。
例
OKVTTLV *req = (OKVTTLV *) NULL;
OKVTTLV *attr_in = (OKVTTLV *)NULL;
...
OKVOps *op = okvOpsCreate(env, OKVOpAddAttribute);
req = okvTTLVGetRequest(env, op);
attr_in = okvAddAttributeObject(env, req, OKVAttrName, 0);
okvAttrAddName(env, attr_in, "XYZ", strlen("XYZ"), 1);
okvAddAttribute(env, uid, &attr_in);親トピック: Oracle Key Vault拡張操作管理API
13.3 okvOpsExecuteOp
okvOpsExecuteOpでは、1つ以上のカスタムKMIP操作を実行します。
カテゴリ
KMIP拡張操作管理API
用途
okvOpsExecuteOpは、1つ以上のカスタムKMIP操作を実行するために使用します。操作はバッチ処理されて実行されます。
構文
OKVErrNo okvOpsExecuteOp(OKVEnv *env, OKVOps **opsr, ub4 ops_cnt);
パラメータ
| パラメータ | IN/OUT | 説明 |
|---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
opsr |
IN |
Oracle Key Vault操作ハンドル。 |
ops_cnt |
IN |
Oracle Key Vault操作ハンドルの数。 |
戻り値
| 戻り値 | 説明 |
|---|---|
OKVErrNo |
Oracle Key Vaultエラー番号 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
opsrは、バッチ処理されて実行される操作の配列です。ops_cntは、バッチ処理される操作の数です。
エラー・ハンドルには、Oracle Key Vaultサーバーから戻されたエラーが保持されます。ただし、このエラーは操作配列内のすべての操作に必要なわけではありません。エラーが発生した場合でも、Oracle Key Vault操作ハンドルでは有効なレスポンス・パケットを確認する必要があります。
操作配列を解釈する順序はありません。3番目の操作の結果が、最初の操作の結果の前に処理される可能性があります。
例
OKVTTLV *req = (OKVTTLV *) NULL;
OKVTTLV *attr_in = (OKVTTLV *)NULL;
OKVTTLV *template;
OKVOps *ops[2];
...
/* First Batch Operation */
ops[0] = okvOpsCreate(env, OKVOpCreate);
req = okvTTLVGetRequest(env, ops[0]);
okvAttrAddObjectType(env, req, OKVObjSymmetric);
template = okvTTLVAddToObject(env, req, OKVDEF_TAG_TEMPLATE_ATTR_ST,
OKVDEF_ITEM_TYPE_STRUCT, (void *) NULL,
(ub4) 0);
attr_in = okvAddAttributeObject(env, template, OKVAttrCryptoAlg, 0);
okvAttrAddCryptoAlgo(env, attr_in, (ub4) CRYPTO_ALG_AES);
attr_in = okvAddAttributeObject(env, template, OKVAttrCryptoLen, 0);
okvAttrAddCryptoLen(env, attr_in, (ub4) 128);
attr_in = okvAddAttributeObject(env, template, OKVAttrCryptoUsageMask, 0);
okvAttrAddCryptoUsageMask(env, attr_in, (ub4) 12);
/* Second Batch Operation */
ops[1] = okvOpsCreate(env, OKVOpActivate);
req = okvTTLVGetRequest(env, ops[1]);
/* Execute Batch Operation */
okvOpsExecuteOp(env, ops, 2);関連項目
親トピック: Oracle Key Vault拡張操作管理API
13.4 okvOpsFree
okvOpsFreeでは、Oracle Key Vault操作ハンドルを解放します。
カテゴリ
KMIP拡張操作管理API
用途
okvOpsFreeは、Oracle Key Vault操作ハンドルを解放するために使用します。
構文
void okvOpsFree(OKVEnv *env, OKVOps **ops);
パラメータ
| パラメータ | IN/OUT | 説明 |
|---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル |
ops |
IN |
Oracle Key Vault操作ハンドル |
戻り値
なし。
コメント
なし。
例
OKVOps ops = okvOpsCreate(env, OKVOpCreate); ... okvOpsFree(env, &ops);
親トピック: Oracle Key Vault拡張操作管理API