NCryptSetProperty with Key storage provider (KSP)
The NCryptSetProperty function sets property values for a key storage
object.
Parameters
-
hObject[in] -
The handle of the object whose property you want to set. You can use:
-
A provider handle (
NCRYPT_PROV_HANDLE) -
A key handle (
NCRYPT_KEY_HANDLE)
-
-
pszProperty[in] -
A pointer to a null-terminated Unicode string containing the property name to retrieve.
When using
NCRYPT_PROV_HANDLE, AWS CloudHSM Key Storage Provider (KSP) supports the following KSP identifiers:Identifier/Value Description NCRYPT_USE_CONTEXT_PROPERTY
L"Use Context"
A pointer to a null-terminated Unicode string describing the operation context.
When using
NCRYPT_KEY_HANDLE, AWS CloudHSM Key Storage Provider (KSP) supports the following KSP identifiers:Identifier/Value Description NCRYPT_KEY_USAGE_PROPERTY
L"Key Usage"
A DWORD containing a set of flags that define key usage details. This property only applies to keys. This can contain zero or a combination of one or more of the following values.
NCRYPT_ALLOW_DECRYPT_FLAG (0x00000001)
NCRYPT_ALLOW_SIGNING_FLAG (0x00000002)
NCRYPT_LENGTH_PROPERTY
L"Length"
A DWORD containing the key length in bits.
NCRYPT_EXPORT_POLICY_PROPERTY
L"Export Policy"
A DWORD containing flags that specify the persisted key's export policy. This can contain zero or a combination of one or more of the following values.
NCRYPT_ALLOW_EXPORT_FLAG (0x00000001)
Note
Values are wide-character string literal, as indicated by L before the literal.
-
pbInput[in] -
The address of a buffer that contains the new property value.
cbInputcontains the size of the buffer. -
cbInput[in] -
The size of the
pbInputbuffer in bytes. dwFlags[in]-
Flags that modify function's behavior. No flags are defined for this function.
Return Value
The function returns a status code to indicate success or failure.
Common return codes include:
| Return code | Description |
|---|---|
|
ERROR_SUCCESS |
The operation completed successfully. |
|
NTE_INVALID_PARAMETER |
One or more parameters are not valid. |
|
NTE_FAIL |
The operation couldn't complete. |
|
NTE_BAD_FLAGS |
The |
|
NTE_NOT_SUPPORTED |
The |
|
NTE_INVALID_HANDLE |
The handle in |
|
NTE_BAD_DATA |
The data pointed by |