Is your feature request related to a problem?
Currently, OpenSearch only has 2 levels of access for a tenant:
kibana_all_read - read only access to a tenant
kibana_all_write - read and write access to a tenant
Given that advanced settings is a separate document in the .kibana index, any user with kibana_read_write can make modifications since its a write operation to a doc in a .kibana index.
OpenSearch should distinguish between 2 separate levels of write users:
kibana_all_write - users that have permissions to create new visualizations and dashboards and can change settings
kibana_only_write - users that have permissions to create new visualizations and dashboards but cannot change settings
What solution would you like?
To achieve this, I propose creating a separate API in the opensearch-dashboards module of core. This API will be a wrapper around the index operation to the .kibana index and allows the security plugin to authorize at the API level instead of just authorizing the index operation to the .kibana index.
What alternatives have you considered?
Status Quo
Do you have any additional context?
Add any other context or screenshots about the feature request here.