From 244b1ae7fb0bacb5be1eec20d1b0deb827a5ce5d Mon Sep 17 00:00:00 2001 From: josedario87 Date: Mon, 13 Oct 2025 17:50:21 -0600 Subject: [PATCH] fix: move Metabase credentials to runtime config 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) --- .env.example | 5 +++++ nuxt4-app/nuxt.config.ts | 5 +++++ nuxt4-app/server/utils/metabase.ts | 7 ++++--- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/.env.example b/.env.example index 843f7b2..21a8209 100644 --- a/.env.example +++ b/.env.example @@ -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 diff --git a/nuxt4-app/nuxt.config.ts b/nuxt4-app/nuxt.config.ts index 61c9703..ede8493 100644 --- a/nuxt4-app/nuxt.config.ts +++ b/nuxt4-app/nuxt.config.ts @@ -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' } diff --git a/nuxt4-app/server/utils/metabase.ts b/nuxt4-app/server/utils/metabase.ts index f894230..c93dee4 100644 --- a/nuxt4-app/server/utils/metabase.ts +++ b/nuxt4-app/server/utils/metabase.ts @@ -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