NCryptGetProperty使用密钥存储提供程序 (KSP) - AWS CloudHSM

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

NCryptGetProperty使用密钥存储提供程序 (KSP)

NCryptGetProperty函数检索密钥存储对象的属性值。

参数

hObject[输入]

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

  • 提供者账号 (NCRYPT_PROV_HANDLE)

  • 钥匙手柄 (NCRYPT_KEY_HANDLE)

pszProperty [输入]

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

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

标识符/值 描述

NCRYPT_IMPL_TYPE_PROPERTY

L “Impl Type”

DWORD包含定义提供者实现细节的标志

NCRYPT_MAX_NAME_LENGTH_PROPERTY

L “最大名称长度”

DWORD包含永久密钥名称的最大长度(以字符为单位)。

NCRYPT_NAME_PROPERTY

L “名字”

指向包含该名称的以空结尾的 Unicode 字符串的指针。KSP

NCRYPT_VERSION_PROPERTY

L “版本”

A DWORD 包含提供者版本(高字:主要版本,低字:次要版本)。

NCRYPT_USE_CONTEXT_PROPERTY

L “使用上下文”

指向描述操作上下文的以空结尾的 Unicode 字符串的指针。

NCRYPT_SECURITY_DESCR_SUPPORT_PROPERTY

L “Security Descr Support”

表示提供者是否支持密钥的安全描述符。

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

标识符/值 描述

NCRYPT_ALGORITHM_PROPERTY

L “算法名称”

一个以空结尾的 Unicode 字符串,包含密钥的算法名称。

NCRYPT_BLOCK_LENGTH_PROPERTY

L “方块长度”

A DWORD 包含以字节为单位的加密块长度。

NCRYPT_EXPORT_POLICY_PROPERTY

L “出口政策”

一个DWORD包含标志,用于指定持久密钥的导出策略。

NCRYPT_KEY_USAGE_PROPERTY

L “密钥用法”

DWORD包含定义密钥使用细节的标志。

NCRYPT_KEY_TYPE_PROPERTY

L “密钥类型”

一个DWORD包含定义密钥类型的标志。

NCRYPT_LENGTH_PROPERTY

L “长度”

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

NCRYPT_LENGTHS_PROPERTY

L “长度”

指向包含支持的密钥大小的 NCRYPT SUPPORTED _ _ LENGTHS 结构的指针。

NCRYPT_NAME_PROPERTY

L “名字”

指向包含密钥名称的以空结尾的 Unicode 字符串的指针。

NCRYPT_SECURITY_DESCR_PROPERTY

L “安全说明”

指向包含密钥访问控制信息的 SECURITY _ DESCRIPTOR 结构的指针。

NCRYPT_ALGORITHM_GROUP_PROPERTY

L “算法组”

一个以空结尾的 Unicode 字符串,其中包含对象的算法组名。

NCRYPT_UNIQUE_NAME_PROPERTY

L “唯一名称”

指向以空结尾的 Unicode 字符串的指针,该字符串包含密钥的唯一名称。

注意

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

pbOutput[出局]

用于存储属性值的缓冲区的地址。使用指定缓冲区大小cbOutput

要确定所需的缓冲区大小,请将此参数设置为NULL。该函数将所需的大小(以字节为单位)存储在所指向的位置pcbResult

cbOutput[输入]

pbOutput缓冲区的大小(以字节为单位)。

pcbResult[出局]

指向变量的指针,该DWORD变量存储复制到pbOutput缓冲区的字节数。

如果pbOutput是NULL,则存储所需的大小(以字节为单位)。

dwFlags[输入]

用于修改函数行为的标志。你可以使用零或:

含义

NCRYPT_SILENT_FLAG

此标志无效。

如果 pszProperty 是NCRYPT_SECURITY_DESCR_PROPERTY,请使用以下一种或多种组合:

含义

OWNER_SECURITY_INFORMATION

此标志无效。

GROUP_SECURITY_INFORMATION

此标志无效。

DACL_SECURITY_INFORMATION

此标志无效。

LABEL_SECURITY_INFORMATION

此标志无效。

SACL_SECURITY_INFORMATION

此标志无效。

返回值

该函数返回指示成功或失败的状态码。

常见的返回码包括:

返回代码 描述

ERROR_SUCCESS

操作成功完成。

NTE_INVALID_PARAMETER

一个或多个参数无效。

NTE_FAIL

操作无法完成。

NTE_BAD_FLAGS

dwFlags参数包含无效值。

NTE_NOT_SUPPORTED

pszAlgId参数包含不支持的值。

NTE_INVALID_HANDLE

中的句柄hObject无效。

NTE_BUFFER_TOO_SMALL

cbOutput参数太小,无法返回值。