From e3252fe4923306ffa3987e13f2532d095576ca0f Mon Sep 17 00:00:00 2001 From: jakubp-eliatra Date: Wed, 5 Jul 2023 14:38:29 +0200 Subject: [PATCH] merge conflict resolved --- config/opensearch_dashboards.yml | 266 ------------------ src/core/types/capabilities.ts | 2 +- .../server/capabilities_provider.ts | 1 + src/plugins/console/server/plugin.ts | 1 + .../dashboard/server/capabilities_provider.ts | 1 + .../index_patterns/capabilities_provider.ts | 1 + .../discover/server/capabilities_provider.ts | 1 + .../server/capabilities_provider.ts | 1 + .../visualize/server/capabilities_provider.ts | 1 + 9 files changed, 8 insertions(+), 267 deletions(-) delete mode 100644 config/opensearch_dashboards.yml diff --git a/config/opensearch_dashboards.yml b/config/opensearch_dashboards.yml deleted file mode 100644 index d7e0d390b0fc..000000000000 --- a/config/opensearch_dashboards.yml +++ /dev/null @@ -1,266 +0,0 @@ -# OpenSearch Dashboards is served by a back end server. This setting specifies the port to use. -#server.port: 5601 - -# Specifies the address to which the OpenSearch Dashboards server will bind. IP addresses and host names are both valid values. -# The default is 'localhost', which usually means remote machines will not be able to connect. -# To allow connections from remote users, set this parameter to a non-loopback address. -#server.host: "localhost" - -# Enables you to specify a path to mount OpenSearch Dashboards at if you are running behind a proxy. -# Use the `server.rewriteBasePath` setting to tell OpenSearch Dashboards if it should remove the basePath -# from requests it receives, and to prevent a deprecation warning at startup. -# This setting cannot end in a slash. -#server.basePath: "" - -# Specifies whether OpenSearch Dashboards should rewrite requests that are prefixed with -# `server.basePath` or require that they are rewritten by your reverse proxy. -#server.rewriteBasePath: false - -# The maximum payload size in bytes for incoming server requests. -#server.maxPayloadBytes: 1048576 - -# The OpenSearch Dashboards server's name. This is used for display purposes. -#server.name: "your-hostname" - -# The URLs of the OpenSearch instances to use for all your queries. -#opensearch.hosts: ["http://localhost:9200"] - -# OpenSearch Dashboards uses an index in OpenSearch to store saved searches, visualizations and -# dashboards. OpenSearch Dashboards creates a new index if the index doesn't already exist. -#opensearchDashboards.index: ".opensearch_dashboards" - -# The default application to load. -#opensearchDashboards.defaultAppId: "home" - -# Setting for an optimized healthcheck that only uses the local OpenSearch node to do Dashboards healthcheck. -# This settings should be used for large clusters or for clusters with ingest heavy nodes. -# It allows Dashboards to only healthcheck using the local OpenSearch node rather than fan out requests across all nodes. -# -# It requires the user to create an OpenSearch node attribute with the same name as the value used in the setting -# This node attribute should assign all nodes of the same cluster an integer value that increments with each new cluster that is spun up -# e.g. in opensearch.yml file you would set the value to a setting using node.attr.cluster_id: -# Should only be enabled if there is a corresponding node attribute created in your OpenSearch config that matches the value here -#opensearch.optimizedHealthcheck.id: "cluster_id" -#opensearch.optimizedHealthcheck.filters: { -# attribute_key: "attribute_value", -#} - -# If your OpenSearch is protected with basic authentication, these settings provide -# the username and password that the OpenSearch Dashboards server uses to perform maintenance on the OpenSearch Dashboards -# index at startup. Your OpenSearch Dashboards users still need to authenticate with OpenSearch, which -# is proxied through the OpenSearch Dashboards server. -#opensearch.username: "opensearch_dashboards_system" -#opensearch.password: "pass" - -# Enables SSL and paths to the PEM-format SSL certificate and SSL key files, respectively. -# These settings enable SSL for outgoing requests from the OpenSearch Dashboards server to the browser. -#server.ssl.enabled: false -#server.ssl.certificate: /path/to/your/server.crt -#server.ssl.key: /path/to/your/server.key - -# Optional settings that provide the paths to the PEM-format SSL certificate and key files. -# These files are used to verify the identity of OpenSearch Dashboards to OpenSearch and are required when -# xpack.security.http.ssl.client_authentication in OpenSearch is set to required. -#opensearch.ssl.certificate: /path/to/your/client.crt -#opensearch.ssl.key: /path/to/your/client.key - -# Optional setting that enables you to specify a path to the PEM file for the certificate -# authority for your OpenSearch instance. -#opensearch.ssl.certificateAuthorities: [ "/path/to/your/CA.pem" ] - -# To disregard the validity of SSL certificates, change this setting's value to 'none'. -#opensearch.ssl.verificationMode: full - -# Time in milliseconds to wait for OpenSearch to respond to pings. Defaults to the value of -# the opensearch.requestTimeout setting. -#opensearch.pingTimeout: 1500 - -# Time in milliseconds to wait for responses from the back end or OpenSearch. This value -# must be a positive integer. -#opensearch.requestTimeout: 30000 - -# Enables the memory circuit breaker that prevents heap out of memory errors for large query responses. -# If enabled, we will provide additional check to prevent potential out of memory error in @openserach-project/opensearch. -# The default threshold is based on the `max-old-space-size` of NodeJS. It is configurable by tuning `opensearch.memoryCircuitBreaker.maxPercentage`. -#opensearch.memoryCircuitBreaker.enabled: false - -# The pecentage of maximum heap allowed for processing response. The default value of the pecentage is `1.0`. The valid input range should be [0, 1] inclusively. -# For reference, the `threshold of memoryCircuitBreaker` = `max-old-space-size of NodeJS` * `opensearch.memoryCircuitBreaker.maxPercentage` -#opensearch.memoryCircuitBreaker.maxPercentage: 1.0 - -# DEPRECATED: Use opensearch.requestHeadersAllowlist -# List of OpenSearch Dashboards client-side headers to send to OpenSearch. To send *no* client-side -# headers, set this value to [] (an empty list). -#opensearch.requestHeadersWhitelist: [ authorization ] - -# List of OpenSearch Dashboards client-side headers to send to OpenSearch. To send *no* client-side -# headers, set this value to [] (an empty list). -#opensearch.requestHeadersAllowlist: [ authorization ] - -# Header names and values that are sent to OpenSearch. Any custom headers cannot be overwritten -# by client-side headers, regardless of the opensearch.requestHeadersAllowlist configuration. -#opensearch.customHeaders: {} - -# Time in milliseconds for OpenSearch to wait for responses from shards. Set to 0 to disable. -#opensearch.shardTimeout: 30000 - -# Logs queries sent to OpenSearch. Requires logging.verbose set to true. -#opensearch.logQueries: false - -# Disables errors from the OpenSearch JS client and enables you to utilize protected words such as: 'boolean', 'proto', 'constructor'. -# within cluster. By default, OpenSearch Dashboards and the client will protect you against prototype poisoning attacks. -# WARNING: Index patterns are user-supplied data. Disabling this will place the expectation that you are handling the data safely. -#opensearch.disablePrototypePoisoningProtection: false - -# Specifies the path where OpenSearch Dashboards creates the process ID file. -#pid.file: /var/run/opensearchDashboards.pid - -# Enables you to specify a file where OpenSearch Dashboards stores log output. -#logging.dest: stdout - -# Set the value of this setting to true to suppress all logging output. -#logging.silent: false - -# Set the value of this setting to true to suppress all logging output other than error messages. -#logging.quiet: false - -# Set the value of this setting to true to log all events, including system usage information -# and all requests. -#logging.verbose: false - -# Set the interval in milliseconds to sample system and process performance -# metrics. Minimum is 100ms. Defaults to 5000. -#ops.interval: 5000 - -# Specifies locale to be used for all localizable strings, dates and number formats. -# Supported languages are the following: English - en , by default , Chinese - zh-CN . -#i18n.locale: "en" - -# Set the allowlist to check input graphite Url. Allowlist is the default check list. -#vis_type_timeline.graphiteAllowedUrls: ['https://www.hostedgraphite.com/UID/ACCESS_KEY/graphite'] - -# Set the denylist to check input graphite Url. Denylist is an IP list. -# Below is an example for reference - -# vis_type_timeline.graphiteBlockedIPs: [ -# //Loopback -# '127.0.0.0/8', -# '::1/128', -# //Link-local Address for IPv6 -# 'fe80::/10', -# //Private IP address for IPv4 -# '10.0.0.0/8', -# '172.16.0.0/12', -# '192.168.0.0/16', -# //Unique local address (ULA) -# 'fc00::/7', -# //Reserved IP address -# '0.0.0.0/8', -# '100.64.0.0/10', -# '192.0.0.0/24', -# '192.0.2.0/24', -# '198.18.0.0/15', -# '192.88.99.0/24', -# '198.51.100.0/24', -# '203.0.113.0/24', -# '224.0.0.0/4', -# '240.0.0.0/4', -# '255.255.255.255/32', -# '::/128', -# '2001:db8::/32', -# 'ff00::/8', -# ] - -# vis_type_timeline.graphiteDeniedIPs: [] - -# vis_type_timeline.graphiteDeniedIPs: [ -# //Loopback -# '127.0.0.0/8', -# '::1/128', -# //Link-local Address for IPv6 -# 'fe80::/10', -# //Private IP address for IPv4 -# '10.0.0.0/8', -# '172.16.0.0/12', -# '192.168.0.0/16', -# //Unique local address (ULA) -# 'fc00::/7', -# //Reserved IP address -# '0.0.0.0/8', -# '100.64.0.0/10', -# '192.0.0.0/24', -# '192.0.2.0/24', -# '198.18.0.0/15', -# '192.88.99.0/24', -# '198.51.100.0/24', -# '203.0.113.0/24', -# '224.0.0.0/4', -# '240.0.0.0/4', -# '255.255.255.255/32', -# '::/128', -# '2001:db8::/32', -# 'ff00::/8', -# ] - -# opensearchDashboards.branding: -# logo: -# defaultUrl: "" -# darkModeUrl: "" -# mark: -# defaultUrl: "" -# darkModeUrl: "" -# loadingLogo: -# defaultUrl: "" -# darkModeUrl: "" -# faviconUrl: "" -# applicationTitle: "" -# useExpandedHeader: false - -# Set the value of this setting to true to capture region denied warnings and errors -# for your map rendering services. - -# map.showRegionDeniedWarning: false - -# Set the value of this setting to false to suppress search usage telemetry -# for reducing the load of OpenSearch cluster. -# data.search.usageTelemetry.enabled: false - -# Set the value of this setting to false to disable VisBuilder -# functionality in Visualization. -# vis_builder.enabled: false - -# Set the value of this setting to true to enable multiple data source feature. -#data_source.enabled: false -# Set the value of these settings to customize crypto materials to encryption saved credentials -# in data sources. -#data_source.encryption.wrappingKeyName: 'changeme' -#data_source.encryption.wrappingKeyNamespace: 'changeme' -#data_source.encryption.wrappingKey: [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - -#data_source.endpointDeniedIPs: [ -# '127.0.0.0/8', -# '::1/128', -# '169.254.0.0/16', -# 'fe80::/10', -# '10.0.0.0/8', -# '172.16.0.0/12', -# '192.168.0.0/16', -# 'fc00::/7', -# '0.0.0.0/8', -# '100.64.0.0/10', -# '192.0.0.0/24', -# '192.0.2.0/24', -# '198.18.0.0/15', -# '192.88.99.0/24', -# '198.51.100.0/24', -# '203.0.113.0/24', -# '224.0.0.0/4', -# '240.0.0.0/4', -# '255.255.255.255/32', -# '::/128', -# '2001:db8::/32', -# 'ff00::/8', -# ] - -# Set the value of this setting to false to hide the help menu link to the OpenSearch Dashboards user survey -# opensearchDashboards.survey.url: "https://survey.opensearch.org" diff --git a/src/core/types/capabilities.ts b/src/core/types/capabilities.ts index a4d4b59b2a4e..f8bb43c61738 100644 --- a/src/core/types/capabilities.ts +++ b/src/core/types/capabilities.ts @@ -48,5 +48,5 @@ export interface Capabilities { catalogue: Record; /** Custom capabilities, registered by plugins. */ - [key: string]: Record>; + [key: string]: Record>; } diff --git a/src/plugins/advanced_settings/server/capabilities_provider.ts b/src/plugins/advanced_settings/server/capabilities_provider.ts index be87d687d4b9..198ba0f6d3d2 100644 --- a/src/plugins/advanced_settings/server/capabilities_provider.ts +++ b/src/plugins/advanced_settings/server/capabilities_provider.ts @@ -32,5 +32,6 @@ export const capabilitiesProvider = () => ({ advancedSettings: { show: true, save: true, + hide_for_read_only: ['save'], }, }); diff --git a/src/plugins/console/server/plugin.ts b/src/plugins/console/server/plugin.ts index 4c33bc1d6060..11b5bf7baed5 100644 --- a/src/plugins/console/server/plugin.ts +++ b/src/plugins/console/server/plugin.ts @@ -55,6 +55,7 @@ export class ConsoleServerPlugin implements Plugin { dev_tools: { show: true, save: true, + hide_for_read_only: ['save'], }, })); diff --git a/src/plugins/dashboard/server/capabilities_provider.ts b/src/plugins/dashboard/server/capabilities_provider.ts index e0ae2a183c47..93062bb143f0 100644 --- a/src/plugins/dashboard/server/capabilities_provider.ts +++ b/src/plugins/dashboard/server/capabilities_provider.ts @@ -34,5 +34,6 @@ export const capabilitiesProvider = () => ({ show: true, showWriteControls: true, saveQuery: true, + hide_for_read_only: ['createNew', 'showWriteControls', 'saveQuery'], }, }); diff --git a/src/plugins/data/server/index_patterns/capabilities_provider.ts b/src/plugins/data/server/index_patterns/capabilities_provider.ts index 0f040faccceb..8da03f14a1da 100644 --- a/src/plugins/data/server/index_patterns/capabilities_provider.ts +++ b/src/plugins/data/server/index_patterns/capabilities_provider.ts @@ -31,5 +31,6 @@ export const capabilitiesProvider = () => ({ indexPatterns: { save: true, + hide_for_read_only: ['save'], }, }); diff --git a/src/plugins/discover/server/capabilities_provider.ts b/src/plugins/discover/server/capabilities_provider.ts index ecbefd8f4bb8..0f75f7a18650 100644 --- a/src/plugins/discover/server/capabilities_provider.ts +++ b/src/plugins/discover/server/capabilities_provider.ts @@ -34,5 +34,6 @@ export const capabilitiesProvider = () => ({ createShortUrl: true, save: true, saveQuery: true, + hide_for_read_only: ['createShortUrl', 'save', 'saveQuery'], }, }); diff --git a/src/plugins/saved_objects_management/server/capabilities_provider.ts b/src/plugins/saved_objects_management/server/capabilities_provider.ts index c97893b0aa17..ab4f22eb04a7 100644 --- a/src/plugins/saved_objects_management/server/capabilities_provider.ts +++ b/src/plugins/saved_objects_management/server/capabilities_provider.ts @@ -33,5 +33,6 @@ export const capabilitiesProvider = () => ({ delete: true, edit: true, read: true, + hide_for_read_only: ['delete', 'edit'], }, }); diff --git a/src/plugins/visualize/server/capabilities_provider.ts b/src/plugins/visualize/server/capabilities_provider.ts index 961b2ff6ed5d..0f2be34162ae 100644 --- a/src/plugins/visualize/server/capabilities_provider.ts +++ b/src/plugins/visualize/server/capabilities_provider.ts @@ -35,5 +35,6 @@ export const capabilitiesProvider = () => ({ delete: true, save: true, saveQuery: true, + hide_for_read_only: ['createShortUrl', 'delete', 'save', 'saveQuery'], }, });