OpenSearch/docs/java-rest/high-level
Yogesh Gaikwad 7b6246ec67
Add `manage_own_api_key` cluster privilege (#45897) (#46023)
The existing privilege model for API keys with privileges like
`manage_api_key`, `manage_security` etc. are too permissive and
we would want finer-grained control over the cluster privileges
for API keys. Previously APIs created would also need these
privileges to get its own information.

This commit adds support for `manage_own_api_key` cluster privilege
which only allows api key cluster actions on API keys owned by the
currently authenticated user. Also adds support for retrieval of
the API key self-information when authenticating via API key
without the need for the additional API key privileges.
To support this privilege, we are introducing additional
authentication context along with the request context such that
it can be used to authorize cluster actions based on the current
user authentication.

The API key get and invalidate APIs introduce an `owner` flag
that can be set to true if the API key request (Get or Invalidate)
is for the API keys owned by the currently authenticated user only.
In that case, `realm` and `username` cannot be set as they are
assumed to be the currently authenticated ones.

The changes cover HLRC changes, documentation for the API changes.

Closes #40031
2019-08-28 00:44:23 +10:00
..
ccr Introduce forget follower API (#39718) 2019-03-07 11:08:45 -05:00
cluster Docs: Cut down on high level rest client copy-and-paste-ness (#34125) 2018-09-28 14:48:11 -04:00
dataframe [ML-DataFrame] Combine task_state and indexer_state in _stats (#45324) 2019-08-08 16:24:26 +01:00
document [DOCS] Update anchors and links for Elasticsearch API relocation (#44500) 2019-07-19 09:18:23 -04:00
graph HLRC GraphClient and associated tests (#32366) 2018-08-21 13:29:18 +01:00
ilm [7.x] Add Snapshot Lifecycle Management (#44382) 2019-07-16 07:37:13 -06:00
indices Add Clone Index API (#44267) 2019-07-25 22:02:28 +02:00
ingest REST high-level client: add simulate pipeline API (#31158) 2018-06-22 09:59:04 +02:00
licensing HLRC: add support for get license basic/trial status API (#33176) 2018-11-13 15:52:59 +01:00
migration Remove Migration Upgrade and Assistance APIs (#40075) 2019-03-18 13:46:56 -06:00
miscellaneous HLRC: Convert xpack methods to client side objects (#40705) 2019-04-04 11:06:44 -05:00
ml [ML] Add description to DF analytics (#45774) (#46019) 2019-08-27 15:48:59 +03:00
rollup [7.x Backport] Force selection of calendar or fixed intervals (#41906) 2019-05-20 12:07:29 -04:00
script HLRC: Add put stored script support to high-level rest client (#31323) 2018-09-09 13:47:47 +02:00
search [DOCS] Update anchors and links for Elasticsearch API relocation (#44500) 2019-07-19 09:18:23 -04:00
security Add `manage_own_api_key` cluster privilege (#45897) (#46023) 2019-08-28 00:44:23 +10:00
snapshot Add Restore Snapshot High Level REST API 2018-07-24 16:17:09 +02:00
tasks fix dangling tag in TasksClientDocumentationIT (#39157) 2019-02-20 08:48:58 -08:00
watcher [DOCS] Various spelling corrections (#37046) 2019-01-07 14:44:12 +01:00
aggs-builders.asciidoc [DOCS] Update APIs grouping and ordering in REST high-level Client docs (#28497) 2018-02-02 17:19:50 +01:00
execution-no-req.asciidoc [DOCS] Fixes terms in HLRC data frame transform APIs (#44838) (#44865) 2019-07-25 10:08:38 -07:00
execution.asciidoc [DOCS] Fixes terms in HLRC data frame transform APIs (#44838) (#44865) 2019-07-25 10:08:38 -07:00
getting-started.asciidoc Provide names for all artifact repositories (#41857) 2019-05-07 06:35:28 -04:00
index.asciidoc Docs: HLRC: refactor bulk, migrate and reindex apis (#35413) 2018-11-16 08:58:13 +01:00
java-builders.asciidoc Docs: Cut down on high level rest client copy-and-paste-ness (#34125) 2018-09-28 14:48:11 -04:00
migration.asciidoc Docs: Pin two IDs in the rest client (#40785) 2019-04-04 12:03:36 -04:00
query-builders.asciidoc Search - added HLRC support for PinnedQueryBuilder (#45779) (#45853) 2019-08-23 09:22:17 +01:00
supported-apis.asciidoc [7.x] Add docs for HLRC for Estimate memory usage API (#45538) (#45783) 2019-08-21 14:27:36 +02:00