ICEnroll3::get_LimitExchangeKeyToEncipherment 方法 (xenroll.h)

[从 Windows Server 2008 和 Windows Vista 起,此属性不再可供使用。]

LimitExchangeKeyToEncipherment 属性设置或检索一个布尔值,该值确定AT_KEYEXCHANGE请求是否包含数字签名和不可否认的密钥用法。

此属性首先在 ICEnroll3 接口中引入。

此属性是可读写的。

语法

HRESULT get_LimitExchangeKeyToEncipherment(
  BOOL *fLimitExchangeKeyToEncipherment
);

参数

fLimitExchangeKeyToEncipherment

返回值

备注

此属性是一个布尔值,仅影响AT_KEYEXCHANGE请求。 它不会影响AT_SIGNATURE请求。

如果此属性的值为 false,则AT_KEYEXCHANGE请求将包含以下密钥用法:

  • CERT_DATA_ENCIPHERMENT_KEY_USAGE
  • CERT_KEY_ENCIPHERMENT_KEY_USAGE
  • CERT_DIGITAL_SIGNATURE_KEY_USAGE
  • CERT_NON_REPUDIATION_KEY_USAGE

如果此属性的值为 true,则AT_KEYEXCHANGE请求将包含以下密钥用法:

  • CERT_DATA_ENCIPHERMENT_KEY_USAGE
  • CERT_KEY_ENCIPHERMENT_KEY_USAGE

示例

// Get the LimitExchangeKeyToEncipherment value.
BOOL       bLimitKey;
HRESULT    hr;
// pEnroll is previously instantiated ICEnroll interface pointer.
hr = pEnroll->get_LimitExchangeKeyToEncipherment(&bLimitKey);
if (FAILED(hr))
    printf("Failed get_LimitExchangeKeyToEncipherment - %x\n", hr );
else
    printf("LimitExchangeKeyToEncipherment: %s\n",
          ( bLimitKey ? "TRUE" : "FALSE"));

// Set the LimitExchangeKeyToEncipherment value.
hr = pEnroll->put_LimitExchangeKeyToEncipherment( TRUE );
if ( FAILED ( hr ) )
    printf("Failed put_LimitExchangeKeyToEncipherment - %x\n", hr );
else
    printf( "LimitExchangeKeyToEncipherment was set to TRUE\n" );

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 xenroll.h
Library Uuid.lib
DLL Xenroll.dll

另请参阅

CEnroll

ICEnroll3

ICEnroll4

KeySpec