草庐IT

privileges

全部标签

windows - 哪个服务帐号合适?

我开发了一个.NETWindows服务(在VS2010中)需要:访问本地网络机器上的共享文件夹(读/写)写入注册表的HKLM/SOFTWARE部分在本地文件系统的所有部分写入文件和创建文件夹(例如在C:的根目录中)从网络下载文件(使用http)我的服务必须适用于从WindowsXPSP3及更高版本的所有Windows(PC)操作系统。问题:我应该为我的服务选择哪个服务帐户?通常,我会使用“LocalService”或“NetworkService”,但它们本身都不能授予所有需要的权限。我应该使用“LocalSystem”帐户吗?或者,我是否应该创建一个完全独立的帐户仅供我的服务使用(这

c# - 如何强制 C# 应用程序不以管理员身份运行?

我正在为一个应用程序编写一个更新程序,我的问题是当我运行它时它总是显示UAC提示。应用程序本身不需要管理员权限,它只从互联网上下载一个.zip文件,然后将其解压到用户在安装过程中设置的自定义位置。我试图将以下值添加到我的app.mainfest,但它们似乎都不起作用,并且仍然显示UAC提示:和如何在没有管理员权限的情况下强制运行C#应用程序? 最佳答案 您的更新应用程序文件名是什么?当文件名包含或等于设置、更新、补丁、安装或类似内容时,需要管理员权限。您可以尝试将更新应用程序文件名更改为example.exe,看看是否可行。有关更多

c++ - AdjustTokenPrivileges 错误 6 - 句柄无效

请告知为什么下面的AdjustTokenPrivileges函数总是返回true,从而给出:“AdjustTokenPrivilegeserror6”(即无效句柄)?stackoverlow提示我解释得不够我不知道还有什么要补充的。我是C++的新手。HANDLEhToken;OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES,&hToken);SetPrivilege(hToken,L"SeBackupPrivilege",1);CloseHandle(hToken);BOOLSetPrivilege(HANDLEhTo

.net - 当有人试图运行我的 .net 桌面应用程序时,如何强制显示 "Run As"表单?

当用户尝试运行我的应用程序(C#.NET4,在WinXP上)时,我需要弹出“运行方式”表单,以便他可以轻松地以其他用户身份登录。它可能在应用程序本身(在C#代码中)或在其他一些前面的批处理/exe文件(“启动器”)等中。我没有找到任何方法来弹出此表单。怎么做到的?谢谢。 最佳答案 如果你想这样做,你最好的选择是创建一个调用CredUIPromptForWindowsCredentials的引导进程。.这将创建一个对话框,提示用户输入凭据。一旦您获得了他们的凭据,然后使用Process.Start的重载,它接受CredUIPrompt

windows - 在 Windows 上将用户模拟为 LocalSystem

我有一个在WindowsXP及以下系统上作为LocalSystem运行的进程。我正在尝试找到一种方法让它启动另一个进程来模拟另一个用户而不必提供用户密码。原则上这应该是可能的,因为LocalSystem具有“作为操作系统的一部分”的特权。但是我找不到正确的API。谁能告诉我该怎么做:使用API,或者来自批处理文件? 最佳答案 您可以先通过WTSQueryUserToken获取用户的token来完成此操作,然后调用CreateProcessAsUser开始这个过程。请注意,您只能为当前登录系统的用户执行此操作。

windows - 全局命名空间 CreateFileMapping 和 SeCreateGlobalPrivilege

我正在使用共享内存映射进行进程间通信。该映射需要在session之间可见,因此我试图在全局命名空间中创建它。我知道正在运行的用户需要SeCreateGlobalPrivilege才能使其正常工作。我已经编辑了本地安全策略(我不在域中)以授予我的用户“创建全局对象”权限,但是当我运行应用程序时,此权限不在访问token中。如果我以管理员身份运行,我会获得特权。我错过了什么?为什么我得不到这个特权? 最佳答案 在调用CreateFileMapping()之前尝试使用OpenThreadToken()和AdjustTokenPrivile

windows - 在 C :\Program Files (x86)\MyApp\myapp. cfg 中写入配置文件,与管理员权限

我已经为我的软件制作了安装程序(使用InnoSetup),最终安装在C:\ProgramFiles(x86)\MyApp\myapp.exe像往常一样在Windows平台上运行,并且运行良好。当我的软件试图在此处写入其配置文件时出现问题:C:\ProgramFiles(x86)\MyApp\myapp.cfg这里出现了一个Permissiondenied错误!我找到的唯一解决方案是“以管理员身份运行软件”,但我不喜欢这个解决方案:我不想让最终用户每次都必须执行“以管理员身份运行”他们将使用该软件。是否有一个干净的解决方案可以在C:\ProgramFiles(x86)\MyApp\mya

c# - C# 程序如何以管理员权限运行另一个程序?

我对这种情况有疑问:我制作了2个程序:第一个只是打印一个输出,说明是否以管理员权限启动,第二个,以管理员权限执行第一个程序和不使用UAC。问题是第二个程序无法以管理员权限启动第一个程序,我不知道为什么。这是我的代码:第一个程序代码://Thisonlyprintsifyoustartasadministratorornot.boolisElevated;WindowsIdentityidentity=WindowsIdentity.GetCurrent();WindowsPrincipalprincipal=newWindowsPrincipal(identity);isElevate

windows - 在 Windows 下以访客身份或以有限权限运行应用程序而无需重新登录?

如何启动应用程序以在Windows7下以访客身份运行或以有限权限运行?当前用户是管理员,我想测试应用程序在以较少权限运行时的行为。我已经知道它在其他系统上有一些问题,但我想在我的计算机/帐户上运行它来调试它。 最佳答案 按住shift键并右键单击可执行文件并选择“以不同用户身份运行”。如果您的问题是寻求程序化解决方案,我们深表歉意。 关于windows-在Windows下以访客身份或以有限权限运行应用程序而无需重新登录?,我们在StackOverflow上找到一个类似的问题:

c++ - AdjustTokenPrivileges 错误 ERROR_NOT_ALL_ASSIGNED

请告知下面代码中指出的错误,为什么会这样?我是C++的新手。我查看了StackO和MSDN(例如link),但它们对我没有帮助,因为我不知道自己做错了什么。HANDLEhToken;if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken)){returnFALSE;}{SetPrivilege(hToken,L"SeBackupPrivilege",1);BOOLSetPrivilege(HANDLEhToken,//accesstokenhandleLPCTSTRlpsz