Browse Source

global config

develop
Carmine De Rosa 5 years ago
parent
commit
f38a08b313
  1. 69
      .dev/users.sql
  2. 18
      api/config/config.php
  3. 39
      api/config/database.php
  4. 14
      api/login.php
  5. 2
      api/users.php

69
.dev/users.sql

@ -0,0 +1,69 @@
-- phpMyAdmin SQL Dump
-- version 4.7.7
-- https://www.phpmyadmin.net/
--
-- Host: localhost
-- Creato il: Apr 23, 2020 alle 17:25
-- Versione del server: 10.4.8-MariaDB
-- Versione PHP: 7.3.11
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Database: `jwt`
--
-- --------------------------------------------------------
--
-- Struttura della tabella `users`
--
CREATE TABLE `users` (
`id` int(11) NOT NULL,
`first_name` varchar(150) NOT NULL,
`last_name` varchar(150) NOT NULL,
`email` varchar(255) DEFAULT NULL,
`password` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
--
-- Dump dei dati per la tabella `users`
--
INSERT INTO `users` (`id`, `first_name`, `last_name`, `email`, `password`) VALUES
(1, 'Carmine', 'De Rosa', 'dslaky@gmail.com', '$2y$10$2xHmJMpjQX3aLtNMk/9dQudzVEk5Y4SfmDZfA2imQPyIiTMBfcC8e');
--
-- Indici per le tabelle scaricate
--
--
-- Indici per le tabelle `users`
--
ALTER TABLE `users`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT per le tabelle scaricate
--
--
-- AUTO_INCREMENT per la tabella `users`
--
ALTER TABLE `users`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

18
api/config/config.php

@ -1,11 +1,17 @@
<?php
$CONF['CLAIM']['SECRET'] = "SECRET_KEY_1234567890";
$CONF['CLAIM']['ISSUER'] = "http://rest.local";
$CONF['CLAIM']['AUDIENCE'] = "http://rest.local";
$CONF['CLAIM']['ISSUE_DATE'] = time();
$CONF['CLAIM']['NOT_BEFORE'] = $CONF['CLAIM']['ISSUE_DATE'] + 10;
$CONF['CLAIM']['EXPIRE'] = $CONF['CLAIM']['ISSUE_DATE'] + 60000;
$GLOBALS['CONF']['DB']['HOST'] = "localhost";
$GLOBALS['CONF']['DB']['USER'] = "root";
$GLOBALS['CONF']['DB']['PASSWORD'] = "root";
$GLOBALS['CONF']['DB']['DB_NAME'] = "jwt";
$GLOBALS['CONF']['CLAIM']['SECRET'] = "SECRET_KEY_1234567890";
$GLOBALS['CONF']['CLAIM']['ISSUER'] = "http://rest.local";
$GLOBALS['CONF']['CLAIM']['AUDIENCE'] = "http://rest.local";
$GLOBALS['CONF']['CLAIM']['ISSUE_DATE'] = time();
$GLOBALS['CONF']['CLAIM']['NOT_BEFORE'] = $GLOBALS['CONF']['CLAIM']['ISSUE_DATE'] + 10;
$GLOBALS['CONF']['CLAIM']['EXPIRE'] = $GLOBALS['CONF']['CLAIM']['ISSUE_DATE'] + 60000;
?>

39
api/config/database.php

@ -1,24 +1,35 @@
<?php
// used to get mysql database connection
class DatabaseService {
private $db_host = "localhost";
private $db_name = "jwt";
private $db_user = "root";
private $db_password = "root";
private $connection;
protected $glob;
private $db_host;
private $db_name;
private $db_user;
private $db_password;
private $connection;
public function getConnection(){
public function __construct() {
global $GLOBALS;
$this->glob =& $GLOBALS;
}
$this->connection = null;
public function getConnection() {
try{
$this->connection = new PDO("mysql:host=" . $this->db_host . ";dbname=" . $this->db_name, $this->db_user, $this->db_password);
}catch(PDOException $exception){
echo "Connection failed: " . $exception->getMessage();
}
$this->connection = null;
$this->db_host = $this->glob['CONF']['DB']['HOST'];
$this->db_name = $this->glob['CONF']['DB']['DB_NAME'];
$this->db_user = $this->glob['CONF']['DB']['USER'];
$this->db_password = $this->glob['CONF']['DB']['PASSWORD'];
return $this->connection;
try {
$this->connection = new PDO("mysql:host=" . $this->db_host . ";dbname=" . $this->db_name, $this->db_user, $this->db_password);
} catch(PDOException $exception) {
echo "Connection failed: " . $exception->getMessage();
}
return $this->connection;
}
}
?>

14
api/login.php

@ -42,11 +42,11 @@ if($num > 0) {
if(password_verify($password, $password2)) {
$token = array(
"iss" => $CONF['CLAIM']['ISSUER'],
"aud" => $CONF['CLAIM']['AUDIENCE'],
"iat" => $CONF['CLAIM']['ISSUE_DATE'],
"nbf" => $CONF['CLAIM']['NOT_BEFORE'],
"exp" => $CONF['CLAIM']['EXPIRE'],
"iss" => $GLOBALS['CONF']['CLAIM']['ISSUER'],
"aud" => $GLOBALS['CONF']['CLAIM']['AUDIENCE'],
"iat" => $GLOBALS['CONF']['CLAIM']['ISSUE_DATE'],
"nbf" => $GLOBALS['CONF']['CLAIM']['NOT_BEFORE'],
"exp" => $GLOBALS['CONF']['CLAIM']['EXPIRE'],
"data" => array(
"id" => $id,
"firstname" => $firstname,
@ -56,13 +56,13 @@ if($num > 0) {
http_response_code(200);
$jwt = JWT::encode($token, $CONF['CLAIM']['SECRET']);
$jwt = JWT::encode($token, $GLOBALS['CONF']['CLAIM']['SECRET']);
echo json_encode(
array(
"message" => "Successful login.",
"jwt" => $jwt,
"email" => $email,
"expireAt" => $CONF['CLAIM']['EXPIRE']
"expireAt" => $GLOBALS['CONF']['CLAIM']['EXPIRE']
));
} else {
http_response_code(401);

2
api/users.php

@ -11,7 +11,7 @@ header("Access-Control-Allow-Headers: Content-Type, Access-Control-Allow-Headers
$authToken = new AuthenticationToken();
$tokenCheck = $authToken->tokenCheck($CONF['CLAIM']['SECRET']);
$tokenCheck = $authToken->tokenCheck($GLOBALS['CONF']['CLAIM']['SECRET']);
if($tokenCheck['access'] == "GRANTED") {

Loading…
Cancel
Save