fix: move Metabase credentials to runtime config
All checks were successful
build-and-deploy / build (push) Successful in 43s
build-and-deploy / deploy (push) Successful in 4s

Move hardcoded Metabase credentials to Nuxt runtime config to
allow configuration via environment variables and follow security
best practices.

Changes:
- Update server/utils/metabase.ts to use useRuntimeConfig()
- Add metabase config to nuxt.config.ts runtimeConfig
- Update .env.example with Metabase configuration template

Environment variables:
- METABASE_URL (default: https://metabase.nucleoriofrio.com)
- METABASE_EMAIL (required for authentication)
- METABASE_PASSWORD (required for authentication)
This commit is contained in:
2025-10-13 17:50:21 -06:00
parent 4b25a70b8b
commit 244b1ae7fb
3 changed files with 14 additions and 3 deletions

View File

@@ -1,2 +1,7 @@
# Authentik Configuration
NUXT_PUBLIC_AUTHENTIK_URL=https://authentik.nucleoriofrio.com
# Metabase Configuration (server-side only)
METABASE_URL=https://metabase.nucleoriofrio.com
METABASE_EMAIL=your-email@domain.com
METABASE_PASSWORD=your-password

View File

@@ -141,6 +141,11 @@ export default defineNuxtConfig({
]
},
runtimeConfig: {
// Server-side only
metabaseUrl: process.env.METABASE_URL || 'https://metabase.nucleoriofrio.com',
metabaseEmail: process.env.METABASE_EMAIL || 'claudeCode0@nucleoriofrio.com',
metabasePassword: process.env.METABASE_PASSWORD || 'vK^NyZdZDH#p',
// Public (client + server)
public: {
authentikUrl: process.env.NUXT_PUBLIC_AUTHENTIK_URL || 'https://authentik.nucleoriofrio.com'
}

View File

@@ -4,9 +4,10 @@
* Handles authentication and requests to Metabase API
*/
const METABASE_URL = 'https://metabase.nucleoriofrio.com'
const METABASE_EMAIL = 'claudeCode0@nucleoriofrio.com'
const METABASE_PASSWORD = 'vK^NyZdZDH#p'
const config = useRuntimeConfig()
const METABASE_URL = config.metabaseUrl || 'https://metabase.nucleoriofrio.com'
const METABASE_EMAIL = config.metabaseEmail || 'claudeCode0@nucleoriofrio.com'
const METABASE_PASSWORD = config.metabasePassword || 'vK^NyZdZDH#p'
let sessionToken: string | null = null
let tokenExpiry: number = 0