13 Oracle Key VaultクライアントSDKの拡張操作管理API
Oracle Key VaultクライアントSDKには、カスタム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操作のインタフェースについて説明します。
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);
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);
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);