在为计算机密钥分配权限时,CngKey上的SetProperty始终会更新密钥。这是正确的行为吗?

时间:2019-07-19 06:09:59

标签: cryptography public-key-encryption pki cng

在授予对MachineKey的访问权限时,对CngKey的

SetProperty始终会更新CngKey。这是正确的行为吗?

我正在对CngKey设置权限ACL。当使用SetProperty在密钥上设置权限时,每次我应用相同的权限时都会对其进行更新。(我应该针对不同的规则/权限进行更新)这不是RSACryptoServiceProvider或CAPI的行为。它不会针对应用相同的规则进行更新,而是在我们应用不同的规则时进行更新。

这是正确的行为吗?

CngProperty permissions = new CngProperty(
    NCRYPT_SECURITY_DESCR_PROPERTY,
    sec.GetSecurityDescriptorBinaryForm(),
    CngPropertyOptions.Persist | DACL_SECURITY_INFORMATION);

cngKey.SetProperty(permissions);

预期->不应为应用了相同权限的用户更新CngKey(CngKey的时间戳会更新,这意味着密钥已更新),但应针对不同的权限进行更新。

实际:->每次调用SetProperty时CngKey都会更新。

0 个答案:

没有答案