优秀的安保特征是你不仅希望exist, 甲骨文甚至有,这是一个涵盖详细内容的有用的博客职位:,填满了样本代码。
既然简单地把docs和 run倒在地联系起来,那么下面是讨论一下,如何把这同我的理解结合起来。
The 0th problem: rough-grained, declarative security
https://stackoverflow.com/questions/1401263/what-is-declarative-security-in-general” 这迫使你在设计时间灵活地界定你们的所有用户作用。 这是extremely的不可取的,原因有二:一,它未能从执行中适当推断出你的安保模式(未能充分。 您的申请和开启信息披露脆弱性的门槛;其次,在你提出申请时,您的用户作用是直截了当的,经常未能提供微额优惠的许可,或ACLs,如果他们要求或有必要的话。
事实上,这是一个抽象问题。 你再次使用一种能立即满足你当前需要,但不能指望在你提出申请的生命周期中能够可行或维持的制度,因为作用变得更加复杂,你守则的复杂性逐步增加。
Fine-grained security using Managed Beans
The first-order solution here is to use an abstraction model that allows you to define user roles independently in the context of each JSF method call, allowing you to swap them in or out as needed. As a bonus, this allows you to define finer-grained permissions, as such a scheme allows you to define your permissions per method instead of per view, per endpoint, or per bean. And if the roles change? You only need to update your permissions model in a single location, instead of going to each of those beans and swapping out their user definitions.
forelinked article 远比Immm愿意在此面面面面面面面面面面面面面面更详细,因此我高度建议阅读博客。 但是,为了做到这一点,你应提供认证等级和说明层,详细说明许可作用,和前ain只见你明确和蓄意地将两者联系起来的地方。
界定微额收益的方法要求和具有实际意义的安全政策,留待读者使用,但如果你在这方面有问题,就可自由地在评论或一系列后续问题中提出,因为这些问题对广大受众具有内在的有用性。
Improvements
可以想象,这一解决办法对于你的需求来说足够有力。 例如,如果你希望通过LDAP或Kerberos 提供用户和作用的统一代表,这只是满足你们需要的部分解决办法。 几个resources 这一领域已经存在,但以其他方式留待读者。
归根结底,在完美的世界上,这就是如何界定你的申请安全。 你的需要可能有所不同,对于小范围留下的东西,简单明了,为了满足你的需要,声明性安全可能受到罚款。 毕竟,这是为什么仍然存在的。
但是,对于必须安全、正确地满足大量用户需求的更大应用,这是正确的道路。 这需要更多的知识和管理,但如果你开始适当这样做,就会节省大量时间、精力和沮丧。
与往常一样,最好在你提出申请的情况下。