Skip to content

[Response Ops][Connectors] New xpack.actions.webhook.ssl.pfx.enabled config#222507

Merged
jcger merged 21 commits intoelastic:mainfrom
jcger:issue-220416-kbn-config-disable-ptx-files
Jun 17, 2025
Merged

[Response Ops][Connectors] New xpack.actions.webhook.ssl.pfx.enabled config#222507
jcger merged 21 commits intoelastic:mainfrom
jcger:issue-220416-kbn-config-disable-ptx-files

Conversation

@jcger
Copy link
Contributor

@jcger jcger commented Jun 4, 2025

Summary

Closes #220416

Release note

New xpack.actions.webhook.ssl.pfx.enabled Kibana setting to disable Webhook connector PFX file support for SSL client authentication

@kibanamachine

This comment was marked as outdated.

@jcger jcger force-pushed the issue-220416-kbn-config-disable-ptx-files branch from 21734de to 69fbd57 Compare June 4, 2025 17:01
@jcger jcger marked this pull request as ready for review June 10, 2025 11:20
@jcger jcger requested review from a team as code owners June 10, 2025 11:20
@jcger jcger added Team:ResponseOps Platform ResponseOps team (formerly the Cases and Alerting teams) t// release_note:feature Makes this part of the condensed release notes backport:version Backport to applied version labels v9.1.0 v8.19.0 labels Jun 10, 2025
@elasticmachine
Copy link
Contributor

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

@jcger jcger marked this pull request as draft June 10, 2025 13:42
@kibanamachine
Copy link
Contributor

Flaky Test Runner Stats

🎉 All tests passed! - kibana-flaky-test-suite-runner#8359

[✅] x-pack/test/functional_with_es_ssl/apps/triggers_actions_ui/connectors/webhook_disabled_ssl_pfx/config.ts: 100/100 tests passed.
[✅] x-pack/test/functional_with_es_ssl/apps/triggers_actions_ui/config.ts: 100/100 tests passed.

see run history

@jcger jcger marked this pull request as ready for review June 11, 2025 07:48
Copy link
Contributor

@azasypkin azasypkin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes in src/platform/test/plugin_functional/test_suites/core_plugins/rendering.ts LGTM.

That being said, maybe it's just me, but xpack.actions.webhook.ssl.pfx for a boolean config looks a bit confusing compared to something with an xxxEnabled or xxxSupported postfix, but I'll defer to the code owners 🙂

);
}

if (configObject.certType === SSLCertType.PFX) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the UI, the change was done in public/common/auth/ssl_cert_fields.tsx. That component is shared by all connectors that allow SSL authentication, so whenever the configuration option is set, it will not be visible. Not only for the webhook connector.

By chance, for now, the only connectors that allow SSL/PFX are the webhook connectors(cases webhook too).

On the other hand, in the backend, we validate specifically in server/connector_types/webhook/index.ts. If a connector is added or updated to allow SSL authentication, we will have to remember to copy this validation block there.

So, although the config option is webhook.ssl.pfx, in the FE we hide it everywhere, and in the BE we throw only for webhooks.

Even if the original ticket only mentions the webhook connector, wouldn't it make more sense to disallow PFX completely if the option is set?

We could move this validation somewhere else (maybe to action_executor.ts?), rename the configuration option to something like xpack.actions.ssl.pfx, and be done with it.

Copy link
Contributor Author

@jcger jcger Jun 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! To make it affect just the webhook connector I'm adding a prop isPfxEnabled to the AuthConfig component (this is shared by the cases-webhook and the webhook connectors). By default it's set to true and for the webhook connector it's gonna be set to the value of xpack.actions.webhook.ssl.pfx.

Asking if it also should affect cases-webhook. If it does, it's just activating that new prop

Edit: Got the answer, we won't add it to cases-webhook

@jcger jcger requested a review from a team as a code owner June 13, 2025 09:11
@jcger jcger requested a review from adcoelho June 13, 2025 10:05
@jcger
Copy link
Contributor Author

jcger commented Jun 13, 2025

Changes in src/platform/test/plugin_functional/test_suites/core_plugins/rendering.ts LGTM.

That being said, maybe it's just me, but xpack.actions.webhook.ssl.pfx for a boolean config looks a bit confusing compared to something with an xxxEnabled or xxxSupported postfix, but I'll defer to the code owners 🙂

Thanks for the suggestion! We'll rename it to xpack.actions.webhook.ssl.pfx.enabled

@jcger jcger changed the title [Response Ops][Connectors] New xpack.actions.webhook.ssl.pfx config Jun 13, 2025
</EuiFlexGroup>
<EuiSpacer size="m" />
<AuthConfig readOnly={readOnly} />
<AuthConfig readOnly={readOnly} isPfxEnabled={isPfxEnabled} />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup, this is better now 🙌

Copy link
Contributor

@nastasha-solomon nastasha-solomon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a couple minor fixes. Thanks for writing this!

jcger and others added 4 commits June 17, 2025 08:00
Co-authored-by: Nastasha Solomon <79124755+nastasha-solomon@users.noreply.github.com>
Co-authored-by: Nastasha Solomon <79124755+nastasha-solomon@users.noreply.github.com>
Co-authored-by: Nastasha Solomon <79124755+nastasha-solomon@users.noreply.github.com>
@jcger jcger enabled auto-merge (squash) June 17, 2025 06:01
@jcger jcger merged commit 25b4f50 into elastic:main Jun 17, 2025
10 checks passed
@kibanamachine
Copy link
Contributor

Starting backport for target branches: 8.19

https://github.com/elastic/kibana/actions/runs/15700987277

@elasticmachine
Copy link
Contributor

💚 Build Succeeded

Metrics [docs]

Public APIs missing comments

Total count of every public API that lacks a comment. Target amount is 0. Run node scripts/build_api_docs --plugin [yourplugin] --stats comments for more detailed information.

id before after diff
actions 334 335 +1

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
stackConnectors 624.5KB 624.9KB +359.0B
triggersActionsUi 1.5MB 1.5MB +58.0B
total +417.0B

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
actions 16.7KB 16.9KB +229.0B
Unknown metric groups

API count

id before after diff
actions 340 341 +1

History

@jcger
Copy link
Contributor Author

jcger commented Jun 17, 2025

💚 All backports created successfully

Status Branch Result
8.19

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

jcger added a commit to jcger/kibana that referenced this pull request Jun 17, 2025
…` config (elastic#222507)

## Summary

Closes elastic#220416

## Release note
New `xpack.actions.webhook.ssl.pfx.enabled` Kibana setting to disable
Webhook connector PFX file support for SSL client authentication

---------

Co-authored-by: Nastasha Solomon <79124755+nastasha-solomon@users.noreply.github.com>
(cherry picked from commit 25b4f50)

# Conflicts:
#	docs/reference/configuration-reference/alerting-settings.md
#	docs/settings-gen/source/kibana-alert-action-settings.yml
jcger added a commit that referenced this pull request Jun 18, 2025
jcger added a commit that referenced this pull request Jul 18, 2025
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Jul 18, 2025
Bluefinger pushed a commit to Bluefinger/kibana that referenced this pull request Jul 22, 2025
kertal pushed a commit to kertal/kibana that referenced this pull request Jul 25, 2025
florent-leborgne added a commit to florent-leborgne/kibana that referenced this pull request Jul 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:version Backport to applied version labels release_note:feature Makes this part of the condensed release notes Team:ResponseOps Platform ResponseOps team (formerly the Cases and Alerting teams) t// v8.19.0 v9.1.0

7 participants