cinema-studio-pro/auth-test.php
2026-01-08 11:18:49 -05:00

64 lines
2.2 KiB
PHP

<?php
/**
* Authentication Test & Debug Page
* Shows current authentication status and configuration
*/
header('Content-Type: text/plain');
require_once __DIR__ . '/config.php';
require_once __DIR__ . '/AuthMiddleware.php';
echo "=== MSAL Authentication Test ===\n\n";
echo "1. SSO Configuration:\n";
echo " Enabled: " . (SSO_ENABLED ? 'YES' : 'NO') . "\n";
echo " Tenant ID: " . (SSO_TENANT_ID ?: 'NOT SET') . "\n";
echo " Client ID: " . (SSO_CLIENT_ID ?: 'NOT SET') . "\n\n";
echo "2. Testing AuthMiddleware:\n";
try {
$auth = new AuthMiddleware();
echo " ✓ AuthMiddleware loaded successfully\n";
echo " SSO Enabled: " . ($auth->isSSOEnabled() ? 'YES' : 'NO') . "\n\n";
echo "3. Authentication Status:\n";
$status = $auth->isAuthenticated();
echo " Authenticated: " . ($status['authenticated'] ? 'YES' : 'NO') . "\n";
if ($status['authenticated']) {
echo " User Name: " . ($status['user']['name'] ?? 'Unknown') . "\n";
echo " User Email: " . ($status['user']['preferred_username'] ?? $status['user']['upn'] ?? 'Unknown') . "\n";
} else {
echo " Error: " . ($status['error'] ?? 'Unknown') . "\n";
}
echo "\n4. Cookie Check:\n";
echo " auth_token cookie: " . (isset($_COOKIE['auth_token']) ? 'PRESENT' : 'NOT PRESENT') . "\n";
if (isset($_COOKIE['auth_token'])) {
$tokenLength = strlen($_COOKIE['auth_token']);
echo " Token length: " . $tokenLength . " chars\n";
echo " Token preview: " . substr($_COOKIE['auth_token'], 0, 50) . "...\n";
}
echo "\n5. Environment Variables:\n";
echo " SSO_ENABLED env: " . (getenv('SSO_ENABLED') ?: 'NOT SET') . "\n";
echo " SSO_TENANT_ID env: " . (getenv('SSO_TENANT_ID') ?: 'NOT SET') . "\n";
echo " SSO_CLIENT_ID env: " . (getenv('SSO_CLIENT_ID') ?: 'NOT SET') . "\n";
echo "\n6. Session Info:\n";
if (session_status() === PHP_SESSION_ACTIVE) {
echo " Session active: YES\n";
echo " Session ID: " . session_id() . "\n";
} else {
echo " Session active: NO\n";
}
echo "\n=== Test Complete ===\n";
} catch (Exception $e) {
echo " ✗ Error: " . $e->getMessage() . "\n";
echo " Stack trace:\n";
echo $e->getTraceAsString() . "\n";
}