(Security)如何使用多个Guard验证器(3.0)

注意:Guard组件在symfony2.8被引入。这个Guard验证组件允许你一次轻松的使用许多不同的验证器。

Entry Point是一个服务id(你的验证器)start()方法被调用去启动验证过程。

多个验证器分享这个Entry Point

有时你想要去给你用户提供不同的验证机制,像一个登录表单还有一个facebook登录,Entry Point会将用户定向到登录页面。那么,你要在你的配置中告诉Entry Point,你要使用的机制。

这就是你配置的安全:

对于这个方法这里是一个限制 – 你必须使用一个Entry Point。

 

多个验证器使用单独的Entry Points

然而,有些案例需要你的验证器保护应用程序的不同部分。例如,你有一个登录表单保护你应用程序的前台部分安全区域还有api tokens保护api。你的一个防火墙只能配置一个Entry Point,解决方案是将配置分为两个独立的防火墙:

 

发表评论