2015-12-03 107 views
0

我意识到这是一个广泛的问题,但如果任何人都可以指出我正确的方向,我将不胜感激。安全不是我的强项。Windows应用程序运行它的用户的不同权限

我有一个WPF应用程序生成一系列Crystal Reports并执行一些IO操作。它的所有文件都位于网络上的共享文件夹中,比如\ fs \ MyFiles。

运行该应用程序的用户应具有对此网络文件夹的只读访问权限,但应用程序应该对该文件夹拥有完全控制权限。

我在想的是应用程序需要在不同的安全主体下运行,而不是运行它的用户。这在Windows中可能吗?为了做到这一点,我应该看什么?

回答

2

这是可能的说,这是一个网络共享

networkCredential theNetworkCredential = new NetworkCredential(username, password, domain); 
CredentialCache theNetcache = new CredentialCache(); 
theNetCache.Add(@"\\computer", theNetworkCredential, "Basic", theNetworkCredential); 
//then do whatever, such as getting a list of folders: 
string[] theFolders = System.IO.Directory.GetDirectories("@\\computer\share"); 

这会导致应用程序有不同的creds那么实际登录的用户。我会建议把用户名和密码和域加密在配置文件

相关问题