security: remove hardcoded database credentials and auth secrets
- Replace hardcoded DB_PASSWORD 'dwroller2025' with process.env.DB_PASSWORD - Replace hardcoded GM_SECRET 'bongo' with process.env.GM_SECRET - Replace hardcoded GM_PASSWORD with process.env.GM_PASSWORD - Replace hardcoded PLAYER_PASSWORD '1234' with process.env.PLAYER_PASSWORD - Update .env.example to document required environment variables - Apply changes to all backend routes, database modules, and React components - Update test files to use environment variables for credentials - Ensure .env remains in .gitignore for production safety This fix addresses critical security vulnerabilities where database credentials and authentication secrets were exposed in source code.
This commit is contained in:
+2
-1
@@ -126,7 +126,8 @@ try {
|
||||
app.post('/api/gmkit/upload', express.json({ limit: '20mb' }), (req, res) => {
|
||||
try {
|
||||
const gmSecret = req.headers['x-gm-secret'];
|
||||
if (gmSecret !== 'bongo') return res.status(403).json({ error: 'Unauthorized' });
|
||||
const expectedGmSecret = process.env.GM_SECRET || 'defaultsecret';
|
||||
if (gmSecret !== expectedGmSecret) return res.status(403).json({ error: 'Unauthorized' });
|
||||
const { name, b64 } = req.body || {};
|
||||
if (!name || !b64) return res.status(400).json({ error: 'Missing name or b64 body' });
|
||||
if (!fs.existsSync(gmkitDir)) fs.mkdirSync(gmkitDir, { recursive: true });
|
||||
|
||||
Reference in New Issue
Block a user