15 Oracle Key VaultクライアントSDKのユーティリティAPI
Oracle Key VaultクライアントSDKのユーティリティAPIは、その他のOracle Key Vault機能とともに使用することで共通の操作を簡略化できます。
Oracle Key Vaultユーティリティ関数で使用される要素と属性の索引は、「属性索引と要素索引」で説明されているものと同じ意味です。
- Oracle Key VaultクライアントSDKのユーティリティAPIについて
Oracle Key VaultクライアントSDKのユーティリティAPIは、その他のOracle Key Vault APIとともに使用することで共通の操作を簡略化できます。 - okvAttrExtractTTLV
okvAttrExtractTTLV
では、指定したOKVTTLV親オブジェクトの子OKVTTLVオブジェクトである属性をOKVAttr
に変換します。 - okvAttrMakeTTLV
okvAttrMakeTTLV
では、OKVAttr
をOKVTTLV構造体に変換します。 - okvGetTextForAttributeNum
okvGetTextForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名を返します。 - okvGetTextForTag
okvGetTextForTag
は、有効なKMIPタグの名前を返します。 - okvGetTextForTagEnum
okvGetTextForTagEnum
は、ENUMERATION
型の有効なKMIPタグに対応する列挙値の名前を返します。 - okvGetTextForTagType
okvGetTextForTagType
は、有効なKMIP型の名前を返します。 - okvGetTextLenForAttributeNum
okvGetTextLenForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名の長さを返します。 - okvObjGetAttrNo
okvObjGetAttrNo
は、特定のTTLVオブジェクトに対応するOracle Key Vault属性番号を返します。
15.1 Oracle Key VaultクライアントSDKのユーティリティAPIについて
Oracle Key VaultクライアントSDKのユーティリティAPIは、その他のOracle Key Vault APIとともに使用することで共通の操作を簡略化できます。
クライアントSDKのユーティリティAPIの要素と属性の索引は、Oracle Key Vault KMIP属性APIと同じ構造です。
15.2 okvAttrExtractTTLV
okvAttrExtractTTLV
では、指定したOKVTTLV親オブジェクトの子OKVTTLVオブジェクトである属性をOKVAttr
に変換します。
カテゴリ
KMIPユーティリティAPI
用途
okvAttrExtractTTLV
では、指定したOKVTTLV親オブジェクトの子OKVTTLVオブジェクトである属性をOKVAttr
に変換します。
構文
OKVErrNo okvAttrExtractTTLV(OKVEnv *env, OKVTTLV *attr_ttlv, OKVAttr *attr_col);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
attr_ttlv |
IN |
属性が含まれているTTLV親オブジェクト。 |
attr_col |
OUT |
属性のコレクション。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
なし。
例
OKVAttr attr_struct; ub4 index = 0; memset((void *)&attr_struct, 0, sizeof(attr_struct)); ... okvAttrExtractTTLV(env, ttlv, &attr_struct); printf("\nAttributes Extracted:"); printf("\nName: %s ", attr_struct.name[index].name); printf("\nName Length: %d ", attr_struct.name[index].namel); /* Null terminate the unique identifier */ attr_struct.unique_identifier.id[attr_struct.unique_identifier.idl] = 0; printf("\nUnique ID: %s ", attr_struct.unique_identifier.id); printf("\nUnique ID Length: %d ", attr_struct.unique_identifier.idl); printf("\nCryptographic Algorithm: %d ", attr_struct.crypto_algorithm);
関連項目
15.3 okvAttrMakeTTLV
okvAttrMakeTTLV
では、OKVAttr
をOKVTTLV構造体に変換します。
カテゴリ
KMIPユーティリティAPI
用途
okvAttrMakeTTLV
では、OKVAttr
をOKVTTLV構造に変換し、OKVTTLV内のすべての新規属性が指定されたOKVTTLV親オブジェクトの下に収集されます。
構文
OKVErrNo okvAttrMakeTTLV(OKVEnv *env, OKVAttr *attr_col OKVTTLV *attr_ttlv);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
attr_col |
IN |
属性のコレクション。 |
attr_ttlv |
OUT |
属性が含まれているTTLV親オブジェクト。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
複数インスタンス属性については、属性の数を設定する必要があります。たとえば、name
は複数インスタンス属性です。そのため、name
を追加する場合は、name_count
も指定する必要があります。
例
OKVTTLV *ttlv = (OKVTTLV *)NULL; OKVOps *ops; OKVAttr attrs; memset((void *)&attrs, 0, sizeof(attrs)); ... /* Adding name attribute to the structure */ ub4 index = 0; attrs.name_count = 1; attrs.name[index].name = "attr_name"; attrs.name[index].namel = strlen(attrs.name[index].name); attrs.name[index].type = 1; /* Adding cryptographic algo attribute to the structure */ attrs.crypto_algorithm = CRYPTO_ALG_AES; /* Adding unique identifier attribute to the structure */ attrs.unique_identifier.id = uid; attrs.unique_identifier.idl = strlen(attrs.unique_identifier.id); ops = okvOpsCreate(env, OKVOpAddAttribute); ttlv = okvTTLVGetRequest(env, ops); /* Convert OKVAttr structure to TTLV Attributes Object */ okvAttrMakeTTLV(env, &attrs, ttlv);
15.4 okvGetTextForAttributeNum
okvGetTextForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名を返します。
構文
oratext *okvGetTextForAttributeNum(OKVAttrNo attrno);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
attrno |
|
KMIP属性のOracle Key Vault属性番号。 |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIP属性の名前。 成功: KMIP属性の名前への有効なポインタ。 失敗: NULLポインタが返されます。 |
コメント
なし。
例
printf("%s", okvGetTextForAttributeNum(OKVAttrActivationDate));
15.5 okvGetTextForTag
okvGetTextForTag
は、有効なKMIPタグの名前を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForTag
は、有効なKMIPタグの名前を返します。無効なKMIPタグの場合は、NULL
値が返されます。
構文
oratext *okvGetTextForTag(OKVTag tag);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
tag |
IN |
KMIPタグ |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIPタグ名。 成功: KMIPタグ名への有効なポインタが返されます。 失敗: |
コメント
なし。
例
printf("%s", okvGetTextForTag(OKVDEF_TAG_ID));
15.6 okvGetTextForTagEnum
okvGetTextForTagEnum
は、ENUMERATION
型の有効なKMIPタグに対応する列挙値の名前を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForTagEnum
は、EMUMERATION
型の有効なKMIPタグに対応する列挙値の名前を返します。
構文
oratext *okvGetTextForTagEnum(OKVTag tag, ub4 val);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
tag |
IN |
KMIP列挙タグ |
val |
IN |
KMIP列挙タグ値 |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIP列挙タグ値の名前。 成功: KMIP列挙タグ値の名前への有効なポインタが返されます。 失敗: |
コメント
KMIPタグが無効な場合やKMIPタグの値が無効な場合、またはKMIPタグがENUMERATION
型でない場合は、NULL
値が返されます。
例
printf("%s", okvGetTextForTagEnum(OKVDEF_TAG_STATE, OKVDEF_STATE_ACTIVE));
15.7 okvGetTextForTagType
okvGetTextForTagType
は、有効なKMIP型の名前を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForTagType
は、有効なKMIP型の名前を返します。無効なKMIP型の場合は、NULL
値が返されます。
構文
oratext *okvGetTextForTagType(OKVType typ);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
typ |
IN |
KMIP型 |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIP型名。 成功: KMIP型名への有効なポインタが返されます。 失敗: |
コメント
なし。
例
printf("%s", okvGetTextForTagType(OKVDEF_ITEM_TYPE_INT));
15.8 okvGetTextLenForAttributeNum
okvGetTextLenForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名の長さを返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextLenForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名の長さを返します。
構文
ub4 okvGetTextLenForAttributeNum(OKVAttrNo attrno);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
attrno |
|
KMIP属性のOracle Key Vault属性番号。 |
戻り値
戻り値 | 説明 |
---|---|
ub4 |
属性名の長さ。 成功: バッファの長さが戻されます。 失敗: |
コメント
なし。
例
printf("%d", okvGetTextLenForAttributeNum(OKVAttrActivationDate));
15.9 okvObjGetAttrNo
okvObjGetAttrNo
は、特定のTTLVオブジェクトに対応するOracle Key Vault属性番号を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvObjGetAttrNo
は、特定のTTLVオブジェクトに対応するOracle Key Vault属性番号を返します。
構文
OKVAttrNo okvObjGetAttrNo(OKVEnv *env, OKVTTLV *ttlv);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
ttlv |
IN |
OKVTTLVオブジェクト。 |
戻り値
戻り値 | 説明 |
---|---|
OKVAttrNo |
TTLVオブジェクトのOracle Key Vault属性番号。 成功: 特定のTTLVオブジェクトに対応するOracle Key Vault属性番号が返されます。 失敗: |
コメント
なし。
例
OKVTTLV *ttlv = (OKVTTLV *) NULL; ... switch (okvObjGetAttrNo(env, ttlv)) { ... case OKVAttrObjType: ... case OKVAttrCryptoAlg: ... case OKVAttrCryptoLen: ... case OKVAttrCryptoUsageMask: ... }