Fra*_*sca 6 c# wcf active-directory windows-principal wcf-security
我有一个连接到WCF服务的WPF客户端,我想锁定一些功能,以便只有某些用户可以执行某些操作.WCF服务在执行服务方法时模拟客户端用户.操作系统是Windows XP.
我正在阅读这个问题,作为调查我的应用程序中将用户角色应用于功能的最佳方法的一部分(我想将用户分配给AD安全组,然后检查IsInRole),并且担心缓存权限将允许用户他们的权限已经减少,以访问他们不再拥有权限的功能.相反,我也担心升级了权限的用户需要注销他们的Windows帐户,甚至可能必须重新启动WCF服务(最糟糕的情况)才能访问新功能.
确保客户端和服务器都能立即看到AD安全组更改的最简单方法是什么?
您始终可以实现自己的会员资格提供商来查询 AD。这非常简单,您将确保所有权限评估都是准确的,或者至少完全符合您的要求。
如果您发现在每次评估时查询 AD 服务器对性能来说“代价高昂”,您可以在客户端上创建自己的缓存,并强制定期或按需刷新。该缓存可以像权限的索引列表(如字典)一样简单,您可以非常快速地查询。
这是一篇关于如何与 AD 交互的好文章: http://www.codeproject.com/KB/system/everythingInAD.aspx