Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ResponseOps][Connectors] allow pre-configured connectors to opt-in to exposing their config #206433

Closed
pmuellr opened this issue Jan 13, 2025 · 1 comment · Fixed by #207654
Closed
Labels
Feature:Actions Team:ResponseOps Label for the ResponseOps team (formerly the Cases and Alerting teams)

Comments

@pmuellr
Copy link
Member

pmuellr commented Jan 13, 2025

Currently, pre-configured connectors do NOT return their config data via the APIs this is usually returned - get and find. This was done as a security measure, since pre-configured connectors can only be created by an admin anyway (in the kibana config).

We've had many requests over the years to allow pre-configured connectors to expose their config, but we also don't want to break the existing behavior if customers are dependent on it.

Current thinking is to allow pre-configured connectors to "opt-in" to exposing their config. The idea is when a pre-configured connector is created, it will take a new optional argument indicating whether the config should be exposed - for instance exposeConfig: boolean.

We'll have to then change the locations where we return the config objects for connectors, to allow pre-configured connectors to return their config, if they've indicated that.

@pmuellr pmuellr added Feature:Actions Team:ResponseOps Label for the ResponseOps team (formerly the Cases and Alerting teams) labels Jan 13, 2025
@elasticmachine
Copy link
Contributor

Pinging @elastic/response-ops (Team:ResponseOps)

kibanamachine pushed a commit to kibanamachine/kibana that referenced this issue Jan 22, 2025
…eir config by setting `exposeConfig` (elastic#207654)

Resolves elastic#206433

Added optional `exposeConfig` field to the `preconfiguredActionSchema`
to allow return the configuration for the pre-configured connectors,
which set this value as `true`.
This change is completely backward compatible, because this field is
optional and all the connectors, which don't have the value will remain
to work the same way as before the change (won't return the config).

Changed get and getAll methods of the ActionsClient to reflect opt-in
config based on the set `exposeConfig` value.

(cherry picked from commit c15674f)
kibanamachine added a commit that referenced this issue Jan 23, 2025
…ing their config by setting `exposeConfig` (#207654) (#207902)

# Backport

This will backport the following commits from `main` to `8.x`:
- [[Connectors] Allow pre-configured connectors to opt-in to exposing
their config by setting `exposeConfig`
(#207654)](#207654)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Yuliia
Naumenko","email":"jo.naumenko@gmail.com"},"sourceCommit":{"committedDate":"2025-01-22T18:51:16Z","message":"[Connectors]
Allow pre-configured connectors to opt-in to exposing their config by
setting `exposeConfig` (#207654)\n\nResolves #206433\r\n\r\nAdded
optional `exposeConfig` field to the `preconfiguredActionSchema`\r\nto
allow return the configuration for the pre-configured
connectors,\r\nwhich set this value as `true`.\r\nThis change is
completely backward compatible, because this field is\r\noptional and
all the connectors, which don't have the value will remain\r\nto work
the same way as before the change (won't return the
config).\r\n\r\nChanged get and getAll methods of the ActionsClient to
reflect opt-in\r\nconfig based on the set `exposeConfig`
value.","sha":"c15674f6d1e670b4210e31031ed93a8c95fdba3b","branchLabelMapping":{"^v9.0.0$":"main","^v8.18.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:enhancement","v9.0.0","backport:version","8.18
candidate","v8.18.0"],"title":"[Connectors] Allow pre-configured
connectors to opt-in to exposing their config by setting
`exposeConfig`","number":207654,"url":"https://github.com/elastic/kibana/pull/207654","mergeCommit":{"message":"[Connectors]
Allow pre-configured connectors to opt-in to exposing their config by
setting `exposeConfig` (#207654)\n\nResolves #206433\r\n\r\nAdded
optional `exposeConfig` field to the `preconfiguredActionSchema`\r\nto
allow return the configuration for the pre-configured
connectors,\r\nwhich set this value as `true`.\r\nThis change is
completely backward compatible, because this field is\r\noptional and
all the connectors, which don't have the value will remain\r\nto work
the same way as before the change (won't return the
config).\r\n\r\nChanged get and getAll methods of the ActionsClient to
reflect opt-in\r\nconfig based on the set `exposeConfig`
value.","sha":"c15674f6d1e670b4210e31031ed93a8c95fdba3b"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/207654","number":207654,"mergeCommit":{"message":"[Connectors]
Allow pre-configured connectors to opt-in to exposing their config by
setting `exposeConfig` (#207654)\n\nResolves #206433\r\n\r\nAdded
optional `exposeConfig` field to the `preconfiguredActionSchema`\r\nto
allow return the configuration for the pre-configured
connectors,\r\nwhich set this value as `true`.\r\nThis change is
completely backward compatible, because this field is\r\noptional and
all the connectors, which don't have the value will remain\r\nto work
the same way as before the change (won't return the
config).\r\n\r\nChanged get and getAll methods of the ActionsClient to
reflect opt-in\r\nconfig based on the set `exposeConfig`
value.","sha":"c15674f6d1e670b4210e31031ed93a8c95fdba3b"}},{"branch":"8.x","label":"v8.18.0","branchLabelMappingKey":"^v8.18.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Yuliia Naumenko <jo.naumenko@gmail.com>
viduni94 pushed a commit to viduni94/kibana that referenced this issue Jan 23, 2025
…eir config by setting `exposeConfig` (elastic#207654)

Resolves elastic#206433

Added optional `exposeConfig` field to the `preconfiguredActionSchema`
to allow return the configuration for the pre-configured connectors,
which set this value as `true`.
This change is completely backward compatible, because this field is
optional and all the connectors, which don't have the value will remain
to work the same way as before the change (won't return the config).

Changed get and getAll methods of the ActionsClient to reflect opt-in
config based on the set `exposeConfig` value.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Actions Team:ResponseOps Label for the ResponseOps team (formerly the Cases and Alerting teams)
Projects
None yet
2 participants