在阅读Microsoft's documentation about DPAPI时,我发现了以下文本:
DPAPI专注于为用户提供数据保护。由于DPAPI需要密码来提供保护,因此DPAPI的逻辑步骤是使用用户的登录密码,在某种程度上,它确实使用了用户的登录密码。DPAPI实际上使用用户的登录凭据。在用户使用密码登录的典型系统中,登录凭据只是用户密码的散列。
这让我思考--那些不要求密码的账户怎么办?
我指的是Windows和IIS安装的默认帐户,例如NETWORK SERVICE、NETWORK SERVICE、NETWORK SYSTEM、ASPNET。
如果我在其中一个帐户下运行的Web应用程序中使用DPAPI,DPAPI MasterKey将使用什么凭据?
1条答案
按热度按时间ioekq8ef1#
在security.stackexchange.com中有一个非官方的(但合理的)答案:
问:
答:
另外,一个评论来纠正答案:
因此,在某种程度上,它将使用例如加密帐户凭证来导出加密密钥,但密钥本身将不受保护,并且很容易获得。
在某种程度上,MS文档也提到了这一点:DPAPI实际上使用用户的登录凭据。在用户使用密码登录的典型系统中,登录凭据只是用户密码的散列。然而,在用户使用智能卡登录的系统中,凭据将有所不同。为了简单起见,我们将使用用户密码,登录密码,或仅使用密码来引用此凭据。
但它并没有解释“证书”一词。