Skip to content

Commit 78f1be0

Browse files
[8.19] 🌊 Streams: Add streams feature privilege (elastic#218966) (elastic#219365)
# Backport This will backport the following commits from `main` to `8.19`: - [🌊 Streams: Add streams feature privilege (elastic#218966)](elastic#218966) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Joe Reuter","email":"[email protected]"},"sourceCommit":{"committedDate":"2025-04-28T09:50:05Z","message":"🌊 Streams: Add streams feature privilege (elastic#218966)\n\nThis PR adds a new feature for streams to control whether the UI and API\nis available.\n\nChanges:\n* Add the feature with two privileges (`show` and `manage_assets`)\n* Can be configured with the classic `none`/`read`/`all` so it's\nautomatically aligned with serverless editor/viewer permissions\n* None also means the app is not shown - to do this, the existing\n`status# Backport This will backport the following commits from `main` to `8.19`: {{{{raw}}}} - [🌊 Streams: Add streams feature privilege (elastic#218966)](https://github.com/elastic/kibana/pull/218966){{{{/raw}}}} <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT observable also looks for at least the `streams.show`\ncapability\n* Only guards changes to the linked dashboards - changes to the\nElasticsearch level are still delegated to the Elasticsearch-level\npermissions of the user\n* This happens on the UI level (disabled button and dashboard selection\non the dashboard page)\n* and on the API level (all endpoints that can change linked dashboards\nrequire the permission)\n\n\n# Questions\n\n* Not sure about the name `manage_assets` - maybe it should be something\nelse\n* Not sure about how the queries stuff should work - @kdelemme anything\nwe should do in this area?\n\n---------\n\nCo-authored-by: kibanamachine <[email protected]>","sha":"b1d85aa6a852a680ea55a3af6a70efda09d6662d","branchLabelMapping":{"^v9.1.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","Team:obs-ux-logs","backport:version","Feature:Streams","v9.1.0","v8.19.0"],"title":"🌊 Streams: Add streams feature privilege","number":218966,"url":"https://github.com/elastic/kibana/pull/218966","mergeCommit":{"message":"🌊 Streams: Add streams feature privilege (elastic#218966)\n\nThis PR adds a new feature for streams to control whether the UI and API\nis available.\n\nChanges:\n* Add the feature with two privileges (`show` and `manage_assets`)\n* Can be configured with the classic `none`/`read`/`all` so it's\nautomatically aligned with serverless editor/viewer permissions\n* None also means the app is not shown - to do this, the existing\n`status# Backport This will backport the following commits from `main` to `8.19`: {{{{raw}}}} - [🌊 Streams: Add streams feature privilege (elastic#218966)](https://github.com/elastic/kibana/pull/218966){{{{/raw}}}} <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT observable also looks for at least the `streams.show`\ncapability\n* Only guards changes to the linked dashboards - changes to the\nElasticsearch level are still delegated to the Elasticsearch-level\npermissions of the user\n* This happens on the UI level (disabled button and dashboard selection\non the dashboard page)\n* and on the API level (all endpoints that can change linked dashboards\nrequire the permission)\n\n\n# Questions\n\n* Not sure about the name `manage_assets` - maybe it should be something\nelse\n* Not sure about how the queries stuff should work - @kdelemme anything\nwe should do in this area?\n\n---------\n\nCo-authored-by: kibanamachine <[email protected]>","sha":"b1d85aa6a852a680ea55a3af6a70efda09d6662d"}},"sourceBranch":"main","suggestedTargetBranches":["8.19"],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/218966","number":218966,"mergeCommit":{"message":"🌊 Streams: Add streams feature privilege (elastic#218966)\n\nThis PR adds a new feature for streams to control whether the UI and API\nis available.\n\nChanges:\n* Add the feature with two privileges (`show` and `manage_assets`)\n* Can be configured with the classic `none`/`read`/`all` so it's\nautomatically aligned with serverless editor/viewer permissions\n* None also means the app is not shown - to do this, the existing\n`status# Backport This will backport the following commits from `main` to `8.19`: {{{{raw}}}} - [🌊 Streams: Add streams feature privilege (elastic#218966)](https://github.com/elastic/kibana/pull/218966){{{{/raw}}}} <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT observable also looks for at least the `streams.show`\ncapability\n* Only guards changes to the linked dashboards - changes to the\nElasticsearch level are still delegated to the Elasticsearch-level\npermissions of the user\n* This happens on the UI level (disabled button and dashboard selection\non the dashboard page)\n* and on the API level (all endpoints that can change linked dashboards\nrequire the permission)\n\n\n# Questions\n\n* Not sure about the name `manage_assets` - maybe it should be something\nelse\n* Not sure about how the queries stuff should work - @kdelemme anything\nwe should do in this area?\n\n---------\n\nCo-authored-by: kibanamachine <[email protected]>","sha":"b1d85aa6a852a680ea55a3af6a70efda09d6662d"}},{"branch":"8.19","label":"v8.19.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}] BACKPORT--> --------- Co-authored-by: kibanamachine <[email protected]>
1 parent f6eec11 commit 78f1be0

File tree

38 files changed

+262
-215
lines changed

38 files changed

+262
-215
lines changed

β€Žoas_docs/bundle.serverless.jsonβ€Ž

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -44256,7 +44256,7 @@
4425644256
},
4425744257
"/api/streams": {
4425844258
"get": {
44259-
"description": "Fetches list of all streams",
44259+
"description": "Fetches list of all streams<br/><br/>[Required authorization] Route required privileges: read_stream.",
4426044260
"operationId": "get-streams",
4426144261
"parameters": [],
4426244262
"requestBody": {
@@ -44293,7 +44293,7 @@
4429344293
},
4429444294
"/api/streams/_disable": {
4429544295
"post": {
44296-
"description": "Disables wired streams and deletes all existing stream definitions. The data of wired streams is deleted, but the data of classic streams is preserved.",
44296+
"description": "Disables wired streams and deletes all existing stream definitions. The data of wired streams is deleted, but the data of classic streams is preserved.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4429744297
"operationId": "post-streams-disable",
4429844298
"parameters": [
4429944299
{
@@ -44341,7 +44341,7 @@
4434144341
},
4434244342
"/api/streams/_enable": {
4434344343
"post": {
44344-
"description": "Enables wired streams",
44344+
"description": "Enables wired streams<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4434544345
"operationId": "post-streams-enable",
4434644346
"parameters": [
4434744347
{
@@ -44389,7 +44389,7 @@
4438944389
},
4439044390
"/api/streams/_resync": {
4439144391
"post": {
44392-
"description": "Resyncs all streams, making sure that Elasticsearch assets are up to date",
44392+
"description": "Resyncs all streams, making sure that Elasticsearch assets are up to date<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4439344393
"operationId": "post-streams-resync",
4439444394
"parameters": [
4439544395
{
@@ -44437,7 +44437,7 @@
4443744437
},
4443844438
"/api/streams/{name}": {
4443944439
"delete": {
44440-
"description": "Deletes a stream definition and the underlying data stream",
44440+
"description": "Deletes a stream definition and the underlying data stream<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4444144441
"operationId": "delete-streams-name",
4444244442
"parameters": [
4444344443
{
@@ -44491,7 +44491,7 @@
4449144491
"x-state": "Technical Preview"
4449244492
},
4449344493
"get": {
44494-
"description": "Fetches a stream definition and associated dashboards",
44494+
"description": "Fetches a stream definition and associated dashboards<br/><br/>[Required authorization] Route required privileges: read_stream.",
4449544495
"operationId": "get-streams-name",
4449644496
"parameters": [
4449744497
{
@@ -44535,7 +44535,7 @@
4453544535
"x-state": "Technical Preview"
4453644536
},
4453744537
"put": {
44538-
"description": "Creates or updates a stream definition. Classic streams can not be created through this API, only updated",
44538+
"description": "Creates or updates a stream definition. Classic streams can not be created through this API, only updated<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4453944539
"operationId": "put-streams-name",
4454044540
"parameters": [
4454144541
{
@@ -47963,7 +47963,7 @@
4796347963
},
4796447964
"/api/streams/{name}/_fork": {
4796547965
"post": {
47966-
"description": "Forks a wired stream and creates a child stream",
47966+
"description": "Forks a wired stream and creates a child stream<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4796747967
"operationId": "post-streams-name-fork",
4796847968
"parameters": [
4796947969
{
@@ -48148,7 +48148,7 @@
4814848148
},
4814948149
"/api/streams/{name}/_group": {
4815048150
"get": {
48151-
"description": "Fetches the group settings of a group stream definition",
48151+
"description": "Fetches the group settings of a group stream definition<br/><br/>[Required authorization] Route required privileges: read_stream.",
4815248152
"operationId": "get-streams-name-group",
4815348153
"parameters": [
4815448154
{
@@ -48192,7 +48192,7 @@
4819248192
"x-state": "Technical Preview"
4819348193
},
4819448194
"put": {
48195-
"description": "Upserts the group settings of a group stream definition",
48195+
"description": "Upserts the group settings of a group stream definition<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4819648196
"operationId": "put-streams-name-group",
4819748197
"parameters": [
4819848198
{
@@ -48258,7 +48258,7 @@
4825848258
},
4825948259
"/api/streams/{name}/_ingest": {
4826048260
"get": {
48261-
"description": "Fetches the ingest settings of an ingest stream definition",
48261+
"description": "Fetches the ingest settings of an ingest stream definition<br/><br/>[Required authorization] Route required privileges: read_stream.",
4826248262
"operationId": "get-streams-name-ingest",
4826348263
"parameters": [
4826448264
{
@@ -48302,7 +48302,7 @@
4830248302
"x-state": "Technical Preview"
4830348303
},
4830448304
"put": {
48305-
"description": "Upserts the ingest settings of an ingest stream definition",
48305+
"description": "Upserts the ingest settings of an ingest stream definition<br/><br/>[Required authorization] Route required privileges: manage_stream.",
4830648306
"operationId": "put-streams-name-ingest",
4830748307
"parameters": [
4830848308
{
@@ -51479,7 +51479,7 @@
5147951479
},
5148051480
"/api/streams/{name}/content/export": {
5148151481
"post": {
51482-
"description": "Exports the content associated to a stream.",
51482+
"description": "Exports the content associated to a stream.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5148351483
"operationId": "post-streams-name-content-export",
5148451484
"parameters": [
5148551485
{
@@ -51586,7 +51586,7 @@
5158651586
},
5158751587
"/api/streams/{name}/content/import": {
5158851588
"post": {
51589-
"description": "Links content objects to a stream.",
51589+
"description": "Links content objects to a stream.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5159051590
"operationId": "post-streams-name-content-import",
5159151591
"parameters": [
5159251592
{
@@ -51637,7 +51637,7 @@
5163751637
},
5163851638
"/api/streams/{name}/dashboards": {
5163951639
"get": {
51640-
"description": "Fetches all dashboards linked to a stream that are visible to the current user in the current space.",
51640+
"description": "Fetches all dashboards linked to a stream that are visible to the current user in the current space.<br/><br/>[Required authorization] Route required privileges: read_stream.",
5164151641
"operationId": "get-streams-name-dashboards",
5164251642
"parameters": [
5164351643
{
@@ -51683,7 +51683,7 @@
5168351683
},
5168451684
"/api/streams/{name}/dashboards/_bulk": {
5168551685
"post": {
51686-
"description": "Bulk update dashboards linked to a stream. Can link new dashboards and delete existing ones.",
51686+
"description": "Bulk update dashboards linked to a stream. Can link new dashboards and delete existing ones.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5168751687
"operationId": "post-streams-name-dashboards-bulk",
5168851688
"parameters": [
5168951689
{
@@ -51779,7 +51779,7 @@
5177951779
},
5178051780
"/api/streams/{name}/dashboards/{dashboardId}": {
5178151781
"delete": {
51782-
"description": "Unlinks a dashboard from a stream. Noop if the dashboard is not linked to the stream.",
51782+
"description": "Unlinks a dashboard from a stream. Noop if the dashboard is not linked to the stream.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5178351783
"operationId": "delete-streams-name-dashboards-dashboardid",
5178451784
"parameters": [
5178551785
{
@@ -51841,7 +51841,7 @@
5184151841
"x-state": "Technical Preview"
5184251842
},
5184351843
"put": {
51844-
"description": "Links a dashboard to a stream. Noop if the dashboard is already linked to the stream.",
51844+
"description": "Links a dashboard to a stream. Noop if the dashboard is already linked to the stream.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5184551845
"operationId": "put-streams-name-dashboards-dashboardid",
5184651846
"parameters": [
5184751847
{
@@ -51905,7 +51905,7 @@
5190551905
},
5190651906
"/api/streams/{name}/queries": {
5190751907
"get": {
51908-
"description": "Fetches all queries linked to a stream that are visible to the current user in the current space.",
51908+
"description": "Fetches all queries linked to a stream that are visible to the current user in the current space.<br/><br/>[Required authorization] Route required privileges: read_stream.",
5190951909
"operationId": "get-streams-name-queries",
5191051910
"parameters": [
5191151911
{
@@ -51951,7 +51951,7 @@
5195151951
},
5195251952
"/api/streams/{name}/queries/_bulk": {
5195351953
"post": {
51954-
"description": "Bulk update queries of a stream. Can add new queries and delete existing ones.",
51954+
"description": "Bulk update queries of a stream. Can add new queries and delete existing ones.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5195551955
"operationId": "post-streams-name-queries-bulk",
5195651956
"parameters": [
5195751957
{
@@ -52077,7 +52077,7 @@
5207752077
},
5207852078
"/api/streams/{name}/queries/{queryId}": {
5207952079
"delete": {
52080-
"description": "Remove a query from a stream. Noop if the query is not found on the stream.",
52080+
"description": "Remove a query from a stream. Noop if the query is not found on the stream.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5208152081
"operationId": "delete-streams-name-queries-queryid",
5208252082
"parameters": [
5208352083
{
@@ -52139,7 +52139,7 @@
5213952139
"x-state": "Technical Preview"
5214052140
},
5214152141
"put": {
52142-
"description": "Adds a query to a stream. Noop if the query is already present on the stream.",
52142+
"description": "Adds a query to a stream. Noop if the query is already present on the stream.<br/><br/>[Required authorization] Route required privileges: manage_stream.",
5214352143
"operationId": "put-streams-name-queries-queryid",
5214452144
"parameters": [
5214552145
{
@@ -52212,7 +52212,7 @@
5221252212
},
5221352213
"/api/streams/{name}/significant_events": {
5221452214
"get": {
52215-
"description": "Read the significant events",
52215+
"description": "Read the significant events<br/><br/>[Required authorization] Route required privileges: read_stream.",
5221652216
"operationId": "get-streams-name-significant-events",
5221752217
"parameters": [
5221852218
{

0 commit comments

Comments
Β (0)