PHP code example of publiux / laravel-authentication-log
1. Go to this page and download the library: Download publiux/laravel-authentication-log library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
publiux / laravel-authentication-log example snippets
use Rappasoft\LaravelAuthenticationLog\Traits\AuthenticationLoggable;
class User extends Authenticatable
{
use AuthenticationLoggable;
}
$user = User::find(1);
// Get comprehensive statistics
$stats = $user->getLoginStats();
// Returns: total_logins, failed_attempts, unique_devices, unique_ips, last_30_days, etc.
// Or get individual stats
$totalLogins = $user->getTotalLogins();
$failedAttempts = $user->getFailedAttempts();
$uniqueDevices = $user->getUniqueDevicesCount();
// Get all active sessions
$activeSessions = $user->getActiveSessions();
$sessionCount = $user->getActiveSessionsCount();
// Revoke a specific session
$user->revokeSession($sessionId);
// Revoke all other sessions (keep current device)
$user->revokeAllOtherSessions($currentDeviceId);
// Revoke all sessions
$user->revokeAllSessions();
// Get all user devices
$devices = $user->getDevices();
// Trust a device
$user->trustDevice($deviceId);
// Untrust a device
$user->untrustDevice($deviceId);
// Update device name
$user->updateDeviceName($deviceId, 'My iPhone');
// Check if device is trusted
if ($user->isDeviceTrusted($deviceId)) {
// Device is trusted
}
use Rappasoft\LaravelAuthenticationLog\Models\AuthenticationLog;
// Filter successful logins
$successfulLogins = AuthenticationLog::successful()->get();
// Filter failed logins
$failedLogins = AuthenticationLog::failed()->get();
// Filter by IP address
$ipLogs = AuthenticationLog::fromIp('192.168.1.1')->get();
// Filter recent logs (last 7 days)
$recentLogs = AuthenticationLog::recent(7)->get();
// Filter suspicious activities
$suspicious = AuthenticationLog::suspicious()->get();
// Filter active sessions
$activeSessions = AuthenticationLog::active()->get();
// Filter trusted devices
$trustedDevices = AuthenticationLog::trusted()->get();
// Filter by device ID
$deviceLogs = AuthenticationLog::fromDevice($deviceId)->get();
// Filter for specific user
$userLogs = AuthenticationLog::forUser($user)->get();
// Detect suspicious activity
$suspiciousActivities = $user->detectSuspiciousActivity();
// Returns array of suspicious activities:
// [
// [
// 'type' => 'multiple_failed_logins',
// 'count' => 5,
// 'message' => '5 failed login attempts in the last hour'
// ],
// [
// 'type' => 'rapid_location_change',
// 'countries' => ['US', 'UK'],
// 'message' => 'Login from multiple countries within an hour'
// ]
// ]
use Rappasoft\LaravelAuthenticationLog\Middleware\RequireTrustedDevice;
// In your routes file
Route::middleware(['auth', RequireTrustedDevice::class])->group(function () {
// These routes