资讯专栏INFORMATION COLUMN

Any-基于Laravel5.4新的权限管理后台骨架

Lavender / 2492人阅读

摘要:最简化权限管理系统,基于开发。基于开发,唯一优化的是用权限和路由别名绑定,这样代码写好之后就可以直接使用。如果是超级管理员,即使没有这个权限会自动赋予权限给超级管理员角色。默认管理员账号密码。然后正常执行命令其他命令即可。

Any

最简化权限管理系统,基于 Laravel5.4 开发。由于 Laravel5.5 发布推迟,只好先写个 Laravel5.4版本的,后面再升级上去。演示地址:http://any.iwanli.me

Any 是什么

Any 是一个最简化全新管理后台模块,包含最简单的权限控制。最开始写权限系统的时候是看的一个老外写的源码。根据他的代码自己写了一个 基于Laravel5.2 IAdmin 后台,这个是最开始权限系系统,为了公用,所有权限都是写的配置文件。

iDashboard 是在 IAdmin 的基础之上优化了设计思想和代码结构,并且权限和路由名称进行绑定,一个中间件就可以判断所有控制器的权限。基于 Laravel5.3 开发,唯一优化的是用权限和路由别名绑定,这样代码写好之后就可以直接使用。但配置文件配置过多问题还是没有解决。

Any 是在 iDashboard 经验上重构的一个项目,之前版本的权限控制都是需要自己去定义,有没有一种方式像 ACL 那样自动生成权限并判断?这样就大大减少了去定义权限和配置。 Any 由此诞生。

Any 的主要原理就是根据用户访问的路由,获取当前访问的控制器(controller)和方法(method),控制器加方法生成唯一权限值,当一个用户访问某个方法的时候中间件会判断。如果是超级管理员,即使没有这个权限会自动赋予权限给超级管理员角色。为了避免中间件查询过多,所以在用户登录的成功之后会缓存一份当前用户的所有权限,判断权限的时候直接获取缓存中,更新任何角色的权限都会更新缓存。除此之外,代码上也进行了很多优化。

Any 特点

基于控制器方法权限控制

多主题(目前只开发了一套,后期支持)

多语言(没有实现数据多语言化)

这些只是基础功能的开始,希望得到更多的灵感

安装 Any

下载本项目代码到本地:

git clone https://github.com/lanceWan/any.git

进入到项目然后 composer 安装:

cd any

composer install

配置 .env 文件:

[sudo]cp .env.example .env

Linux 和 Mac 下注意执行权限 !

配置数据库:

DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

迁移数据:

php artisan migrate --seed

OK,项目已经配置完成,直接访问首页然后登录即可,不清楚路由的可以直接去看 routes/web.php 文件。默认管理员账号:iwanli , 密码:123456 。如果你是在 LinuxMac 下配置的请注意相关目录的权限,这里我就不多说了,enjoy!

安装错误问题

如果出现下面的错误:

The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths.

如果你用 php artisan key:generate 生成秘钥的时候就报这个错误,那么请随便复制一个其他 Laravel 项目的 APP_KEY 到你报错项目的 .env 文件中。然后正常执行命令其他命令即可。

建议和反馈

Any 发展离不开大家的反馈和建议,如果大家有什么想法可以直接在 https://github.com/lanceWan/any/issues 中提出,谢谢。

Laravel学习交流群:312621686

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25558.html

相关文章

  • laravel package收集

    摘要:查找保存下载用搭建自己的缓存仓库权限管理的好选择基于封装的后台管理系统,支持手机和端访问支付宝风格的验证器后台系统微信接口的部署脚本开发的博客系统百度推送自动记录用户行为扩展一个项目管理系统根据生成对应导航的状态 1.debug https://github.com/barryvdh/l... showImg(https://segmentfault.com/img/bVmhWL); ...

    psychola 评论0 收藏0
  • Laravel5.4 博客部署到阿里云服务器

    摘要:前边已经学会在本地用进行开发了,现在就让我们将本地开发的项目部署到阿里云服务器,来次实战操作,阿里云部署环境阿里,,使用服务器,登录。 前边已经学会在本地用Homestead进行开发了,现在就让我们将本地开发的项目部署到阿里云服务器,来次实战操作,阿里云部署环境:阿里ECS,Ubuntu,使用Nginx服务器,SSH登录。 一、服务器配置 如果你的服务器是刚申请的,则必须做一些基础的配...

    JowayYoung 评论0 收藏0
  • RageFrame 一个 Yii2 + AdminLET 免费开源多商户通用后台管理系统

    摘要:极致的插件机制,系统内的系统,安装和卸载不会对原来的系统产生影响强大的功能完全满足各阶段的需求,支持用户多端访问后台微信前台等,系统中的系统。多入口模式,多入口分为后台前端,微信,对内接口,对外接口,不同的业务,不同的设备,进入不同的入口。 RageFrame 2.0 为二次开发而生,让开发变得更简单 项目地址:https://github.com/jianyan74/... 前言 这...

    lordharrd 评论0 收藏0
  • RageFrame 一个 Yii2 + AdminLET 免费开源多商户通用后台管理系统

    摘要:极致的插件机制,系统内的系统,安装和卸载不会对原来的系统产生影响强大的功能完全满足各阶段的需求,支持用户多端访问后台微信前台等,系统中的系统。多入口模式,多入口分为后台前端,微信,对内接口,对外接口,不同的业务,不同的设备,进入不同的入口。 RageFrame 2.0 为二次开发而生,让开发变得更简单 项目地址:https://github.com/jianyan74/... 前言 这...

    sunny5541 评论0 收藏0
  • RageFrame 一个 Yii2 + AdminLET 免费开源多商户通用后台管理系统

    摘要:极致的插件机制,系统内的系统,安装和卸载不会对原来的系统产生影响强大的功能完全满足各阶段的需求,支持用户多端访问后台微信前台等,系统中的系统。多入口模式,多入口分为后台前端,微信,对内接口,对外接口,不同的业务,不同的设备,进入不同的入口。 RageFrame 2.0 为二次开发而生,让开发变得更简单 项目地址:https://github.com/jianyan74/... 前言 这...

    Ali_ 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<