繁体   English   中英

用户在这台机器上没有被授予请求的登录类型

[英]The user has not been granted the requested logon type at this machine

我创建了一个 ASP.Net 应用程序,它模拟用户以创建一个 AD 组,然后作为用户启动一个 powershell 进程(与模拟分开)。

由于某种原因,组创建工作正常并在事件查看器中显示为成功,但是当它尝试运行 PowerShell 脚本时,出现以下错误:

用户在这台机器上没有被授予请求的登录类型。

以下是我正在使用的失败代码:

SecureString securePassword = new SecureString();
        foreach (char c in model.AdminPassword)
        {
            securePassword.AppendChar(c);
        }
        PSCredential psCredential = new PSCredential("CONTOSO\\" + User.Identity.Name, securePassword);

        ProcessStartInfo info = new ProcessStartInfo("c:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe", "c:\\PowershellScripts\\EnableDL.ps1 -dlName '" + model.Name + "'");
        info.UseShellExecute = false;
        info.RedirectStandardOutput = true;
        info.RedirectStandardError = true;
        info.RedirectStandardInput = true;
        info.CreateNoWindow = true;
        info.Domain = "CONTOSO.COM";
        info.UserName = User.Identity.Name;
        info.Password = securePassword;

有什么办法可以绕过这个错误吗? 我宁愿不在理想情况下摆弄服务器上的安全策略,而且这个应用程序需要被大约 30 多个用户使用。

我自己设法解决了这个问题。 您需要转到开始 - >管理工具 - >本地安全策略。

导航到本地策略 - >用户权限分配 - >允许本地登录,并添加需要访问权限的帐户/组的用户名。

对我来说这是行不通的。 我还需要从“拒绝通过远程桌面服务登录”策略中删除本地用户。 之后我跑了 gpupdate /force

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM