Tag: 权限

C#.NET – 如何确定目录是否可写,有无UAC?

我正在研究一个需要将文件复制到文件系统上给定目录的软件。 它需要适用于UAC感知操作系统(Vista,7)以及XP。 为了解决写入需要UAC提升的目录的问题,应用程序实际上启动了另一个进程,其中包含一个表明需要UAC的清单。 这会生成提示,然后在用户确认时执行复制。 从我所看到的,一个目录可以有三种不同的逻辑权限状态 – 可写,没有UAC提升,可写入UAC提升且不可写。 我的问题是:对于给定目录,如何可靠地确定当前用户是否可以将文件复制(并可能覆盖)到该目录,如果可以,我如何确定是否需要UAC提升? 在XP上,这可能就像检查是否授予“允许写入”权限一样简单,但在Vista / 7上,有些目录未授予此权限,但UAC仍然可以执行此操作。

删除所有默认文件权限

我有一个C#网络应用程序,它会提示管理员提供网络代理身份validation信息。 我问用户是否要保存这些信息,如果他们选择是,我会在用户的唯一本地文件中加密。 我想删除除创建它的用户以外的所有文件权限,但是除了能够删除该文件的所有其他用户之外。 现在,我在下面找到了MS文章,但如果我不知道首先在文件上设置的默认用户,它就无济于事。 是否删除了所有文件权限? 然后,我可以添加我想要为当前用户的完全访问权限设置的个人权限以及“所有用户”或“经过身份validation的用户”的删除权限,这些权限根据Windows的版本而有所不同。 http://msdn.microsoft.com/en-us/library/system.io.file.setaccesscontrol.aspx

使用Entity Framework管理实体访问和权限

在使用Entity Framework 4.1的Web应用程序中,我们使用SQL Server Membership来管理用户访问。 但是,我们需要在权限管理中实现更细粒度的角色集。 在数据库中,我们已经创建了相关表: – Roles – Permissions – UserInRole (roles per user) – RolesPermissions (permissions associated to a role) 使用某些核心实体上的属性,我们使用EF限制语义访问,例如,给定特定用户,他/她只能看到相对发货的订单或固有数据。 现在我们想在其中注入权限,这意味着客户可以查看和创建订单,而公司 (这是两个不同的角色)只能查看其产品的订单并打印报告。 我们的想法是在实体级别也使用属性,并在调用方法时检查当前用户是否拥有适当的权限。 例如: public void BeforeAdd() { // Get required permissions for the specific entity (Order as example) //Check that current user has permission of creating a new Order } […]

服务需要哪个用户权限才能启动/停止其他服务?

我写了一个应该启动/停止其他服务的服务。 这是我正在使用的代码: ServiceController sc = new ServiceController(“servicename”); if(sc.Status != ServiceControllerStatus.Running) { sc.Start(); } 这是exception的callstack。 (对不起,但邮件是用德语本地化的,但这与理解我的问题无关) System.InvalidOperationException: Der Dienst SCardSvr kann nicht auf dem 电脑 。 geöffnetwerden。 —> System.ComponentModel.Win32Exception:Zugriff verweigert — Ende derinternenAusnahmestapelüberwachung— bei System.ServiceProcess.ServiceController.GetServiceHandle(Int32 desiredAccess) bei System.ServiceProcess.ServiceController.Start(String [] args) bei System.ServiceProcess.ServiceController.Start() 目前我正在’Networkservice’下运行该服务。 我想该帐户不足以满足必要的用户权限。 我将创建一个新用户,该用户具有启动/停止任意服务所需的最小权限。 这个新的useraccount需要什么权限?

SharePoint列表项权限

我想以编程方式创建它,以便用户只能看到列表中的特定项目。 基本上在创建项目时运行的工作流程中,我将做一些事情,并通知一些人这个项目。 我还希望它更改项目的权限,以便只有特定用户(根据项目内容在运行时查找)才能读取该项目。 有权访问该列表的其他用户只能看到特定的项目,但不会看到所有这些项目。 列表项可能不一定是拥有的,但是需要查看它的用户因此我无法设置列表权限以允许用户只看到他们自己的项目。 如果有帮助,请将其置于上下文中 – 该列表正在向特定成员注册工作角色。 每个列表项都是一个角色分配,其中包含对角色列表中角色的查找以及对成员列表中成员的查找。 我不是直接在成员列表中使用了一个multilookup字段来获取角色,因为每个角色分配都需要有关它的额外信息,例如描述,开始日期等。 每个角色都有一个管理它的特定用户/组。 我希望它能够在进入这个大的角色分配列表时,用户只能看到他们所担任的角色的角色分配。 建议将不胜感激。

如何在AWS SQS队列上添加权限?

使用以下代码,我可以使用我的AWS账号添加权限,但队列不会收到来自SNS的任何消息。 AddPermissionRequest addPermissionRequest = new AddPermissionRequest(); addPermissionRequest.ActionName.Add(“SendMessage”); addPermissionRequest.ActionName.Add(“ReceiveMessage”); addPermissionRequest.QueueUrl = queueUrl; addPermissionRequest.Label = General.IpAddressAWSFriendly; addPermissionRequest.AWSAccountId.Add(AWS_ACCOUNT_ID); sqs.AddPermission(addPermissionRequest); 但是,当我尝试通过通配符(*)为每个人设置权限时: addPermissionRequest.AWSAccountId.Add(“*”); 它给了我一个错误。 如果我在AWS SQS控制台中手动添加权限并指定 SendMessage ReceiveMessage 对于允许的操作和原则,我将其设置为“所有人”,队列确实从我的SNS主题接收消息。 所以,显然,我做错了什么,但我再也看不到了。 任何帮助都会很棒! 我希望亚马逊有示例,SDK附带的示例并未显示有关设置策略或权限的任何信息。 在线文档中也没有显示任何内容。 令人沮丧。

以编程方式将用户权限添加到Sharepoint中的列表

如何以编程方式将用户权限添加到Sharepoint中的列表? 我想将权限“Contribute”添加到某个列表的用户或组。 我正在使用c#。

以编程方式向文件夹添加权限

我有一个问题,我需要为所有经过身份validation的用户添加对文件夹的访问权限,以存储与应用程序相关的设置。 我发现这可以通过以下代码完成… var Info = new DirectoryInfo(settingsdir); var Security = Info.GetAccessControl(AccessControlSections.Access); Security.AddAccessRule( new FileSystemAccessRule( “Authenticated Users”, FileSystemRights.Modify, InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow)); 我发现的问题是“Authenticated Users”是Windows上的系统帐户,但是在Windows的不同语言版本上,此帐户名被翻译,例如在德国,该帐户被称为“Authentifizierte Benutzer”。 有没有办法知道这个帐户的正确名称(显而易见的是通过每种语言并找到正确的帐户名称)。

使用c#创建SQL Server备份文件(.bak)到任何位置

我正在尝试用C#编写简单的应用程序,这将允许我备份,压缩和通过ftp发送我的SQL Server数据库。 我遇到的一个问题是,如果我尝试在“C:\ Program Files \ Microsoft SQL Server \ MSSQL.3 \ MSSQL \ Backup”之外的其他位置执行此操作,则无法创建备份文件(.bak)或“C:\ Program Files \ Microsoft SQL Server \ MSSQL.3 \ MSSQL \ Data”文件夹。 我知道这是一个暂缓问题。 有人可以指向我的资源或在这里写一个简短的片段如何以编程方式将这样的权限添加到我的系统上的任何文件夹。 关心克里斯

服务器Word自动化权限(一些答案和一些问题)

我试图使用word自动化来计算word文档中的页数。 到目前为止,我遇到了这些错误: Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80070005. 打开文档时单词卡住了。 我目前的决议和目前采取的步骤是: 将注册表项[HKEY_CLASSES_ROOT\AppID\WINWORD.EXE]从{A86A40B3-0008-4D41-975C-BB586C7121E3}更改为{00020906-0000-0000-C000-000000000046} 。 在DCOM配置DCOMCNFG.EXE进行了以下更改: 在其appID“{A86A40B3-0008-4D41-975C-BB586C7121E3}”下显示的“Microsoft Word应用程序”中,为用户提供了iusr_本地午餐权限(仅限)并将标识设置为“启动用户”。 在“Microsoft Office Word 97 – 2003文档”中也被一些人称为“Microsoft Word文档”(可能取决于word版本)我给iusr和iwam完全启动和访问权限,将身份validation级别设置为“无”,设置启动用户到我自己的管理员用户。 “2-b”部分中所有3个mod的组合最终使所有这些考验成功并且现在正在运行。 使用我自己的用户进行启动是在打开文档时对单词卡住的响应。 将validation设置恢复为默认值会导致错误“1”。 将启动用户设置回“启动用户”会导致错误“2”。 目前的情况是一切正常,但只有当我的用户登录并在机器上处于活动状态时我才不会因为我必须使用我自己的用户必须登录并且认证设置为没有。 我写这个作为一个答案,为那些在我这里努力工作的人,并希望得到一些答案,我可以如何提高安全性,即删除启动用户和设置回认证,而不是每周7天每天24小时登录生产机器(当站点启动时)。 开发机器规格: Windows XP Pro 32位 IIS 5.1 经典ASP网站 COM + C#对象执行自动化。