fix: don't enable admin server /config by default
This now requires setting `admin-server-config-enabled`.
This commit is contained in:
committed by
Steve Chavez
parent
36eb72c2a0
commit
1f28efa9bd
@@ -56,8 +56,11 @@ admin appState req respond = do
|
||||
in
|
||||
respond $ Wai.responseLBS status [] mempty
|
||||
["config"] -> do
|
||||
config <- AppState.getConfig appState
|
||||
respond $ Wai.responseLBS HTTP.status200 [] (LBS.fromStrict $ encodeUtf8 $ Config.toText config)
|
||||
config@Config.AppConfig{configAdminServerConfigEnabled} <- AppState.getConfig appState
|
||||
if configAdminServerConfigEnabled then
|
||||
respond $ Wai.responseLBS HTTP.status200 [] (LBS.fromStrict $ encodeUtf8 $ Config.toText config)
|
||||
else
|
||||
respond $ Wai.responseLBS HTTP.status404 [] mempty
|
||||
["schema_cache"] -> do
|
||||
sCache <- AppState.getSchemaCache appState
|
||||
respond $ Wai.responseLBS HTTP.status200 [] (maybe mempty JSON.encode sCache)
|
||||
|
||||
@@ -128,6 +128,9 @@ exampleConfigFile =
|
||||
[str|## Admin server used for checks. It's disabled by default unless a port is specified.
|
||||
|# admin-server-port = 3001
|
||||
|
|
||||
|## Whether to enable the /config endpoint of the admin server
|
||||
|# admin-server-config-enabled = false
|
||||
|
|
||||
|## The database role to use when no client authentication is provided
|
||||
|# db-anon-role = "anon"
|
||||
|
|
||||
|
||||
@@ -110,6 +110,7 @@ data AppConfig = AppConfig
|
||||
, configServerUnixSocket :: Maybe FilePath
|
||||
, configServerUnixSocketMode :: FileMode
|
||||
, configAdminServerPort :: Maybe Int
|
||||
, configAdminServerConfigEnabled :: Bool
|
||||
, configRoleSettings :: RoleSettings
|
||||
, configRoleIsoLvl :: RoleIsolationLvl
|
||||
, configInternalSCSleep :: Maybe Int32
|
||||
@@ -180,6 +181,7 @@ toText conf =
|
||||
,("server-unix-socket", q . maybe mempty T.pack . configServerUnixSocket)
|
||||
,("server-unix-socket-mode", q . T.pack . showSocketMode)
|
||||
,("admin-server-port", maybe "\"\"" show . configAdminServerPort)
|
||||
,("admin-server-config-enabled", T.toLower . show . configAdminServerConfigEnabled)
|
||||
]
|
||||
|
||||
-- quote all app.settings
|
||||
@@ -286,6 +288,7 @@ parser optPath env dbSettings roleSettings roleIsolationLvl =
|
||||
<*> (fmap T.unpack <$> optString "server-unix-socket")
|
||||
<*> parseSocketFileMode "server-unix-socket-mode"
|
||||
<*> optInt "admin-server-port"
|
||||
<*> (fromMaybe False <$> optBool "admin-server-config-enabled")
|
||||
<*> pure roleSettings
|
||||
<*> pure roleIsolationLvl
|
||||
<*> optInt "internal-schema-cache-sleep"
|
||||
|
||||
Reference in New Issue
Block a user