mirror of
https://github.com/FlowiseAI/Flowise.git
synced 2026-10-12 02:02:17 +00:00
* feat(database.util.ts): add function to check if column exists in table * feat(migrations): add permission column to apikey table * chore(services/apikey): remove auto-create default API key * chore: remove auto-create default API key * fix(migrations): rename permission to permissions in apikey table * feat(services/apikey): add permissions to create and update * feat(views/apikey): add permissions to create and update * feat(api): use API key permissions instead of role permissions * feat(permissions): filter by user.permissions except for ROLE type * feat(services/apikey): filter keys by user permissions in getAllApiKeys * feat(services/apikey): limit API key permissions to user permissions during creation/update * fix(database.util.ts): replace non-null assertion with explicit error handling * feat(services/apikey): log errors for malformed API key permissions * refactor(services/apikey): extract permission validation * feat(permission): enhance permission filtering based on user features and platform type * chore(migrations): lower API key permission value * Update packages/ui/src/views/apikey/APIKeyDialog.jsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update packages/ui/src/views/apikey/APIKeyDialog.jsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * refactor: remove deprecated APIKEY_PATH and APIKEY migration * refactor(apikey): remove functionality related to import apikey * feat(permission): filter out workspace and admin categories for non-ROLE * feat(services/apikey): validate API key permissions during create and update * chore(migrations): clean up role permissions values * fix(migrations): handle corrupted permissions gracefully * fix(server/src/index.ts): add error handling for API key permissions parsing * fix(APIKeyDialog.jsx): handle corrupted permissions when editing API key * fix(views/apikey/index.jsx): handle corrupted permissions in API key list * fix(services/apikey): validate permissions JSON in API key operations * Potential fix for code scanning alert no. 83: Clear-text logging of sensitive information Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * feat(migrations): change ApiKey.permissions column from TEXT to JSON * Update packages/server/src/services/apikey/index.ts Co-authored-by: Jocelyn Lin <[email protected]> * feat(PricingDialog.jsx): handle downgrade with excessive apikey permissions * feat(controllers\apikey): enforce permissions validation * chore(services/apikey): remove redundant null checks * fix(services/dataset): throw error when dataset not found before fetching rows --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: Jocelyn Lin <[email protected]>
179 lines
7.8 KiB
Bash
179 lines
7.8 KiB
Bash
PORT=3000
|
|
|
|
############################################################################################################
|
|
############################################## DATABASE ####################################################
|
|
############################################################################################################
|
|
|
|
DATABASE_PATH=/root/.flowise
|
|
# DATABASE_TYPE=postgres
|
|
# DATABASE_PORT=5432
|
|
# DATABASE_HOST=""
|
|
# DATABASE_NAME=flowise
|
|
# DATABASE_USER=root
|
|
# DATABASE_PASSWORD=mypassword
|
|
# DATABASE_SSL=true
|
|
# DATABASE_REJECT_UNAUTHORIZED=true
|
|
# DATABASE_SSL_KEY_BASE64=<Self signed certificate in BASE64>
|
|
|
|
|
|
############################################################################################################
|
|
############################################## SECRET KEYS #################################################
|
|
############################################################################################################
|
|
|
|
# SECRETKEY_STORAGE_TYPE=local #(local | aws)
|
|
SECRETKEY_PATH=/root/.flowise
|
|
# FLOWISE_SECRETKEY_OVERWRITE=myencryptionkey # (if you want to overwrite the secret key)
|
|
# SECRETKEY_AWS_ACCESS_KEY=<your-access-key>
|
|
# SECRETKEY_AWS_SECRET_KEY=<your-secret-key>
|
|
# SECRETKEY_AWS_REGION=us-west-2
|
|
# SECRETKEY_AWS_NAME=FlowiseEncryptionKey
|
|
|
|
|
|
############################################################################################################
|
|
############################################## LOGGING #####################################################
|
|
############################################################################################################
|
|
|
|
# DEBUG=true
|
|
LOG_PATH=/root/.flowise/logs
|
|
# LOG_LEVEL=info #(error | warn | info | verbose | debug)
|
|
# LOG_SANITIZE_BODY_FIELDS=password,pwd,pass,secret,token,apikey,api_key,accesstoken,access_token,refreshtoken,refresh_token,clientsecret,client_secret,privatekey,private_key,secretkey,secret_key,auth,authorization,credential,credentials
|
|
# LOG_SANITIZE_HEADER_FIELDS=authorization,x-api-key,x-auth-token,cookie
|
|
# TOOL_FUNCTION_BUILTIN_DEP=crypto,fs
|
|
# TOOL_FUNCTION_EXTERNAL_DEP=moment,lodash
|
|
# ALLOW_BUILTIN_DEP=false
|
|
|
|
|
|
############################################################################################################
|
|
############################################## STORAGE #####################################################
|
|
############################################################################################################
|
|
|
|
# STORAGE_TYPE=local (local | s3 | gcs)
|
|
BLOB_STORAGE_PATH=/root/.flowise/storage
|
|
# S3_STORAGE_BUCKET_NAME=flowise
|
|
# S3_STORAGE_ACCESS_KEY_ID=<your-access-key>
|
|
# S3_STORAGE_SECRET_ACCESS_KEY=<your-secret-key>
|
|
# S3_STORAGE_REGION=us-west-2
|
|
# S3_ENDPOINT_URL=<custom-s3-endpoint-url>
|
|
# S3_FORCE_PATH_STYLE=false
|
|
# GOOGLE_CLOUD_STORAGE_CREDENTIAL=/the/keyfilename/path
|
|
# GOOGLE_CLOUD_STORAGE_PROJ_ID=<your-gcp-project-id>
|
|
# GOOGLE_CLOUD_STORAGE_BUCKET_NAME=<the-bucket-name>
|
|
# GOOGLE_CLOUD_UNIFORM_BUCKET_ACCESS=true
|
|
|
|
|
|
############################################################################################################
|
|
############################################## SETTINGS ####################################################
|
|
############################################################################################################
|
|
|
|
# NUMBER_OF_PROXIES= 1
|
|
# CORS_ORIGINS=*
|
|
# IFRAME_ORIGINS=*
|
|
# FLOWISE_FILE_SIZE_LIMIT=50mb
|
|
# SHOW_COMMUNITY_NODES=true
|
|
# DISABLE_FLOWISE_TELEMETRY=true
|
|
# DISABLED_NODES=bufferMemory,chatOpenAI (comma separated list of node names to disable)
|
|
# Uncomment the following line to enable model list config, load the list of models from your local config file
|
|
# see https://raw.githubusercontent.com/FlowiseAI/Flowise/main/packages/components/models.json for the format
|
|
# MODEL_LIST_CONFIG_JSON=/your_model_list_config_file_path
|
|
|
|
|
|
############################################################################################################
|
|
############################################ AUTH PARAMETERS ###############################################
|
|
############################################################################################################
|
|
|
|
# APP_URL=http://localhost:3000
|
|
|
|
# SMTP_HOST=smtp.host.com
|
|
# SMTP_PORT=465
|
|
# SMTP_USER=smtp_user
|
|
# SMTP_PASSWORD=smtp_password
|
|
# SMTP_SECURE=true
|
|
# ALLOW_UNAUTHORIZED_CERTS=false
|
|
# [email protected]
|
|
|
|
JWT_AUTH_TOKEN_SECRET='AABBCCDDAABBCCDDAABBCCDDAABBCCDDAABBCCDD'
|
|
JWT_REFRESH_TOKEN_SECRET='AABBCCDDAABBCCDDAABBCCDDAABBCCDDAABBCCDD'
|
|
JWT_ISSUER='ISSUER'
|
|
JWT_AUDIENCE='AUDIENCE'
|
|
JWT_TOKEN_EXPIRY_IN_MINUTES=360
|
|
JWT_REFRESH_TOKEN_EXPIRY_IN_MINUTES=43200
|
|
# EXPIRE_AUTH_TOKENS_ON_RESTART=true # (if you need to expire all tokens on app restart)
|
|
# EXPRESS_SESSION_SECRET=flowise
|
|
# SECURE_COOKIES=
|
|
|
|
# INVITE_TOKEN_EXPIRY_IN_HOURS=24
|
|
# PASSWORD_RESET_TOKEN_EXPIRY_IN_MINS=15
|
|
# PASSWORD_SALT_HASH_ROUNDS=10
|
|
# TOKEN_HASH_SECRET='popcorn'
|
|
|
|
# WORKSPACE_INVITE_TEMPLATE_PATH=/path/to/custom/workspace_invite.hbs
|
|
|
|
|
|
############################################################################################################
|
|
############################################# ENTERPRISE ###################################################
|
|
############################################################################################################
|
|
|
|
# LICENSE_URL=
|
|
# FLOWISE_EE_LICENSE_KEY=
|
|
# OFFLINE=
|
|
|
|
|
|
############################################################################################################
|
|
########################################### METRICS COLLECTION #############################################
|
|
############################################################################################################
|
|
|
|
# POSTHOG_PUBLIC_API_KEY=your_posthog_public_api_key
|
|
|
|
# ENABLE_METRICS=false
|
|
# METRICS_PROVIDER=prometheus # prometheus | open_telemetry
|
|
# METRICS_INCLUDE_NODE_METRICS=true # default is true
|
|
# METRICS_SERVICE_NAME=FlowiseAI
|
|
|
|
# ONLY NEEDED if METRICS_PROVIDER=open_telemetry
|
|
# METRICS_OPEN_TELEMETRY_METRIC_ENDPOINT=http://localhost:4318/v1/metrics
|
|
# METRICS_OPEN_TELEMETRY_PROTOCOL=http # http | grpc | proto (default is http)
|
|
# METRICS_OPEN_TELEMETRY_DEBUG=true # default is false
|
|
|
|
|
|
############################################################################################################
|
|
############################################### PROXY ######################################################
|
|
############################################################################################################
|
|
|
|
# Uncomment the following lines to enable global agent proxy, see https://www.npmjs.com/package/global-agent for more details
|
|
# GLOBAL_AGENT_HTTP_PROXY=CorporateHttpProxyUrl
|
|
# GLOBAL_AGENT_HTTPS_PROXY=CorporateHttpsProxyUrl
|
|
# GLOBAL_AGENT_NO_PROXY=ExceptionHostsToBypassProxyIfNeeded
|
|
|
|
|
|
############################################################################################################
|
|
########################################### QUEUE CONFIGURATION ############################################
|
|
############################################################################################################
|
|
|
|
# MODE=queue #(queue | main)
|
|
# QUEUE_NAME=flowise-queue
|
|
# QUEUE_REDIS_EVENT_STREAM_MAX_LEN=100000
|
|
# WORKER_CONCURRENCY=100000
|
|
# REMOVE_ON_AGE=86400
|
|
# REMOVE_ON_COUNT=10000
|
|
# REDIS_URL=
|
|
# REDIS_HOST=localhost
|
|
# REDIS_PORT=6379
|
|
# REDIS_USERNAME=
|
|
# REDIS_PASSWORD=
|
|
# REDIS_TLS=
|
|
# REDIS_CERT=
|
|
# REDIS_KEY=
|
|
# REDIS_CA=
|
|
# REDIS_KEEP_ALIVE=
|
|
# ENABLE_BULLMQ_DASHBOARD=
|
|
|
|
|
|
############################################################################################################
|
|
############################################## SECURITY ####################################################
|
|
############################################################################################################
|
|
|
|
# HTTP_DENY_LIST=
|
|
# CUSTOM_MCP_SECURITY_CHECK=true
|
|
# CUSTOM_MCP_PROTOCOL=sse #(stdio | sse)
|
|
# TRUST_PROXY=true #(true | false | 1 | loopback| linklocal | uniquelocal | IP addresses | loopback, IP addresses)
|