不能从symfony安全选民内部抛出异常

时间:2015-09-21 12:46:14

标签: symfony symfony-security

我正在使用自定义symfony选民并使用一致的策略。访问决策管理器循环选民和isGranted返回布尔值。

我们不能从Voter内部抛出异常以了解访问被拒绝的原因。我想知道哪些选民拒绝访问以及为什么我可以向用户显示适当的消息以采取行动,例如升级到特定订阅。最好的方法是什么?

1 个答案:

答案 0 :(得分:0)

一个好的算法可能是:

  • 在选民内部抛出异常
  • 将其抓取到Manager中,将其存储到Array或Object中并继续
  • 在链(循环)完成后,检查Manager是否“收集”了一些异常并相应地采取行动