appkita/phpauth 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

appkita/phpauth

Composer 安装命令:

composer require appkita/phpauth

包简介

:Small library PHP for authentication support facebook, google, key, jwt, diggest, basic and session

README 文档

README

APP KITA

Simple Library PHP Authentication API


Build Status

Sample Library PHP Authentication Restfull API

  • Support Multi Authentication

new version 2.1

  • add Session auth

    use Appkita\PHPAuth;
    $config = [
        'session' => [
            'session_key'=>'isLogin'
        ]
    ];
    $auth = new Authentication($config);
    $cek = $auth->auth(METHOD::SESSION, function($auth) {
        return ($auth ? true : false);
    });
  • add Google Auth and Facebook Auth

    $configApi = [
        'google' = [
        'clientID' => 'your client id',
        'clientSecret' => 'secret client',
        'redirectUri' => 'redirect url',
      ];
       'facebook' = [
        'clientID' => 'your client id',
        'clientSecret' => 'secret client',
        'redirectUri' => 'redirect url',
      ];
    ]
    
    //identifikasi Facebook Library
    $FB = new \Appkita\PHPAuth\Type\Facebooklogin($configApi);
    //identifikas google library
    $GOOGLE = new \Appkita\PHPAuth\Type\GoogleLogin($this->configApi);
    
    //get FB login url
    function loginFB() {
        header('location:'. $FB->urlLogin());
    }
    
    //get Google Login url
    function loginGoogle() {
        header('location:'. $GOOGLE->urlLogin());
    }
    
    //url callback fb login to verify token
    function verify_fb() {
        return $FB->decode(function($user, $args, $error) {
              die(json_encode($user));
          });
    }
    //url callback fb Google to verify token
    function verify_fb() {
        return $FB->decode(function($user, $args, $error) {
              die(json_encode($user));
          }, []);
    }

    more info [Google Doc] (https://github.com/googleapis/google-api-php-client) more info [Facebook Document] (https://github.com/facebookarchive/php-graph-sdk)

Installation

Dillinger requires PHP v7.0+ to run.

Install composer follow composer

composer require appkita/phpauth

or

Edit composer.json and update composer

{
    "require": {
        "appkita/phpauth": "^0.1.*"
    }
}

Features

  • API KEY Authentication
  • JWT Authentication (Token)
  • Basic Authentication
  • Digest Authentication
  • Google Auth
  • Facebook Auth
  • SESSION

Using

configuration

  $config = [
    'key_header'=>'X-API-KEY', //Delete if you not use API KEY
    //jwt Configuration
    'key'=>'key_JWT',
    'data'=>'username',
    'timeout'=>3600,
    'iss'=>'mydomain.com',
    'aud'=>'mydomain.com',
    'basic_auth'=>[
        'username_key'=>'email',
        'password_key'=>'password'
    ];
  ];
  $auth = new Appkita\PHPAuth\Authentication($config);
  //or
  use Appkita\PHPAuth;
  $auth = new Authentication($config);
  //or configuration default
  $auth = new Authentication();
    $cek = $auth->auth(METHOD, callback);

callback : is function to cek username or key you can set return or die but if you using digest authentication you must return array

return ['username'=>username, 'password'=>password];
    method Support
    METHOD::Key = 'key',
    METHOD::Basic = 'basic',
    METHOD::Digest = 'digest'
    METHOD::Token = 'token' //is JWT Authentication

Example

1. KEY

    $mykey = 'testingkey';
    $cek = $auth->auth(METHOD::KEY, function($key) {
        if ($key === $mykey) {
            return true;
        } else {
            return false;
        }
    });

2. BASIC

    $myusername = 'testingkey';
    $mypassword = 'password';
    $cek = $auth->auth(METHOD::BASIC, function($username, $password) {
        if ($username == $myusername && $mypassword == $password) {
            return true;
        } else {
            return false;
        }
    });

3. DIGEST

    $myusername = 'testingkey';
    $mypassword = 'password';
    $cek = $auth->auth(METHOD::DIGEST, function($username, $password) {
        if ($username == $myusername) {
            return ['username'=>$myusername, 'password'=>$mypassword];
        } else {
            return false;
        }
    });

4. TOKEN (JWT)

    $myusername = 'testingkey';
    $cek = $auth->auth(METHOD::TOKEN, function($username) {
        if ($username == $myusername) {
            return true
        } else {
            return false;
        }
    });

Development

Want to contribute? Great!

Open your favorite Terminal and run these commands.

First Tab:

git clone git@github.com:gunantos/PHP_AUTHENTICATION.git

Second Tab:

cd PHP_AUTHENTICATION
composer install

License

MIT

Sponsor

Pay Coffe

统计信息

  • 总下载量: 174
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 7
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 6
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2021-05-10

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固