Versions (relevant - OpenSearch/Dashboard/Server OS/Browser):
opensearch:2.3.0 (Docker installation)
Describe the issue:
I am able to curl opensearch cluster from within the dashboard’s container
[opensearch-dashboards@a220ae8e54a5 ~]$ curl --cacert /usr/share/opensearch-dashboards/config/root-ca.pem \
> --cert /usr/share/opensearch-dashboards/config/client.pem \
> --key /usr/share/opensearch-dashboards/config/client-key.pem \
> https://mydomainname.net:9200
{
"name" : "opensearch-node1",
"cluster_name" : "opensearch-cluster",
"cluster_uuid" : "x5sA6WCgS9CohDJDDgAn4Q",
"version" : {
"distribution" : "opensearch",
"number" : "2.3.0",
"build_type" : "tar",
"build_hash" : "6f6e84ebc54af31a976f53af36a5c69d474a5140",
"build_date" : "2022-09-09T00:07:12.137133581Z",
"build_snapshot" : false,
"lucene_version" : "9.3.0",
"minimum_wire_compatibility_version" : "7.10.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "The OpenSearch Project: https://opensearch.org/"
}
But the dashboard seems to be failing to connect to the cluster using the same security params
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:34Z","tags":["info","plugins-system"],"pid":1,"message":"Setting up [46] plugins: [alertingDashboards,usageCollection,opensearchDashboardsUsageCollection,opensearchDashboardsLegacy,mapsLegacy,share,opensearchUiShared,embeddable,legacyExport,expressions,data,home,console,apmOss,management,indexPatternManagement,advancedSettings,savedObjects,reportsDashboards,securityDashboards,indexManagementDashboards,anomalyDetectionDashboards,dashboard,visualizations,visTypeMarkdown,visTypeTimeline,timeline,visTypeVega,visTypeTable,tileMap,regionMap,customImportMapDashboards,inputControlVis,ganttChartDashboards,visualize,queryWorkbenchDashboards,notificationsDashboards,bfetch,charts,visTypeVislib,visTypeTimeseries,visTypeTagcloud,visTypeMetric,observabilityDashboards,discover,savedObjectsManagement]"}
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:34Z","tags":["info","savedobjects-service"],"pid":1,"message":"Waiting until all OpenSearch nodes are compatible with OpenSearch Dashboards before starting saved objects migrations..."}
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:34Z","tags":["error","opensearch","data"],"pid":1,"message":"[ResponseError]: Response Error"}
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:34Z","tags":["error","savedobjects-service"],"pid":1,"message":"Unable to retrieve version information from OpenSearch nodes."}
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:37Z","tags":["error","opensearch","data"],"pid":1,"message":"[ResponseError]: Response Error"}
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:39Z","tags":["error","opensearch","data"],"pid":1,"message":"[ResponseError]: Response Error"}
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:42Z","tags":["error","opensearch","data"],"pid":1,"message":"[ResponseError]: Response Error"}
opensearch-dashboards | {"type":"log","@timestamp":"2023-03-17T15:12:44Z","tags":["error","opensearch","data"],"pid":1,"message":"[ResponseError]: Response Error"}
And the browser displays the message attached in the screen capture : OpenSearch Dashboards server is not ready yet
Configuration:
Here is dashboard’s config :
opensearch.hosts: ["https://mydomainname.net:9200"]
opensearch.ssl.verificationMode: certificate
opensearch.username: "kibanaserver"
opensearch.requestHeadersAllowlist: [ authorization,securitytenant ]
server.ssl.enabled: true
server.ssl.certificate: /usr/share/opensearch-dashboards/config/client.pem
server.ssl.key: /usr/share/opensearch-dashboards/config/client-key.pem
opensearch.ssl.certificateAuthorities: [ "/usr/share/opensearch-dashboards/config/root-ca.pem"]
opensearch_security.multitenancy.enabled: true
opensearch_security.multitenancy.tenants.preferred: ["Private", "Global"]
opensearch_security.readonly_mode.roles: ["kibana_read_only"]
opensearch_security.cookie.secure: true
And for now my roles_mapping.yml grants all access to all authenticated users
all_access:
reserved: false
# backend_roles:
# - "admin"
users:
- "*"
Please any idea ?
Thanks
Relevant Logs or Screenshots: