Come personalizzare il fosuser bundle: file di sicurezza, ho bisogno di scrivere un regex

StackOverflow https://stackoverflow.com//questions/11657015

  •  11-12-2019
  •  | 
  •  

Domanda

Ho bisogno di dire al mio amministratore Fosuser che voglio consentire solo agli utenti amministrativi in ogni sezione del sito Web che inizia da admin. Per impostazione predefinita, nel Doc, il file DA, per il file Security.yml che code:

security:
    encoders:
        "FOS\UserBundle\Model\UserInterface": sha512

    providers:
        fos_userbundle:
            id: fos_user.user_manager
    firewalls:
        dev:
            pattern:  ^/(_(profiler|wdt)|css|images|js)/
            security: false

        # Firewall pour les pages de connexion, inscription, et récupération de mot de passe
        login:
            pattern:   ^/(login$|register|resetting)  # Les adresses de ces pages sont login, register et resetting
            anonymous: true                           # On autorise bien évidemment les anonymes sur ces pages !

        # Firewall principal pour le reste de notre site
        main:
            pattern: ^/                      # ^/ = tout ce qui commence par / = tout notre site
            form_login:                      # On définit notre méthode d'authentification
                provider:    fos_userbundle  # On lit l'authentification au provider définit plus haut
                remember_me: true            # On active la possibilité du "Se souvenir de moi" (désactivé par défaut)
            remember_me:
                key:         %secret%        # On définit la clé pour le remember_me (%secret% est un parametre de parameters.ini)
            anonymous:       true            # On autorise les utilisateurs anonymes (non identifiés)
            logout:          true            # On autorise la déconnexion manuelle (désactivé par défaut)
.

Voglio solo modificare quella linea:

pattern: ^/  # ^/ = tout ce qui commence par / = tout notre site
.

In modo che io possa Sey: su per tutti gli indirizzi come " http://www.mywebsite.com/web/app_dev.php/admin/ '

Come scrivo questo regex?Ho provato:

pattern: ^/(admin)  # ^/ = tout ce qui commence par / = tout notre site
.

Ma questo non funziona ...

È stato utile?

Soluzione

Per consentire solo agli utenti di amministratore in ogni pagina che avvia con admin, è necessario modificare la sezione Access_Control del file Security.yml:

access_control:
    #List of pages only accessible by administrator
    - { path: ^/admin, role: ROLE_ADMIN }
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top