Excel VBA:是否可以通过VBA检索用户的windows网络密码?

Excel VBA:是否可以通过VBA检索用户的windows网络密码?,windows,oracle,vba,excel,passwords,Windows,Oracle,Vba,Excel,Passwords,我目前正在使用一个Oracle数据库,该数据库不能像它正在替换的SQL数据库那样使用受信任的连接。数据库要求为每个查询输入用户名和密码,该查询每天由多个用户运行多次。正如预期的那样,它要求每个用户使用自己的凭据登录。密码需要每三十天更新一次,就像他们的windows登录密码一样。因此,在连接字符串中保存密码是不切实际/不安全的。到目前为止,我拥有的最佳解决方案是: sConnectionString = "ODBC;DSN=" & sDatabaseName & ";UID="

我目前正在使用一个Oracle数据库,该数据库不能像它正在替换的SQL数据库那样使用受信任的连接。数据库要求为每个查询输入用户名和密码,该查询每天由多个用户运行多次。正如预期的那样,它要求每个用户使用自己的凭据登录。密码需要每三十天更新一次,就像他们的windows登录密码一样。因此,在连接字符串中保存密码是不切实际/不安全的。到目前为止,我拥有的最佳解决方案是:

sConnectionString = "ODBC;DSN=" & sDatabaseName & ";UID=" & (Environ$("Username")) & ";PWD=" & sPassword
如果用户在某个范围内键入密码时设置了sPassword,则该值将存储在变量中并从该范围中清除。这应该允许他们在每次打开工作表时输入一次密码


然而,由于许多用户是“按他们的方式设置的”,我希望能够将他们的windows密码拉入一个变量并将其传递给数据库。我理解这不太可能,但我想知道是否有一种方法可以在看不到值的情况下检索密码?

VBA无权访问用户的密码,出于安全目的也不应该访问。密码通常是单向的,您不能从文件或记录集中“读取”它们,否则它们将是多余的。即使可以,VBA也永远不会强大到足以实现这一点。@MacroMan,如果密码存储在文件或记录集中,VBA肯定会“强大到足以实现”它。问题是密码不可用。@lfrandom我知道我的评论是如何被误解的,我把它读回来了-但我并不是说VBA不能从文件或记录集中读取哈哈!我的意思是,如果有一种方法可以通过编程方式穿透操作系统来检索密码,你就不能用VBA来实现,因为它被封装在Office模型中,通常不能在这个级别与操作系统交互。谢谢,这正是我所期望的。我只是希望它可以以某种加密的形式提供。VBA无权访问用户的密码,出于安全目的也不应该访问。密码通常是单向的,你不能从文件或记录集中“读取”它们,否则它们将是多余的。即使可以,VBA也永远不会强大到足以实现这一点。@MacroMan,如果密码存储在文件或记录集中,VBA肯定会“强大到足以实现”它。问题是密码不可用。@lfrandom我知道我的评论是如何被误解的,我把它读回来了-但我并不是说VBA不能从文件或记录集中读取哈哈!我的意思是,如果有一种方法可以通过编程方式穿透操作系统来检索密码,你就不能用VBA来实现,因为它被封装在Office模型中,通常不能在这个级别与操作系统交互。谢谢,这正是我所期望的。我只是希望它能以某种加密的形式出现。