Advertisement
kecsot

k

Mar 25th, 2016
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.82 KB | None | 0 0
  1. <?php
  2.  
  3. namespace App\Http\Controllers;
  4.  
  5.  
  6. use Illuminate\Http\Request;
  7. use App\Http\Requests;
  8. use App\User;
  9. use Auth;
  10. use Adldap;
  11.  
  12. class ActiveDirectoryController extends Controller
  13. {
  14.  
  15.     // Hiba üzenetek
  16.     private $error_UserNotFound = "Nincs ilyen felhasználó a rendszerben!";
  17.     private $error_UserNotActive = "A felhasználó nem aktív!";
  18.     private $error_ActiveDirFailed = "Aktív directory bejelentkezés sikertelen!";
  19.  
  20.     /*
  21.      * Bejelenzketési felület kirakása
  22.      */
  23.     public function showLogin()
  24.     {
  25.         return view('auth.login')->withErrors('');
  26.     }
  27.  
  28.     /*
  29.         Megnézi, hogy az adatbázisban van-e ilyen user.
  30.         Majd az Active Directory-n ellenőrzi a username-password
  31.         párost. Ha AD-ben benne van akkor megnézi bejelentkeztetjük.
  32.      *
  33.      * AD srv beállítások: config/adldap.php
  34.      */
  35.     public function loginWithActiveDirectory(Request $request)
  36.     {
  37.         $postData = $request->only(['username','password']);
  38.         $username = $postData['username'];
  39.         $password = $postData['password'];
  40.  
  41.         $user = User::where('username','=',$username)->first();
  42.         if(count($user) > 0)
  43.         {
  44.             $userDetails = $user -> userDetail;
  45.  
  46.             if($userDetails->is_active != 1){
  47.                 return redirect()->back()->withErrors($this ->error_UserNotActive);
  48.             }
  49.            
  50.             // AD ellenőrzés
  51.             if (Adldap::authenticate($username, $password)) {
  52.  
  53.                 // Beléptetés
  54.                 Auth::login($user);
  55.                 return redirect()->intended('/home');
  56.  
  57.  
  58.             }else{
  59.  
  60.                 return redirect()->back()->withErrors($this ->error_ActiveDirFailed);
  61.             }
  62.         }
  63.         return redirect()->back()->withErrors($this ->error_UserNotFound);
  64.  
  65.  
  66.     }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement