AUTH 用户管理操作

AUTH的实现是用抽象类来实现的,一个类,对应多种不同的验证方式。

先来介绍一个抽象类,很有借鉴意义:

实现一个猴子类,狗类,以及后面可其他类。 通常可以用抽象类和接口实现:

但是我们不直接定义具体的类,我们把所有猴子类,狗类的特征放在不同的config里面,同过抽象类方法来 初始话一个对象。

config.php

1 <?php
2 return array(
3     ‘driver‘=>‘monkey‘,//调用那个类。
4         ‘index‘=>‘Ani‘,//其他。
5 );

config

animal.php

 1 <?php
 2 abstract class Animal{
 3     protected static $_instance;
 4
 5     public static function instance($config){
 6
 7         $driver=$config[‘driver‘];
 8         $ind=$config[‘index‘];
 9         require "animal/$driver.php";
10
11         $class=$ind."_".$driver;
12         self::$_instance=new $class($config);
13         return self::$_instance;
14     }
15
16 }
17
18 $config=require ‘animal/config/config.php‘;
19 $dog=Animal::instance($config);
20 echo $dog->getname();

dog.php

1 <?php
2 // require ‘../animal.php‘;
3 class Ani_dog extends Animal{
4
5     function getname(){
6         return "dog";
7     }
8
9 }

monkey.php

1 <?php
2 // require ‘../animal.php‘;
3 class Ani_monkey extends Animal{
4
5     function getname(){
6         return "monkey";
7     }
8
9 }

Auth也是通过这样的方式来调整认证方式,他有一个自定义 driver为 File的类。

用着个模块第一步,配置好正确的config。

调用抽象类的来初始化一个对象;

进行认证。

如:

1         $auth = Auth::instance();
2         if ($auth->login(‘admin‘, ‘good_pass‘, true)) {
3             echo ‘hello, ‘ . $auth->get_user();
4         } else {
5             echo ‘login failed!‘;
6         }
7         $auth->logout();

AUTH实现的有:

密码加密:

利用hash_hmac函数进行hash加密存储。

session记录登录,可定义自动保留时长。到时间未操作自动推出。

AUTH 用户管理操作

时间: 2024-10-29 00:38:44

AUTH 用户管理操作的相关文章

MongoDB快速入门学习笔记7 MongoDB的用户管理操作

1.修改启动MongoDB时要求用户验证加参数 --auth 即可.现在我们把MongoDB服务删除,再重新添加服务 mongod --dbpath "D:\work\MongoDB\data" --logpath "D:\work\MongoDB\log\mongodb.log" --install --serviceName "MongoDB" --auth 2.创建用户,并使用创建的用户登录打开shell操作界面,默认test数据,再查看所

Ubuntu用户管理操作

Linux是一个用户权限管理得很严格的系统,Ubuntu作为最受欢迎的桌面发行版,提供了简单易用的图形界面工具来管理用户,但是命令行工具往往更强大,用得熟练的话效率会更高.用户管理命令常用的有如下几个: useradd 这个命令用于添加用户,相比图形界面工具,它可以指定用户文件夹,所属群组等.如果执行useradd -D不加任何其它参数,bash将返回当前创建用户的默认选项,如果附加其他参数,那么这个命令就会把新建用户的默认配置更新到当前值.-p选项可以设置 密码,-s选项可以设定shell,-

Bmob用户管理操作

注册用户 BmobUser bu = new BmobUser(); bu.setUsername("sendi"); bu.setPassword("123456"); bu.setEmail("[email protected]"); //注意:不能用save方法进行注册 bu.signUp(this, new SaveListener() { @Override public void onSuccess() { // TODO Auto-

SElinux用户管理操作

查看当前用户上下文 id -Z 查看登陆的用户和其对应的SELinux用户 semanage login -l 改变用户和SELinux的对应关系 semanage login -a选项能改变,-s用来指定SELinux用户 例子: 首先,查看likaiming用户下的上下文 id -Z 执行如下命令改变用户likaiming登陆时绑定的SELinux用户 semanage login -a -s staff_u likaiming 杀死用户likaiming pkill -KILL -u li

使用IntelliJ IDEA开发SpringMVC网站(四)用户管理

原文:使用IntelliJ IDEA开发SpringMVC网站(四)用户管理 摘要 通过对用户表的管理,更加深入地讲解SpringMVC的操作. 目录[-] 文章已针对IDEA 15做了一定的更新,部分更新较为重要,请重新阅读文章并下载最新源码. 七.用户管理 1.JPA操作定义 2.后台管理 (1)查看所有用户 (2)添加用户 (3)查看用户详情 (4)修改用户信息 (5)删除用户 转载请注明出处:Gaussic(一个致力于AI研究却不得不兼顾项目的研究生) . 注:在阅读本文前,请先阅读:

Java EE 学习(8):IDEA + maven + spring 搭建 web(4)- 用户管理

转载:Gaussic(一个致力于AI研究却不得不兼顾项目的研究生) 注:在阅读本文前,请先阅读: Java EE 学习(5):IDEA + maven + spring 搭建 web(1) ava EE 学习(6):IDEA + maven + spring 搭建 web(2)- 配置 Spring Java EE 学习(7):IDEA + maven + spring 搭建 web(3)- 配置数据库 记录: 通过对用户表的管理,更加深入地讲解SpringMVC的操作. 6 用户管理 既然我们

Django 编写博客网站的用户管理部分(采用自有的 django.contrib.auth) 2. 登陆登出和用户信息管理

续前Django 编写博客网站的用户管理部分(采用自有的 django.contrib.auth) 1. 注册部分 项目工具:Python 2.7.11  Django 1.10.2  Bootstrap 3.3.0   IDE:eclipse Pydev 1. 由于Django自带auth, 故仅需编写登录登出的url和template即可 urls常见上篇 template代码如下仅供参考: login 1 {% extends "account_base.html" %} 2 3

Django 编写博客网站的用户管理部分(采用自有的 django.contrib.auth) 1. 注册部分

项目工具:Python 2.7.11  Django 1.10.2  Bootstrap 3.3.0   IDE:eclipse Pydev 1. 首先确保settings中已有'django.contrib.auth' 例如: myproject下settings 1 INSTALLED_APPS = [ 2 'account', 3 'django.contrib.admin', 4 'django.contrib.auth', 5 'django.contrib.contenttypes'

ubuntu用户管理与权限操作实例

ubuntu用户管理与权限操作实例 昨天在转载此文时提到都要把文件及目录权限的操作也会独立成文来给大家介绍,今天特地学习了用户管理和权限操作的例程,现总结如下.这些命令基本都是我在自己电脑上运行过后能够实现此功能,我才把他们加进来,希望对大家有所帮助,也希望和大家多交流^_^ 一个实例 例子:假设有两个用户bill和jane,他们都有音乐CD集,并要创建一个共享目录,在该目录下他们各自存储自己的音乐文件.此时用户bill通过sudo获得了超级用户权限. 首先,创建一个以bill和jane为成员的