kapilpatel20/bvrolepermission

基于角色的权限管理,与 fos userbundle 结合使用

安装: 176

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

语言:JavaScript

类型:symfony-bundle

dev-master 2016-04-05 12:50 UTC

This package is not auto-updated.

Last update: 2024-09-23 12:41:07 UTC


README

基于 fos userbundle 的角色权限管理

安装步骤

  1. 在 composer.json 文件下的 "require" 部分,添加 "friendsofsymfony/user-bundle": "~2.0@dev"

  2. 使用 composer require kapilpatel20/bvrolepermission 注册 bundle 到 AppKernel.php

    new FOS\UserBundle\FOSUserBundle(), new BvRoleBundle\BvRoleBundle()

  3. 打开你的项目目录下的 app/config/config.yml 文件,将以下代码添加到该文件中

    fos_user: db_driver: orm # 其他有效值包括 'mongodb', 'couchdb' 和 'propel' firewall_name: main user_class: BvRoleBundle\Entity\User firewall_name: main group: group_class: BvRoleBundle\Entity\Group

  4. 打开你的项目目录下的 app/config/routing.yml 文件,将以下代码添加到该文件中

    bv_role: resource: "@BvRoleBundle/Resources/config/routing.yml" prefix: /

  5. 打开你的项目目录下的 app/config/security.yml 文件,更新你的代码如下

    security: encoders: FOS\UserBundle\Model\UserInterface: bcrypt

    role_hierarchy: ROLE_ADMIN: ROLE_USER ROLE_SUPER_ADMIN: ROLE_ADMIN

    providers: fos_userbundle: id: fos_user.user_provider.username

    firewalls: main: pattern: ^/ form_login: provider: fos_userbundle #csrf_token_generator: security.csrf.token_manager # 如果你使用的是 Symfony < 2.8,则使用以下配置代替: success_handler: login_success_handler csrf_provider: form.csrf_provider

         logout:       true
         anonymous:    true
    

    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 }

  6. 打开你的项目目录下的 app/config/services.yml 文件,更新你的代码如下

    services: fos_user.doctrine_registry: alias: doctrine

  7. 生成表格

    php app/console doctrine:schema:update --dump-sql php app/console doctrine:schema:update --force

完成!现在你可以通过浏览器查看此 bundle 的效果。打开浏览器并访问

https:///YOUR-PROJECT-NAME/web/app_dev.php/login