C# SharpSSH-如何在使用Sftp.Put时设置权限
我正在使用SharpSSH将文件写入unix计算机。这些文件应该由unix计算机上的另一个应用程序读取并删除。C# SharpSSH-如何在使用Sftp.Put时设置权限,c#,sftp,sharpssh,C#,Sftp,Sharpssh,我正在使用SharpSSH将文件写入unix计算机。这些文件应该由unix计算机上的另一个应用程序读取并删除。 问题是unix应用程序没有删除该文件的权限。我可以看到该文件的权限为rw-r----- 这是我的密码: public override void WriteFileg(string directoryName, string fileName, string responseText, host, username, password, port) { // Write the
问题是unix应用程序没有删除该文件的权限。我可以看到该文件的权限为rw-r-----
这是我的密码:
public override void WriteFileg(string directoryName, string fileName, string responseText, host, username, password, port) {
// Write the file locally
TextWriter writer = new StreamWriter("TempForSftp.txt");
writer.WriteLine(responseText);
writer.Close();
// Transfer the local file
Sftp sftp = new Sftp(host, username, password);
sftp.Connect(int.Parse(port));
sftp.Put("TempForSftp.txt", directoryName + "/" + fileName);
sftp.Close();
}
如何设置不同的权限?SharpSsh库似乎为SFTP实现了非常基本的功能,但并没有实现设置文件权限的方法。
如果SSH shell支持,您可以尝试通过SSH shell(在SSH中有子系统通道,它执行一个命令,因此您可以调用chmod)设置权限,否则您应该搜索其他C#library。幸运的是,有很多可用的库。很抱歉重复发布,我的GPRS连接非常糟糕。你能推荐一个支持权限设置且不太难使用的库吗?你可以尝试BouncyCastle,它是免费的,应该支持此操作(我现在无法检查,互联网速度太慢)。我也确信SecureBackbox库支持这一点,但它是商业版的(免费试用)