From 01d1c61b4f0da6e4db1df163301aa02782eedae8 Mon Sep 17 00:00:00 2001 From: Jen Huang Date: Wed, 4 Mar 2020 09:24:43 -0800 Subject: [PATCH] Whitelist full agent config output fields --- .../common/types/models/agent_config.ts | 2 +- .../ingest_manager/server/services/agent_config.ts | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/x-pack/plugins/ingest_manager/common/types/models/agent_config.ts b/x-pack/plugins/ingest_manager/common/types/models/agent_config.ts index d5993c19dc650f..29ccbf33f84ddf 100644 --- a/x-pack/plugins/ingest_manager/common/types/models/agent_config.ts +++ b/x-pack/plugins/ingest_manager/common/types/models/agent_config.ts @@ -50,7 +50,7 @@ export type FullAgentConfigDatasource = Pick & { + [key: string]: Pick & { [key: string]: any; }; }; diff --git a/x-pack/plugins/ingest_manager/server/services/agent_config.ts b/x-pack/plugins/ingest_manager/server/services/agent_config.ts index 75041f78a9cf79..3a10be82577cb0 100644 --- a/x-pack/plugins/ingest_manager/server/services/agent_config.ts +++ b/x-pack/plugins/ingest_manager/server/services/agent_config.ts @@ -302,20 +302,22 @@ class AgentConfigService { return null; } - const agentConfig = { + const agentConfig: FullAgentConfig = { id: config.id, outputs: { // TEMPORARY as we only support a default output ...[ await outputService.get(soClient, await outputService.getDefaultOutputId(soClient)), - ].reduce((outputs, { config: outputConfig, is_default, name, id: outputId, ...output }) => { + ].reduce((outputs, { config: outputConfig, name, type, hosts, ca_sha256, api_key }) => { outputs[name] = { - ...output, - type: output.type as any, + type, + hosts, + ca_sha256, + api_key, ...outputConfig, }; return outputs; - }, {} as any), + }, {} as FullAgentConfig['outputs']), }, datasources: (config.datasources as Datasource[]).map(ds => this.storedDatasourceToAgentDatasource(ds)