Tag: windows security

未提供所需的模拟级别,或者提供的模拟级别无效

我在使用WCF服务和模拟时遇到了一些问题,我已将其提炼为下面的简单方法。 WCF服务目前在exe中自托管。 exception消息是“未提供所需的模拟级别,或者提供的模拟级别无效”。 检查错误何时抛出,Identity ImpersonationLevel设置为委托,如我的客户端上指定的,并通过Kerberos进行身份validation。 我有点困惑,因为在我看来ImpersonationLevel和Authenticaiton的要求已经得到满足。 我的想法是问题可能与域设置有关,我已经设置并认为设置正确。 所以我有两个问题: 下面的操作应该成功吗? (或者它有缺陷吗?) 需要在Win2k8域上配置哪些设置才能使其正常工作? 我正在使用两个属于同一个Win2k8域的成员(它是一个新域和非常香草,旨在测试模拟)。 代码如下: [OperationBehavior(Impersonation = ImpersonationOption.Required)] public string Test() { WindowsIdentity identity = ServiceSecurityContext.Current.WindowsIdentity; using (identity.Impersonate()) { ProcessStartInfo pi = new ProcessStartInfo(@”c:\temp\test.bat”); pi.UseShellExecute = false; pi.RedirectStandardOutput = true; Process p = Process.Start(pi); // exception thrown here! p.WaitForExit(); string o = p.StandardOutput.ReadToEnd(); return o; } } […]

如何在TrustedInstaller中编写自己的注册表项

为了将新的属性页安装到Active Directory SnapIn中,我需要写入W2K8 R2的以下注册表项( 如Microsoft所述 ) HKEY_LOCAL_MACHINE \ SOFTWARE \微软\ MMC \ SnapIns {E355E538-1C2E-11D0-8C37-00C04FD8FE93} \ NodeTypes 此密钥由名为TrustedInstaller的特殊用户拥有。 我在NET arround上发现了很多东西。 目前,这是它的工作方式,执行以下操作(用户是管理员组的成员): 我授予用户获得所有权的权限。 用户取得所有权 用户编写注册表 用户授予管理员组的所有权。 我的项目完全用C#编写,有两件事我不喜欢这样做。 我使用InteropServices来调用Win32 AdjustTokenPrivileges API。 有没有人知道在纯C#中这样做的方法? 最后,TrustedInstaller不再是密钥的所有者,而且我无法给予他所有权,他保持完全控制权,但我不希望我的服务器在安装我的管理单元后被归类为已损坏。 所以我的问题是:我是否遗漏了某些东西,是否有记录的方法来修改这样一个被记录为可修改的密钥? 存在一个Stack溢出问题 ,答案说TrustedInstaller所有权,意味着密钥是系统安装的一部分而不是应用程序安装。 对我来说,如果Microsoft记录了如何修改它的应用程序安装的密钥。 提前致谢。

如何在asp.net中使用Windows身份validation获取用户名?

我想使用Windows身份validation获取用户名 实际上我实现了“以不同用户身份登录”,单击此按钮时,Windows安全性将出现在那里,我们可以提供凭据。 在那个时候,如果我提供一些其他凭证,它只采用当前用户名。 如何从Windows安全性获取给定的凭据用户名? 在IIS中的主机应用程序,然后禁用匿名身份validation并启用Windows身份validation。 web.config中: 的.cs 在这里,我总是得到默认的用户名 string fullName = Request.ServerVariables[“LOGON_USER”]; 有任何想法吗? 提前致谢

获取WinNT组的成员列表

堆栈溢出有几个类似的问题,但不完全相同。 我想在win xp计算机上打开或创建一个本地组,并向其添加成员,域名,本地和众所周知的帐户。 我还想检查一个用户是否已经是一个成员,这样我就不会两次添加同一个帐户,并且可能会出现exception。 到目前为止,我开始将DirectoryEntry对象与WinNT://提供程序一起使用。 这样可以,但是我仍然坚持如何获得一个组成员列表? 有人知道怎么做吗? 或者提供比使用DirectoryEntry更好的解决方案?

如何使用.NET应用Windows组策略?

是否可以使用.NET应用(和删除)Windows组策略设置? 我正在开发一个应用程序,需要暂时将机器置于受限制的,类似于kiosk的状态。 我需要控制的一件事是访问USB驱动器,我相信我可以通过组策略来实现。 我希望我的应用程序在启动时设置策略并在退出时还原更改…这是我可以通过.NET框架调用执行的操作吗? 这些是我的主要要求: 启动控制台应用程序时应用组策略设置。 确定策略拒绝用户操作的时间并记录它。 记录到系统安全日志是可以接受的。 当我的应用停止时,还原我的政策更改。