我試圖讓ShibbolethBundle(https://github.com/rmoreas/ShibbolethBundle)工作。但堅持在登錄時創建新用戶。我發現的userProvider不正確的類(在這裏是一個實現ShibbolethUserProviderInterface https://github.com/rmoreas/ShibbolethBundle/blob/master/Security/ShibbolethAuthProvider.php#L109Symfony 2自定義用戶提供商
我的自定義提供的定義是這樣的:
namespace Meot\FormBundle\Entity;
...
class UserRepository extends EntityRepository implements ShibbolethUserProviderInterface {
...
}
的security.xml
....
security:
providers:
main_provider:
entity: { class: Meot\FormBundle\Entity\User }
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
secured_area:
pattern: ^/
shibboleth: ~
logout:
path: /logout
target:/
success_handler: security.logout.handler.shibboleth
我發現這本食譜(http://symfony.com/doc/current/cookbook/security/entity_provider.html)陳述
要finis在實現中,必須改變安全層 的配置,以告知Symfony使用新的自定義實體提供者 而不是通用的Doctrine實體提供者。通過刪除security.yml 文件的security.providers.administrators.entity部分中的 屬性字段可以實現 的微不足道。
試過了,沒有工作。用戶提供者的類仍然是「Symfony \ Bridge \ Doctrine \ Security \ User \ EntityUserProvider」。
我想知道通過刪除屬性字段,symfony如何能夠找到我的自定義用戶提供程序?
謝謝。