Articles of 权限

在C:\ ProgramData \中编写特权/所有者问题

正如在C:\ Program Files(x86)\ MyApp \ myapp.cfg中写configuration文件指出的,与pipe理员权限 ,在C:\Program Files (x86)\MyApp\myapp.cfg编写configuration文件不是一个好主意C:\Program Files (x86)\MyApp\myapp.cfg 。 现在,我的软件将其数据保存在%ALLUSERSPROFILE% C:\ProgramData\MyApp\myapp.cfg (例如Win7上的C:\ProgramData\MyApp\myapp.cfg ) [我在Python中使用myfile = open(filename, 'a')来执行此操作。] 我现在遇到关于这个文件的问题: 我用User A安装了软件,然后运行它,然后编写了C:\ProgramData\MyApp\myapp.cfg文件。 然后,我将用户更改为User B ,并再次运行我的软件:现在显示一个错误: User 2无权在C:\ProgramData\MyApp\myapp.cfg ( Permission denied )中C:\ProgramData\MyApp\myapp.cfg 。 为什么? 是不是%ALLUSERSPROFILE%所有用户都可以写的地方? 如何解决这个问题呢 ?

Windows:使用CMD(或Java)从非特权运行特权命令

我将有一个以pipe理员身份运行并监听端口的服务。 我的GUI程序将与pipe理员服务通话以获取需要pipe理员权限的项目。 如果服务还没有运行,我将需要启动它。 我如何让我的GUI程序以pipe理员身份运行命令? 我假设用户会被问到是否要继续。 我希望有一些我可以键入一个CMD窗口,因为这应该很适合我的Java程序。 我在想,像run-as-admin javaw my-service.jar这里run-as-admin是询问是否继续的命令。

在winapi中以最低的权限运行进程

我写的东西类似于http://ideone.com/ 。 目前我正在用CreateProcess调用运行用户进程。 如果运行时间超过指定的时间,我会终止进程,但是我不知道如何拒绝读/写文件系统权限/创build进程权限等等。 给定的可执行文件可以从字面上任何东西,我只需要只允许标准input/标准输出。 如果我可以设置工作记忆,那也是很好的。 我读了很多关于msdn的文章,比如CreateProcessAsUser Function , CreateProcessWithLogonW Function等,但是我很困惑(可能是因为我的win32知识非常有限)。 只需调用CreateProcessAsUser并使用这些有限权限(以及如何创build此用户)创build特殊用户即可。 我希望我能用一个正确的参数在一个函数调用中实现这一点,所以请帮助。 另外,如果你知道一些类似的开源项目,那就太好了。 谢谢。 ================================================== ======== 编辑:嗨再次:)我仍然坚持这一点。 我没有足够的时间来处理这个问题,但我猜snemarch post是非常有用的。 如果有人开箱即用的解决scheme,那就太好了。 如果我用snemarch的链接做什么,我会发布。

Perl在Windows上运行时获取父文件夹权限的最佳做法是什么?

我不是一个Perl开发人员,但我需要它为perforce做触发器。 所以这是背景: 我有一个Windows服务作为pipe理员运行,在Windows上调用Perl脚本。 该脚本需要在networking存储器上创build一个文件,该文件都configuration为使用Windows和UNIX权限\安全types。 由于运行脚本的用户是pipe理员用户,所有目录下创build的所有文件夹和文件都不会inheritance目录权限,而只能对根目录进行编辑。 我试图做的是创build文件,而不是chmod到父文件夹的“统计”结果。 my ($perms, $uid, $gid) = (stat $ParentDirFullPath)[2, 4, 5]; $perms = sprintf("%04o", $perms & 0777); chmod($perms, $NewFileFullPath); 问题是windows上的stat命令没有得到unix \ gid和unix \ uid + chmod命令不是真的被支持。 我查看了file::stat模块,find了显示windows权限的方法(因为它们也存在),并将它们应用到我未testing的应用程序中,该应用程序可能位于模块Win32::FileSecurity 。 我没有find一种方法从那里获得权限(我得到stat=ARRAY(0x46d0f8) )。 任何想法或build议? TL; DR :(“如何?”问题)在带有父文件夹权限的Windows上运行Perl脚本,并将其应用于脚本在支持Windows和Unix安全性/权限types的networking存储中创build的文件我想申请窗口像组和用户的权限)。 编辑: 我试了下一个代码: use Win32::FileSecurity qw(Get EnumerateRights); use Win32; my $dir1 = "\\\\NetworkStorage\\home\\user1"; my $dir2 = "\\\\NetworkStorage\\home\\user1\\PerlFileSecTest"; my […]

如何在Windows启动时启动Java Jar?

我读过你可以添加一个registry的密钥,但是在Windows Vista和7上有权限问题。什么是在系统启动时启动Java程序的最安全和最好的方法?

如何使用Delphi来testing目录是否可写?

目前我使用这个function,基于JCL代码,它工作正常: function IsDirectoryWriteable(const AName: string): Boolean; var FileName: PWideChar; H: THandle; begin FileName := PWideChar(IncludeTrailingPathDelimiter(AName) + 'chk.tmp'); H := CreateFile(FileName, GENERIC_READ or GENERIC_WRITE, 0, nil, CREATE_NEW, FILE_ATTRIBUTE_TEMPORARY or FILE_FLAG_DELETE_ON_CLOSE, 0); Result := H <> INVALID_HANDLE_VALUE; DeleteFile(FileName); end; 有什么我可以改善旗帜? testing可以在不创build文件的情况下完成吗? 或者,这个function甚至已经在RTL或Jedi库之一中可用?

检查是否有其他用户有权写入文件

在安装过程中,我需要检查用户提供的path是否可写入指定的用户。 path(\文件服务器\共享的UNCpath)可能不能写入正在执行Setup.exe(它是Windows-Only软件)的用户,所以我认为如何检查写入目录的权限或文件? 可能不适合我 我知道在Java7中会有一个新的Filesystem-API,但是Java7还没有发布。 编辑:用户1 – 运行安装程序用户2 – 运行已安装的应用程序 如果用户1出现“权限被拒绝”错误,我仍然不知道,关于用户2.我需要在安装过程中检查其他用户权限。 我可以使用net use /user:<user2> <passwd2>但是我不确定,如果我得到所有我需要的信息。 我得到的信息,该path存在,但不是,如果用户2被允许写入。

如何检查是否可以在MS XP / Vista的给定目录内创build一个文件?

我有一个代码在用户指定的目录中创build文件。 用户可以指向一个他不能创build文件的目录,但是他可以重命名它。 为了testing目的我创build了目录,我们称之为C:\foo 。 我有以下权限C:\foo : 遍历目录/执行文件 删除子文件夹和文件 删除 读取权限 更改权限 取得所有权 我没有任何以下权限C:\foo : 完全控制 文件创build 文件夹创build 到目前为止,我尝试了以下方法: os.access('C:\foo', os.W_OK) == True st = os.stat('C:\ foo') mode = st [stat.ST_MODE] mode&stat.S_IWRITE == True 我相信这是由于我可以重命名文件夹,所以对我来说是可以改变的。 但它的内容 – 不是。 有谁知道如何编写代码来检查给定的目录,如果当前用户有权限在该目录中创build文件? 简而言之 – 我想检查当前用户是否具有给定文件夹名称的文件创build和文件夹创build权限。 编辑:从“Windows Vistaauthentication”程序的testing案例3号产生这样的代码的需要,其中说: 应用程序不得允许最低特权用户将任何文件保存到Windows系统目录以通过此testing用例。 这应该理解为“应​​用程序可能尝试在Windows系统目录中保存文件,但不应该崩溃失败? 或者说'应用程序在尝试保存文件之前必须执行安全检查? 我是否应该停止打扰,因为Windows Vista本身不会允许最低特权用户保存%WINDIR%中的任何文件?

如何防止应用程序被用户卸载(没有pipe理员权限)?

我需要禁止卸载一个应用程序(而不是服务!)由用户不具有一些特殊的权利。 这个怎么做? 安装将由域pipe理员完成 谢谢你的时间 [编辑]也我需要防止从Windows启动删除应用程序 [编辑1]澄清:应用程序很简单,并安装在其文件夹,并添加到Windows启动(实际上HKLM \ SOFTWARE \微软\的Windows \ CurrentVersion \运行registry)。 我需要的是禁止删除这个文件夹和这个registry项,对于序号用户,而不是本地pipe理员。

在Windows中通过PHP设置文件夹权限

有没有一种方法可以在Windows文件系统上通过PHP正确设置文件夹权限,比如授予user A完全访问权限, user B只读文件夹\\fileserver\shares\users\A\ 我似乎无法findPHP的Windows文件系统的任何PHP函数 有任何想法吗?