尝试访问FTP站点时,我可以在凭据中使用纯文本密码,它工作得很好,但当我使用SecureString时,它无法进行身份验证。示例:
$pw = "mypw"
$ftp = [system.net.ftpwebrequest] [system.net.webrequest]::create("ftp:myserver")
$ftp.Credentials = new-object system.net.networkcredential("myuid", $pw)工作正常。但是下面的代码失败了
$pw = "mypw"
$ftp = [system.net.ftpwebrequest] [system.net.webrequest]::create("ftp:myserver")
$ss = convertto-securestring -asplaintext -force $pw
$ftp.Credentials = new-object system.net.networkcredential("myuid", $ss)但这无法进行身份验证。我误解了什么?
(顺便说一句,我知道我不想在我的脚本中使用纯文本pw。这只是一个示例。)
发布于 2011-03-15 10:21:26
这是因为除非您使用安全FTP,否则FTP无法处理纯文本用户名和密码以外的任何内容。这里有什么混淆吗?
发布于 2011-03-15 06:29:12
由于您的问题同时带有" ftp“和" security”标签,如果您想要任何安全性,我只能建议您永远不要使用ftp。使用ssh而不是telnet,使用scp而不是rcp,使用而不是ftp。否则,尝试在内存中保护密码,然后在网络上以明文发送它是毫无意义的。我可以理解在90年代使用ftp,尽管那时候我并不推荐它。但是现在呢?我看不出有什么借口。
https://stackoverflow.com/questions/5304521
复制相似问题