Web应用程序的细粒度授权
我有一个C#.net应用程序,它为公司的内部用户和外部客户提供服务.我需要做一些细粒度的授权,比如访问哪些资源.所以我需要基于资源或基于属性的东西,而不是基于角色的授权.
我想到的是: >为我的.net应用程序实现自己的授权机制和sql表 第一种方法的问题在于它不是集中式的,也不是标准的,因此其他系统不能将其用于授权. 第二种方法的问题是它可能更慢(由于每个资源需要额外的调用).此外,我不确定市场上的应用程序如何支持像XACML这样的标准授权,以便于将来的集成. 那么,一般来说,对于应该为内部用户和外部客户提供服务的Web应用程序进行细粒度授权的良好实践是什么? 解决方法
我肯定会去外部授权.这并不意味着它会变慢.这意味着您将业务逻辑中的访问控制完全分开.
概观 XACML架构可确保您获得所需的性能.由于执行(PEP)和决策引擎(PDP)松散耦合,您可以选择他们如何沟通,他们使用什么协议,是否使用多个决策等…这意味着您可以选择进行集成满足您的性能需求. XACML的SAML配置文件中还定义了标准PDP接口.这可以保证您在未遇到任何特定供应商解决方案的情况下实现“面向未来”的访问控制. Web应用程序的访问控制 目前的实施 此外,领先的金融服务提供商Datev eG正在为其服务/应用程序使用Axiomatics的.Net PDP实施.由于.Net PDP是嵌入在这种情况下,性能是最佳的. 否则,您始终可以选择与任何PDP集成的.Net的现成PEP – 例如基于SOAP的XACML授权服务. XACML具有高水平的性能 事实上,Kuppinger Cole将很快主持关于该主题的网络研讨会:http://www.kuppingercole.com/events/n10058 在这里查看Axiomatics ARQ新闻稿:http://www.axiomatics.com/latest-news/216-axiomatics-releases-new-reverse-query-authorization-product-a-breakthrough-innovation-for-authorization-services.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |