NCryptSetProperty 使用密钥存储提供商 (KSP) - AWS CloudHSM

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

NCryptSetProperty 使用密钥存储提供商 (KSP)

NCryptSetProperty 函数设置密钥存储对象的属性值。

参数

hObject [in]

要设置其属性的对象的句柄。您可以使用:

  • 提供程序句柄(NCRYPT_PROV_HANDLE

  • 密钥句柄(NCRYPT_KEY_HANDLE

pszProperty [in]

指向以 null 结尾的 Unicode 字符串的指针,该字符串包含要检索的属性名称。

使用时NCRYPT_PROV_HANDLE, AWS CloudHSM 密钥存储提供程序 (KSP) 支持以下 KSP 标识符:

标识符/值 说明

NCRYPT_USE_CONTEXT_PROPERTY

L"Use Context"

指向以 null 结尾的 Unicode 字符串的指针,该字符串描述了操作上下文。

使用时NCRYPT_KEY_HANDLE, AWS CloudHSM 密钥存储提供程序 (KSP) 支持以下 KSP 标识符:

标识符/值 说明

NCRYPT_KEY_USAGE_PROPERTY

L"Key Usage"

包含一组标志的 DWORD,所述标志定义密钥用量详细信息。此属性仅应用于密钥。可以包含零,也可以包含以下一个或多个值的组合。

NCRYPT_ALLOW_DECRYPT_FLAG(0x00000001)

NCRYPT_ALLOW_SIGNING_FLAG(0x00000002)

NCRYPT_LENGTH_PROPERTY

L"Length"

包含以位为单位的密钥长度的 DWORD。

NCRYPT_EXPORT_POLICY_PROPERTY

L"Export Policy"

包含标志的 DWORD,所述标志指定持久密钥的导出策略。可以包含零,也可以包含以下一个或多个值的组合。

NCRYPT_ALLOW_EXPORT_FLAG(0x00000001)

注意

值是宽字符字符串文字,如文字前的 L 所示。

pbInput [in]

包含新属性值的缓冲区的地址。cbInput 包含缓冲区的大小。

cbInput [in]

pbInput 缓冲区的大小,以字节为单位。

dwFlags [in]

修改函数行为的标志。没有为此函数定义任何标志。

返回值

该函数返回一个状态代码,指示成功或失败。

常见的返回代码包括:

返回代码 说明

ERROR_SUCCESS

操作已成功完成。

NTE_INVALID_PARAMETER

一个或多个参数无效。

NTE_FAIL

操作无法完成。

NTE_BAD_FLAGS

dwFlags 参数包含无效值。

NTE_NOT_SUPPORTED

pszProperty 参数包含不支持的值。

NTE_INVALID_HANDLE

hObject 中的句柄无效。

NTE_BAD_DATA

pbInputcbInput 所指向的数据无效。