使用C#检查一个文件夹的访问权限
我需要检查特定用户(域或本地)是否已提及给定目录上的权利(读/写). 该方法应返回true,即使用户正在继承用户组(例如管理员)的权利. . 此答案工作正常,但仅限于当前用户 解决方案 尝试Bellow函数 using System.IO; using System.Security.AccessControl; public static bool CheckWritePermissionOnDir(string path) { var writeAllow = false; var writeDeny = false; var accessControlList = Directory.GetAccessControl(path); Control if (accessControlList == null)
24 2024-04-26
编程技术问答社区
检查共享目录的权限-C#
我想编写一个检查共享目录许可的代码,我检查了多个解决方案,但是在尝试获得本地目录许可时,它可以很好地工作,但是当我为共享目录制作测试用例时,它会失败. 我在此问题中尝试了示例: sof:checking-for-directory and-directory and-file-write-网络中的权限 ,但仅在本地目录上起作用. 例如,我使用了此类: public class CurrentUserSecurity { WindowsIdentity _currentUser; WindowsPrincipal _currentPrincipal; public CurrentUserSecurity() { _currentUser = WindowsIdentity.GetCurrent(); _currentPrincipal = new WindowsPrincipal(WindowsId
16 2024-04-19
编程技术问答社区
ASP.NET MVC中基于文档的安全性
我已经知道ASP.NET MVC中的用户和基于角色的安全性.但是现在我需要一些更精细的东西. 假设我有一个文档列表,其中一些用户被授权,有些则没有.每个文档在数据库中的文档表中都有相应的记录.如果用户具有安全访问,则可以下载文档以查看.如果您有角色,也可以添加文档.每个文档都有一个URL,每个文档列表都有一个URL. 我想安全地修剪列表,以便用户仅查看他的授权文档.但是我还需要对这些列表和文档的URL请求进行身份验证,因为没有什么可以阻止用户将其书签添加为他们不再访问的文档,或者只是将URL键入浏览器. . 基于内置角色的安全模型是否适合于此,还是我需要创建单独的基于表格的安全性?我可以将安全性放在存储库中,以便返回的记录已经被修剪,还是应该成为控制器的一部分?我是否需要一个安全属性来验证控制器请求,还是应该将其作为代码的前几行将其放在控制器方法中? ? 解决方案 @Robert,我认为当您说应该修剪它们(以前)时,您已经回答了自己的问题.因此,在您的业务逻辑中,作
14 2024-04-15
编程技术问答社区
如何正确地打开FileStream以便与XDocument一起使用?
我想使用LINQ2XML将一些节点附加到XML文档.其他进程正在使用该文件,并且在我更新文件时,它们应该能够读取该文件.因此,我提出了这个解决方案,这显然不是正确的方法(方法doc.save()失败,并说另一个过程正在使用该文件): using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.ReadWrite, FileShare.Read)) { doc = XDocument.Load(new StreamReader(fs)); doc.Root.Add(entry); doc.Save(filename); fs.Close(); } 任何帮助都非常感谢. 解决方案 加载文档,关闭流,再次保存.这也意味着您可以以更简单的方式打开它:) XDocument doc; using (StreamReader reader = File.OpenText(
6 2024-04-13
编程技术问答社区
如何用Asp.Net Core实现基于许可的访问控制
我正在尝试使用Aspnet Core实现基于权限的访问控制.为了动态管理用户角色和权限(create_product,delete_product等),它们存储在数据库中.数据模型就像 https://i.stack.imgur.com/chmpe.com/chmpe.png 在Aspnet Core(在MVC 5中)我使用Custom AuthorizeAttribute来处理该问题: public class CustomAuthorizeAttribute : AuthorizeAttribute { private readonly string _permissionName { get; set; } [Inject] public IAccessControlService _accessControlService { get; set; } public CustomAuthorizeAttribute(string per
10 2024-04-11
编程技术问答社区
浏览器应用程序和本地文件系统访问
我想通过功能来增强我的基于浏览器的Web应用程序,该功能可以管理本地文件和文件夹.例如.文件夹树结构应通过HTTP(S)在本地工作站和服务器之间进行同步. 我知道基于浏览器的应用程序中与安全相关的限制.但是,有一些"解决"这些问题的技术: 签名的Java applet(完全信任) .NET Windows形成浏览器控件(不开玩笑,可行.只有配置可怕) ActiveX 我的问题是:您使用/建议的技术和实施实践是什么?关键要求是安装过程尽可能简单. 感谢您的意见! 解决方案 Google Gears. 它使您可以编写比通常的浏览器更大的平台支持的JavaScript应用程序,并使用本地文件访问,缓存和DB"无连接".如果/连接时,它将同步到中央服务器. 可用于所有平台上的多个浏览器;但仍处于沉重的演变中. 其他解决方案 齿轮和Adobe Air都要求用户在获得任何程序化访问之前手动选择本地文件.由于对本地文件系统访问的安全考虑,因此非常
18 2024-04-03
编程技术问答社区
防止推送到GitHub上的主站?
github允许您配置存储库,以便用户可以' t力量推向主人,但是有没有办法防止完全推动掌握?我希望做到这一点,以便添加提交掌握的唯一方法是通过github拉请求ui. 解决方案 由于原始问题/答案,GitHub已将其添加到了受限分支UI中,该选项允许您设置此. 需要拉拉请求审查,然后在启用时合并,所有提交都必须向非保护分支机构进行,并通过 提取要求的批准评论数量,否 在将其合并到匹配的分支之前请求的更改 此规则. 找到它转到设置>分支>分支保护规则 然后单击"添加规则". 然后,输入要保护的分支的名称,然后单击复选框以在合并之前需要拉请求评论. 默认情况下,这只会阻止不是主持人的人.稍后还有另一个复选框,以确保即使是主持人也无法合并. 其他解决方案 当前接受的答案实际上是正确的,但是如果您是组织所有者或拥有管理员特权,则如果您创建了仓库,则仍然可以推到受保护的分支机构.来自 - 分支限制: 组织所有者和拥有存储库的管理权限的人总是能够推到受保护的分支机
14 2024-04-03
编程技术问答社区
Symfony 2用IP保证登录安全
我有一个防火墙规则,该规则与注释一起仅允许作为特定用户访问操作. 此外,如果不是来自某个网​​络,我很想阻止任何登录名.搜索解决方案我遇到了其他Access_Control规则,此前此指南. 问题,如果我通过IP规则限制了我的登录页面.如果有人试图达到ERR_TOO_MANY_REDIRECTS错误,我总是会遇到错误.我宁愿有一个"找不到页面"的消息,甚至不让外部有人知道可能有任何登录. 我该如何使用Symfony? security.yml: security: ... firewalls: dev: pattern: ^/(_(profiler|wdt)|css|images|js)/ security: false default: form_login: provider: fos_userbu
18 2024-04-01
编程技术问答社区
如果用户没有登录,我怎样才能拒绝他们访问我的Backbone应用程序的部分内容?
所以我有一个骨干应用程序 + Web主页.现在,如果您登录到我的网站,我将创建一个全局对象,其中包含数据库中的用户详细信息.但是,您仍然可以直接击中应用程序中的一条路线. 我应该如何处理未"登录"并将其重定向到"您必须登录页面"的用户? 这是标准操作吗?基本上,我有一个休息URL设置,可以返回 { sessionId: [php-session-id-here] } 如果它们登录,它将返回更多类似的东西: { sessionId: [php-sess-id], userId: [user-id-from-db], firstName: [f-name], lastName: [l-name] } 想法?谢谢! 解决方案 我过去所做的是在每个页面上以及jQuery(实际上,添加到jQuery文件)上的Ajax方法上的扩展名,以检查我在用户时发送的自定义代码未登录.当看到该值时,它将用户重定向到登录页面,无论发生什么情况. 这是
26 2024-03-26
编程技术问答社区
在Azure Service Fabric中限制对一个应用程序的访问
我有一个服务面料应用程序部署在一个Azure Service Fabric Cluster中,该应用程序提供了一些REST API,还有Azure的Web应用程序,充当REST API的消费者.我想做的是拒绝除了我的Web应用程序外的任何地方访问我的SF应用程序. 我尝试使用NSG添加了用Internet标签添加拒绝规则,但失败了. SF群集的负载平衡器的存在似乎使拒绝规则不起作用.有建议吗?谢谢! 解决方案 这对我有用: 添加一个入站NSG规则,优先级低于默认规则(说 100) 名称:给它一个名字 来源:任何 协议:TCP源 端口范围:( Web App地址) 目的地:任何 目的地端口范围: * 行动:拒绝(在之前将错误设置为Allow) 我怀疑Internet标签的范围太宽而无法阻止任何内容,或者您​​的规则优先级#太高. 检查
14 2024-03-26
编程技术问答社区
基于范围/角色/组的访问控制
我正在使用Azure Active Directory,并且正在尝试了解所述的三种类型的访问控制此处.每种方法的优点和缺点是什么?您何时使用它们: 基于范围的访问控制使用oauth2Permissions oauth2Permissions我清单的部分,我可以添加这样的读写权限: { "adminConsentDescription": "Allow the application read access to MyApi on behalf of the signed-in user.", "adminConsentDisplayName": "Read access to MyApi", "id": "56d944c0-f3aa-4f80-9472-9c1414383abf", "isEnabled": true, "type": "User", "userConsentDescription": "Allow the application re
10 2024-03-24
编程技术问答社区
Azure基于角色的访问控制(RBAC)中的角色和范围有什么区别?
我正在阅读阅读以下线程,但没有发现它们有用,因为: 看来,问题并不是我在问什么,答案似乎不同意我阅读的内容. (再说一次,这可能只是我的阅读理解.)无论如何,该线程是从2015年开始的,最后一个更新是在2016年1月. :Microsoft Azure的访问控制服务身份验证模型是否与基于角色的访问控制相同? 不在RBAC上扩展,仅在AAC上. 在在Azure Web和数据库中控制 仅链接到与此问题无关的官方文档. stackoverflow:与用户和守护程序客户端在Azure AD Web API中示波器和应用程序角色的正确用途是什么? 甚至没有尝试解释角色与范围. 解决方案 (who)允许" 实体"(或" 身份")(用官方术语,安全校长) (如何)访问(即执行动作)(用官方术语,角色) (什么)在" 一组资源"上(用官方术语,范围). 1. RBAC 的构建块 1.1安全主体 1 (WHO) "要求访问A
38 2024-03-24
编程技术问答社区
使用Windows Azure托管网页的Microsoft Dynamics CRM Online + IFrame + X-Image-Options
我正在尝试使用Microsoft Dynamics CRM Online,其中Windows Azure托管了一个自定义网页,该网页显示在Microsoft Dynamics CRM Web应用程序的iFrame中. 我已经阅读了/gg509061 (Microsoft Dynamics CRM在线使用Windows Azure托管网页),还遵循 http://social.technet.microsoft.com/wiki/wiki/wiki/contents/articles/2590.aspx (安全Windows Windows Azure Web azure azure azure azure azure a asp.net Web应用程序使用访问控制服务v2.0 v2.0 ) 我现在有一个Windows Azure网页,该网页显示Windows Live ID屏幕以登录. 问题是,当我将其放入Dynamics中时,我会得到以下内容: 这个内容不能显示
10 2024-03-23
编程技术问答社区
访问控制机制(如RBAC或ABAC)如何保护资源?
访问控制机制(例如RBAC或ABAC)如何保护资源?我知道如何使用RBAC,ABAC等访问控制机制.换句话说,我知道访问控制引擎如何评估请求并做出决定(许可,拒绝等).但是,我不知道它们如何保护资源. 我的意思是,例如,阿巴克如何执行拒绝决定? 资源是加密的吗? 还是存储在安全数据库中? 解决方案 RBAC和ABAC以不同的方式工作以实现相似的目标:访问控制. 他们的两个理由都是相同的:简化授权管理.但是,RBAC主要发生在管理用户角色和权限的管理时间.然后,您将目标应用程序根据用户的角色和权限执行授权. OAuth2和范围采用了类似的方法.这导致了授权,因为它取决于该应用程序来执行授权.您将获得if UserInRole(r) then ... 的代码 RBAC还需要角色工程,并且可以达到一定程度的静态隔离(例如,购买者不能同时成为批准者). 在ABAC中,您可以清楚地将应用程序与授权逻辑相结合.该应用所做的就是调用一个策略决策点,该决策点返回许可
30 2024-03-20
编程技术问答社区
一个具有相同角色的用户如何访问具有不同权限的不同帖子?
我使用设计进行身份验证,并为每个用户分配了角色.我还有一个模型posts,其中包含数量的帖子.我想限制角色employee的一个用户以查看特定帖子和同一用户以查看和创建不同的帖子.我该怎么做? 解决方案 我意识到我在这里迟到了. 您正在寻找的是基于角色的访问控制的扩展. RBAC不能很好地满足您的情况.您需要考虑基于属性的访问控制. CANCAN和DEAMISE是两个特定语言的框架,这些框架解决了基于属性的访问控制. 如果您想要一个更广泛,更通用的ABAC解决方案,请考虑Xacml,可扩展的访问控制标记语言,这是OASIS定义的标准,就像SAML一样. Xacml给您: 基于属性的访问控制:属性可用于描述几乎所有内容(用户,对象,资源,上下文,时间,操作...). 基于策略的访问控制:策略将属性汇总在一起以定义授权.例如,员工可以查看同一团队中员工的职位,并且可以编辑他们拥有的帖子 细粒度的访问:可以定义非常具体且颗粒状的授权政策 支持税收隔离 独
10 2024-03-20
编程技术问答社区
XACML政策中的分层属性
我们使用的是WSO2身份服务器5.1.0. 我们有一个位置层次结构,例如plant1-> aket1-> unit1.现在,如果用户对Plant1具有属性,则他也应该访问Unit1(树中所有父母的孩子). 我们可以在XACML中指定吗?我们将层次结构存储在DB中.如果需要,我们也可以提供层次元素的列表作为属性列表. 样本中解释的问题: 用户BOB已获得对区域2的访问,如下所示: Plant1 | - area1 |--Unit1 | - area2 |--Unit2 我们要在XACML策略中指定abor2位置.现在,如果需要允许使用区域2或UNIT2的请求,则应在Plant1,Area1或unit1的请求时应被拒绝. 我需要XACML策略的结构. 解决方案 您可以在XACML实现中使用自定义PIP(策略信息点,又称属性提供程序)实现此功能,例如 authzforce .我不知道WSO2是那么多,但是根据D
12 2024-03-20
编程技术问答社区
XACML 3.0和多个资源
我正在尝试使用Balana的XACML实现来弄清楚如何实施授权机制(WSO2的权利引擎基于Balana). 当用户要求访问单个资源(例如,鲍勃想阅读病历)时,事情很简单. 但是,假设鲍勃想阅读所有患者的病历.这里的第一个问题是,需要有一种方法来弄清楚他的患者是谁.我还需要为他的患者的每个单独记录获得属性.问题是,我试图解决这种情况,同时将我的属性属性的请求数量保持在最低限度. 重塑我的目标:我试图根据PIPS返回的属性来评估Bob是否可以访问多个医疗记录(在创建决策请求时未知记录)(我想要例如,我的PIP与数据库尽可能少的交互作用). 简而言之,我发现的是,尝试控制使用XACML的资源访问时,事情变得棘手. 我在这里找到了一些选择: 我的请求包含主题,操作,资源ID和范围.我使用XACML多个决策资料:PDP知道儿童/后裔资源是针对目标的,因此它将创建多个评估上下文,为每个孩子/后代(但尚未找到资源的属性).然后,使用PIPS,它将为每个单独的评估上下
18 2024-03-20
编程技术问答社区
使用RBAC的角色太多。替代方案?
表示角色x可以在资源z上扮演的事实,我创建了一个称为"角色y:z"的角色. 问题是,这里的"资源"的数量越来越多,角色也在增加. 对于我创建的每个资源,我最终都创建了4个角色. 问题是,RBAC对于我的用户酶太粗糙了. 我是否以错误的方式实施RBAC?知道如何避免这种角色爆炸吗?也许我根本不应该使用RBAC? 解决方案 也许我根本不应该使用RBAC? 您需要rebac(基于关系的访问控制):) REBAC解决方案,例如基于提供精细颗粒授权的一些​​公司包括: ory keto - oss -oss提供
12 2024-03-20
编程技术问答社区
如何在FIWARE中实现安全等级3?
我正在我的计算机中部署Fiware Security GES(即Wilma,AuthzForce,KeyRock).安全级别2(基本授权)运行良好,但是现在我需要使用XACML的安全级别3(高级授权). 长话短说,我想要实施安全级别的教程3.但是,据我所知,有关安全级别3的任何教程或文档都不存在. 目前,我使用PAP的API创建我的策略,然后在config.js中更改'custom_policy'选项,从"未定义"到'policy.js'.然后,我将" policy.js"文件创建到" PEP/Policies"中,但是与其模板文件相比,不要更改任何内容,因为我不知道该代码准确地做什么.我认为我应该使用" XML"变量制作XACML请求表格.但是就我而言,PEP使用" XML"变量进行XACML请求时给我错误,然后返回此变量.这是我对PEP的错误: Error: Root - Error in AZF communication
14 2024-03-20
编程技术问答社区