3

Symfony 2 (最終バージョン) で、エンティティを更新しようとしています:

php app/console doctrine:schema:upate --force

端末に次のエラー メッセージが表示されました。

[Symfony\Component\Config\Definition\Exception\InvalidConfigurationException]
「security.firewalls.access_control」の下の認識されないオプション「0、1、2、3」

私は Symfony に不慣れで、この問題を解決するためにどこを検索すればよいかわかりません。

これは security.yml ファイルです:

# To get started with security, check out the documentation:

http://symfony.com/doc/current/book/security.html

セキュリティ: エンコーダ: FOS\UserBundle\Model\UserInterface: bcrypt

role_hierarchy:
    ROLE_ADMIN:       ROLE_USER
    ROLE_SUPER_ADMIN: ROLE_ADMIN

# http://symfony.com/doc/current/book/security.html#where-do-users-come-from-user-providers
providers:
    fos_userbundle:
        id: fos_user.user_provider.username

firewalls:
    # disables authentication for assets and the profiler, adapt it according to your needs
    main:
        pattern: ^/
        form_login:
            provider: fos_userbundle
            csrf_provider: security.csrf.token_manager # Use form.csrf_provider instead for Symfony <2.4

        logout:       true
        anonymous:    true
    dev:
        pattern: ^/(_(profiler|wdt)|css|images|js)/
        security: false

    #main:
        #anonymous: ~
        # activate different ways to authenticate

        # http_basic: ~
        # http://symfony.com/doc/current/book/security.html#a-configuring-how-your-users-will-authenticate

        # form_login: ~
        # http://symfony.com/doc/current/cookbook/security/form_login_setup.html

    access_control:
        - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/admin/, role: ROLE_ADMIN }
4

3 に答える 3

6
firewalls:
    main:
        pattern: ^/
        form_login:
            provider: fos_userbundle
            csrf_provider: security.csrf.token_manager # Use form.csrf_provider instead for Symfony <2.4

        logout:       true
        anonymous:    true
    dev:
        pattern: ^/(_(profiler|wdt)|css|images|js)/
        security: false


access_control:
        - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/admin/, role: ROLE_ADMIN }
于 2015-08-16T09:02:41.533 に答える
4

ファイアウォールと同じレベルで access_control セクションをインデントしてみてください

于 2015-08-15T20:11:02.733 に答える
4

このエラーは、エンティティを更新しようとしたこととは関係ありませんが、security.yml構成ファイルの問題を示しています。この場合、セクションのインデントは正しくなく、キーワードaccess_controlと同じインデント レベルにする必要があります。firewallsYAML ファイルはインデントに敏感なので、これで問題が解決されます。

于 2015-08-15T19:28:31.667 に答える