Stev
Stev

Reputation: 1112

Symfony YAML include file

How can I split my security.yml into multiple files?

I know about the imports statement, but I need to import the role_hierarchy.

For example

security:
    encoders:
        FOS\UserBundle\Model\UserInterface: sha512
    role_hierarchy:
        ROLE_USER:       
            //IMPORT FROM USER.YML
        ROLE_SELLER:
            //IMPORT FROM ANOTHER SELLER.YML
        ROLE_ADMIN:       
           //IMPORT FROM ADMIN.YML
        ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

I need this because I want to define the roles for sonata admin's, and I don't want to store them in the database.

Thank you.

Upvotes: 1

Views: 1941

Answers (1)

Tom
Tom

Reputation: 1366

You could create the roles as config parameters:

// user_roles.yml
parameters:
    seller_roles: [ROLE_A, ROLE_B, ROLE_C]

And use them in the security config:

// security.yml
imports:
    - { resource: user_roles.yml }

security:
    role_hierarchy:
        ROLE_SELLER: %seller_roles%

Upvotes: 2

Related Questions