8 Oracle Key VaultクライアントSDKの接続管理API
この項では、Oracle Key Vault接続管理のインタフェースについて説明します。
- okvConnect
okvConnect
では、Oracle Key Vaultインタフェース・セッションを開始して、Oracle Key Vaultサーバーへの接続を作成します。 - okvConnSendRecvBytes
okvConnSendRecvBytes
では、Oracle Key VaultサーバーにKMIPリクエスト・メッセージを送信して、Oracle Key Vaultサーバーから戻されたKMIPレスポンス・メッセージを取得します。 - okvConnSet
okvConnSet
は、ユーザー・クライアント接続プロバイダの設定に使用できます。このプロバイダは、Oracle Key Vaultサーバーへの接続の確立に使用できます。 - okvConnUnSet
okvConnUnSet
は、クライアント接続プロバイダを解放するために使用します。 - okvDisconnect
okvDisconnect
では、Oracle Key Vaultインタフェース・セッションを終了して、エンドポイントとOracle Key Vaultサーバーの間のSSL (Secure Sockets Layer)接続を切断します。
8.1 okvConnect
okvConnect
では、Oracle Key Vaultインタフェース・セッションを開始して、Oracle Key Vaultサーバーへの接続を作成します。
カテゴリ
接続管理API
用途
okvConnect
は、Oracle Key Vaultインタフェース・セッションを開始して、Oracle Key Vaultサーバーへの接続を作成するために使用します。それ以降のOracle Key Vault関数は、この接続を使用してOracle Key Vaultサーバーと通信します。
構文
OKVErrNo okvConnect(OKVEnv *env);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
|
IN |
Oracle Key Vault環境ハンドル。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
なし。例
OKVErrNo err_no; ... /* Setup the Oracle Key Vault Environment handle 'env' */ ... printf("Setting up Oracle Key Vault session\n"); err_no = okvConnect(env); if (err_no) { printf("Could not setup the Oracle Key Vault session\n"); return 1; } else { printf("Successfully setup Oracle Key Vault Session\n"); }
8.2 okvConnSendRecvBytes
okvConnSendRecvBytes
では、Oracle Key VaultサーバーにKMIPリクエスト・メッセージを送信して、Oracle Key Vaultサーバーから戻されたKMIPレスポンス・メッセージを取得します。
カテゴリ
接続管理API
用途
okvConnSendRecvBytes
は、Oracle Key VaultサーバーにKMIPリクエスト・メッセージを送信して、Oracle Key Vaultサーバーから戻されたKMIPレスポンス・メッセージを取得するために使用します。Oracle Key Vaultサーバーから返されるレスポンスは、Oracle Key Vaultクライアントとサーバーの間でサポートされる最大ペイロードを超えることはできません。
構文
OKVErrNo okvConnSendRecvBytes(OKVEnv *env, ub1 *reqmsg, ub4 reqmsgl, ub1 **respmsg, ub4 *respmsgl);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
reqmsg |
IN |
KMIP TTLVリクエスト・メッセージ。 |
reqmsg1 |
IN |
KMIP TTLVリクエスト・メッセージの長さ。 |
|
|
KMIP TTLVレスポンス・メッセージ。 |
|
|
KMIP TTLVレスポンス・メッセージの長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
エンドポイント・プログラムでは、レスポンス・メッセージ用の領域を割り当てる必要があります。この割り当てられた領域にレスポンス・メッセージが収まらない場合、この関数はエラーを返します。
例
OKVErrNo err_no; ... /* Setup the Oracle Key Vault Environment handle 'env' */ ... err_no = okvConnSendRecvBytes(env, (ub1 *)NULL, (ub4)0, (ub1 **)NULL, (ub4 *)0); if (err_no) { printf("Error while executing okvConnSendRecvBytes\n"); return 1; } else { printf("Successfully executed okvConnSendRecvBytes\n"); }
8.3 okvConnSet
okvConnSet
は、ユーザー・クライアント接続プロバイダの設定に使用できます。このプロバイダは、Oracle Key Vaultサーバーへの接続の確立に使用できます。
カテゴリ
接続管理API
用途
okvConnSet
は、ユーザー・クライアント接続プロバイダの設定に使用できます。このプロバイダは、Oracle Key Vaultサーバーへの接続の確立に使用できます。それ以降のOracle Key Vault関数は、この接続を使用してOracle Key Vaultサーバーと通信します。
構文
OKVErrNo okvConnSet(OKVEnv *env, void *connCtx, OKVErrNo (*connectFn)(void *ctx), void (*disconnectFn)(void *ctx), OKVErrNo (*sendRecvFn)(void *ctx, ub1 *send_bytes, ub4 send_bytes_len, ub1 **recv_bytes, ub4 *recv_bytes_len));
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
connCtx |
IN |
クライアント定義の接続コンテキスト。 |
connectFn |
IN |
クライアント定義の接続関数。 |
disconnectFn |
IN |
クライアント定義の切断関数。 |
sendRecvFn |
IN |
クライアント定義では、Oracle Key Vaultサーバーにレスポンスを送信して、Oracle Key Vaultサーバー関数からのレスポンスを受信します。 |
ctx |
IN |
クライアント定義の接続コンテキスト。 |
send_bytes |
IN |
KMIP TTLVリクエスト・メッセージ。 |
send_bytes_len |
IN |
KMIP TTLVリクエスト・メッセージの長さ。 |
recv_bytes |
IN/OUT |
KMIP TTLVレスポンス・メッセージ。 |
recv_bytes_len |
IN/OUT |
KMIP TTLVレスポンス・メッセージの長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
Oracle Key VaultクライアントSDKは、ネイティブ接続管理サポートも提供しています。エンドポイント・プログラムでは、Oracle Key VaultクライアントSDKに接続管理を任せる場合は特別な処理を実施する必要がありません。
例
/* Suppose the client has defined clientConnect(), clientDisconnect(), clientSendRecv() and clientNatCtxP for connection management. The client can make use of these functions by initializing the Oracle Key Vault environment handle with the Oracle Key Vault connection context structure */ ... OKVErrNo err_no; err_no = okvConnSet(env, clientNatCtxP, clientConnect(...), clientDisconnect(...), clientSendRecv(...)); if (err_no) { printf("Error while setting the client defined connection functions to environment handle\n"); } else { printf("Successfully set the environment handle with client defined connection functions"); }
8.4 okvConnUnSet
okvConnUnSet
は、クライアント接続プロバイダを解放するために使用します。
カテゴリ
接続管理API
用途
okvConnUnSet
は、クライアント接続プロバイダを解放するために使用します。
構文
void okvConnUnSet(OKVEnv *env);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
戻り値
値は返されません。
コメント
Oracle Key VaultクライアントSDKは、ネイティブ接続管理サポートも提供しています。エンドポイント・プログラムでは、Oracle Key VaultクライアントSDKに接続管理を任せる場合は特別な処理を実施する必要がありません。
例
okvConnUnSet(env);
8.5 okvDisconnect
okvDisconnect
では、Oracle Key Vaultインタフェース・セッションを終了して、エンドポイントとOracle Key Vaultサーバーの間のSSL (Secure Sockets Layer)接続を切断します。
カテゴリ
接続管理API
用途
okvDisconnect
により、Oracle Key Vaultインタフェース・セッションが終了され、エンドポイントとOracle Key Vaultサーバーの間のSSL接続が切断されます。
構文
OKVErrNo okvDisconnect(OKVEnv *env);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
|
|
Oracle Key Vault環境ハンドル。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
なし。例
OKVErrNo err_no; printf("Disconnnecting Oracle Key Vault Session\n"); err_no = okvDisconnect(env); if (err_no) { printf("Could not disconnect from Oracle Key Vault session\n"); return 1; } else { printf("Successfully disconnected from Oracle Key Vault Session\n"); }