我正在尝试使用Runspace Factory在C#中作为另一个用户运行powershell命令。在每个例子中,我发现有使用WSManConnectionInfo
和PSCredential
的建议,需要“SecureString”作为密码。这是我第一次听说过SecureString。用法示例包括:
var con = new WSManConnectionInfo();
con.Credential = new PSCredential(strDomain + "\\" + strUser, strPW.ToSecureString());
没有名为“ToSecureString”的字符串扩展方法,所以我在这里不知道如何添加它。如何向字符串添加ToSecureString方法?
这很可能是一个或多或少定义的扩展方法:
public static class SecureExtensions
{
public static SecureString ToSecureString(this string password)
{
var secure = new SecureString();
foreach (char c in password.ToCharArray())
{
secure.AppendChar(c);
}
return secure;
}
}
作为额外评论:这不过是安全的。