我想在調用我的Web應用程序中的大多數方法之前檢查用戶是否已經登錄。我不知道該怎麼做。我想在Ruby On Rails中使用類似before_filter的東西。我已經在symfony2文檔中檢查過濾器,但它對我沒有幫助。我需要一個真實的登錄例子。在symfony2中執行操作之前
這是我檢查過的鏈接。 http://symfony.com/doc/current/cookbook/event_dispatcher/before_after_filters.html
我想在調用我的Web應用程序中的大多數方法之前檢查用戶是否已經登錄。我不知道該怎麼做。我想在Ruby On Rails中使用類似before_filter的東西。我已經在symfony2文檔中檢查過濾器,但它對我沒有幫助。我需要一個真實的登錄例子。在symfony2中執行操作之前
這是我檢查過的鏈接。 http://symfony.com/doc/current/cookbook/event_dispatcher/before_after_filters.html
在Symfony中有很多方法可以處理訪問控制。最基本的是使用URL匹配,當您想要限制對/ admin之類的URL和後續內容的訪問時,這很方便。這是在security.yml中配置的。
# app/config/security.yml
security:
access_control:
- { path: ^/admin, roles: ROLE_ADMIN }
該頁面顯示了不同的方式,以確保您的應用程序:
http://symfony.com/doc/current/book/security.html#access-control
甚至還有一個辦法,以確保任何服務,即使它不是一個控制器:
http://symfony.com/doc/current/cookbook/security/securing_services.html
但我如何檢查身份證已經有一個會議或沒有?換句話說:如果用戶已經登錄,則允許訪問,否則,重定向到登錄頁面 – anyavacy
如果您的用戶登錄,他很有可能具有ROLE_USER角色(任何登錄用戶具有的基本角色),所以您可以在訪問控制模式中需要這個角色。如果用戶沒有角色,Symfony將處理重定向。 – Jody
我仍然得到:訪問此資源需要完整身份驗證。所以我不應該在這裏關心存儲會話嗎?那麼重定向呢?如果他沒有登錄,我想重定向用戶 – anyavacy