Versions (relevant - OpenSearch/Dashboard/Server OS/Browser):
Debian 12.4 (bookworm)
{
"cluster_name": "opensearch",
"cluster_uuid": "qDes-IQDT2-flGKzp0lIuA",
"name": "opensearch",
"tagline": "The OpenSearch Project: https://opensearch.org/",
"version": {
"build_date": "2023-11-29T21:43:44.221253956Z",
"build_hash": "6b1986e964d440be9137eba1413015c31c5a7752",
"build_snapshot": false,
"build_type": "deb",
"distribution": "opensearch",
"lucene_version": "9.7.0",
"minimum_index_compatibility_version": "7.0.0",
"minimum_wire_compatibility_version": "7.10.0",
"number": "2.11.1"
}
}
Describe the issue:
My server is up. I can connect to it with opensearch-py; the version info above is the output of server.info().
opensearch-security is installed:
$ bin/opensearch-plugin list
opensearch-alerting
opensearch-anomaly-detection
opensearch-asynchronous-search
opensearch-cross-cluster-replication
opensearch-custom-codecs
opensearch-geospatial
opensearch-index-management
opensearch-job-scheduler
opensearch-knn
opensearch-ml
opensearch-neural-search
opensearch-notifications
opensearch-notifications-core
opensearch-observability
opensearch-performance-analyzer
opensearch-reports-scheduler
opensearch-security
opensearch-security-analytics
opensearch-sql
/etc/opensearch/opensearch-security/config.yml contains (in part):
basic_internal_auth_domain:
description: "Authenticate via HTTP Basic against internal users database"
http_enabled: true
transport_enabled: true
order: 1
http_authenticator:
type: basic
challenge: true
authentication_backend:
type: internal
and /usr/share/opensearch/plugins/opensearch-security/internal_users.yml has:
_meta:
type: "internalusers"
config_version: 2
admin:
hash: <elided>
backend_roles:
- "admin:
description: "Admin user"
The problem is when I try to get the current user via the REST API, as described here, it fails:
$ curl -XGET "http://localhost:9200/_plugins/_security/api/account"
{"error":"no handler found for uri [/_plugins/_security/api/account] and method [GET]"}
Obviously I’ve got something mis-configured, but what?