2017-07-06 69 views
1

我一直在使用Windows Server 2012 R2,並且我爲SFTP使用了bitvise SSH,並且我想在我的應用程序中以編程方式創建SFTP用戶。以編程方式使用c#創建SFTP用戶

我想要做的是當任何用戶註冊到應用程序中,然後應用程序將爲新創建的文件夾創建一個新的文件夾和SFTP憑據。因此,每個用戶都可以訪問他們的SFTP憑證,以便將文件上傳到其關聯的文件夾。

我可以找到動態創建FTP用戶的解決方案,但我想創建SFTP用戶。

問題:是否有可能使用c#創建SFTP用戶?如果是那麼如何?

+0

https://www.bitvise.com/ssh-server-guide-scriptable說:「Bitvise SSH Server提供了一個文本配置實用程序,BssCfg,這對於在大規模安裝中管理SSH服務器非常有用,它還附帶了一個配置COM對象BssCfgManip,可用於使用任何支持COM的語言來配置SSH服務器,但特別適用於PowerShell。您應該可以使用C#中的COM對象。請注意,SSH/SFTP用戶確實是本機的Windows用戶,具有Bitvise可以幫助控制的某些權限。 – ADyson

回答

0

可以使用C#如創建SFPT用戶:

var cfg = new CBssCfg726("BssCfg726.BssCfg726"); 

cfg.SetSite("Bitvise SSH Server"); 

cfg.LoadServerSettings(); 


[email protected] ="Virtual Account Name"; 
[email protected]("Password"); 
[email protected] = "Virtual Users"; 

//if already virtAccountsEx then first delete... 
for (uint i = 0; i < cfg.settings.access.virtAccountsEx.count; i++) { 
    if (cfg.settings.access.virtAccountsEx.GetItem(i).virtAccount == "Virtual Account Name") { 
     cfg.settings.access.virtAccountsEx.Erase(i); 
    } 
} 
[email protected][email protected] = "127.0.0.1"; 
[email protected][email protected] = 80; 
[email protected][email protected] = "Default"; 
[email protected] = cfg.DefaultYesNo.yes; 
[email protected](); 
[email protected]@new.sfsMountPath = "/"; 
[email protected]@new.realRootPath = "Path to folder"; 
[email protected]mmit(); 
[email protected].NewCommit(); 
cfg.settings.access.virtAccountsEx.NewCommit(); 
cfg.SaveServerSettings(); 
相關問題