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都会更新。