2017-06-29 02:02:40 +08:00
|
|
|
[role="xpack"]
|
2017-04-07 09:04:39 +08:00
|
|
|
[[security-api]]
|
|
|
|
== Security APIs
|
2021-05-13 19:55:42 +08:00
|
|
|
To use the security APIs, you must set `xpack.security.enabled` to `true` in
|
|
|
|
the `elasticsearch.yml` file.
|
2017-04-07 09:04:39 +08:00
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to perform security activities.
|
2018-08-18 00:18:08 +08:00
|
|
|
|
2017-04-07 09:04:39 +08:00
|
|
|
* <<security-api-authenticate>>
|
|
|
|
* <<security-api-clear-cache>>
|
2019-08-26 23:53:10 +08:00
|
|
|
* <<security-api-delegate-pki-authentication>>
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-has-privileges>>
|
2018-01-18 00:14:02 +08:00
|
|
|
* <<security-api-ssl>>
|
2019-07-03 13:55:50 +08:00
|
|
|
* <<security-api-get-builtin-privileges>>
|
2024-02-21 22:06:32 +08:00
|
|
|
* <<security-api-get-settings>>
|
|
|
|
* <<security-api-update-settings>>
|
2021-06-22 23:16:21 +08:00
|
|
|
* <<security-api-get-user-privileges>>
|
2017-04-07 09:04:39 +08:00
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2018-08-24 09:04:02 +08:00
|
|
|
[[security-api-app-privileges]]
|
|
|
|
=== Application privileges
|
2018-08-18 12:39:21 +08:00
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to add, update, retrieve, and remove application
|
2018-08-24 09:04:02 +08:00
|
|
|
privileges:
|
2018-08-18 12:39:21 +08:00
|
|
|
|
2020-06-29 11:59:00 +08:00
|
|
|
* <<security-api-put-privileges,Create or update privileges>>
|
|
|
|
* <<security-api-clear-privilege-cache,Clear privileges cache>>
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-delete-privilege,Delete privileges>>
|
|
|
|
* <<security-api-get-privileges,Get privileges>>
|
2018-08-18 00:18:08 +08:00
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2018-08-21 05:30:42 +08:00
|
|
|
[[security-role-mapping-apis]]
|
|
|
|
=== Role mappings
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to add, remove, update, and retrieve role mappings:
|
2018-08-21 05:30:42 +08:00
|
|
|
|
2020-06-29 11:59:00 +08:00
|
|
|
* <<security-api-put-role-mapping,Create or update role mappings>>
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-delete-role-mapping,Delete role mappings>>
|
2018-08-21 05:30:42 +08:00
|
|
|
* <<security-api-get-role-mapping,Get role mappings>>
|
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2018-08-24 09:04:02 +08:00
|
|
|
[[security-role-apis]]
|
|
|
|
=== Roles
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to add, remove, update, and retrieve roles in the native realm:
|
2018-08-24 09:04:02 +08:00
|
|
|
|
|
|
|
* <<security-api-put-role,Create or update roles>>
|
2024-07-02 21:45:39 +08:00
|
|
|
* <<security-api-bulk-put-role, Bulk create or update roles>>
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-clear-role-cache,Clear roles cache>>
|
|
|
|
* <<security-api-delete-role,Delete roles>>
|
2024-07-03 17:04:53 +08:00
|
|
|
* <<security-api-bulk-delete-role, Bulk delete roles>>
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-get-role,Get roles>>
|
2024-07-05 17:46:48 +08:00
|
|
|
* <<security-api-query-role,Query roles>>
|
2018-08-24 09:04:02 +08:00
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2018-08-18 13:22:09 +08:00
|
|
|
[[security-token-apis]]
|
|
|
|
=== Tokens
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to create and invalidate bearer tokens for access
|
2018-08-18 13:22:09 +08:00
|
|
|
without requiring basic authentication:
|
|
|
|
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-get-token,Get token>>
|
|
|
|
* <<security-api-invalidate-token,Invalidate token>>
|
2018-08-18 13:22:09 +08:00
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2019-02-05 11:21:57 +08:00
|
|
|
[[security-api-keys]]
|
|
|
|
=== API Keys
|
|
|
|
|
2023-05-27 07:46:02 +08:00
|
|
|
Use the following APIs to create and update API keys for access via the REST interface
|
|
|
|
without requiring basic authentication:
|
|
|
|
|
2023-06-08 09:23:19 +08:00
|
|
|
* <<security-api-create-api-key,Create REST API key>>
|
|
|
|
* <<security-api-grant-api-key,Grant REST API key>>
|
|
|
|
* <<security-api-update-api-key,Update REST API key>>
|
|
|
|
* <<security-api-bulk-update-api-keys,Bulk update REST API keys>>
|
2023-05-27 07:46:02 +08:00
|
|
|
|
2024-05-03 15:12:37 +08:00
|
|
|
Use the following APIs to create and update cross-cluster API keys for
|
2023-09-01 18:08:49 +08:00
|
|
|
<<remote-clusters-api-key,API key based remote cluster access>>:
|
2023-05-27 07:46:02 +08:00
|
|
|
|
|
|
|
* <<security-api-create-cross-cluster-api-key,Create Cross-Cluster API key>>
|
|
|
|
* <<security-api-update-cross-cluster-api-key,Update Cross-Cluster API key>>
|
|
|
|
|
|
|
|
Use the following APIs to retrieve and invalidate API keys of all types:
|
|
|
|
|
|
|
|
* <<security-api-get-api-key,Get API key>>
|
|
|
|
* <<security-api-invalidate-api-key,Invalidate API key>>
|
|
|
|
* <<security-api-query-api-key,Query API key>>
|
|
|
|
* <<security-api-clear-api-key-cache,Clear API key cache>>
|
2019-02-05 11:21:57 +08:00
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2018-08-18 14:17:33 +08:00
|
|
|
[[security-user-apis]]
|
|
|
|
=== Users
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to add, remove, update, or retrieve users in the
|
2018-08-18 14:17:33 +08:00
|
|
|
native realm:
|
|
|
|
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-put-user,Create or update users>>
|
2018-08-18 14:17:33 +08:00
|
|
|
* <<security-api-change-password,Change passwords>>
|
2018-08-24 09:04:02 +08:00
|
|
|
* <<security-api-delete-user,Delete users>>
|
|
|
|
* <<security-api-disable-user,Disable users>>
|
|
|
|
* <<security-api-enable-user,Enable users>>
|
2018-08-18 14:17:33 +08:00
|
|
|
* <<security-api-get-user,Get users>>
|
2024-01-30 18:27:24 +08:00
|
|
|
* <<security-api-query-user,Query users>>
|
2018-08-18 14:17:33 +08:00
|
|
|
|
2021-05-13 19:55:42 +08:00
|
|
|
[discrete]
|
|
|
|
[[security-service-account-apis]]
|
|
|
|
=== Service Accounts
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to list service accounts and manage the service tokens:
|
2021-05-13 19:55:42 +08:00
|
|
|
|
|
|
|
* <<security-api-get-service-accounts>>
|
|
|
|
* <<security-api-create-service-token>>
|
|
|
|
* <<security-api-delete-service-token>>
|
|
|
|
* <<security-api-get-service-credentials>>
|
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2019-05-20 18:47:58 +08:00
|
|
|
[[security-openid-apis]]
|
2019-04-22 20:38:41 +08:00
|
|
|
=== OpenID Connect
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to authenticate users against an OpenID Connect
|
2019-10-11 20:30:21 +08:00
|
|
|
authentication realm when using a custom web application other than Kibana
|
2019-04-22 20:38:41 +08:00
|
|
|
|
|
|
|
* <<security-api-oidc-prepare-authentication, Prepare an authentication request>>
|
|
|
|
* <<security-api-oidc-authenticate, Submit an authentication response>>
|
|
|
|
* <<security-api-oidc-logout, Logout an authenticated user>>
|
|
|
|
|
2020-07-23 23:48:22 +08:00
|
|
|
[discrete]
|
2019-10-11 20:30:21 +08:00
|
|
|
[[security-saml-apis]]
|
|
|
|
=== SAML
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to authenticate users against a SAML authentication
|
2019-10-11 20:30:21 +08:00
|
|
|
realm when using a custom web application other than Kibana
|
|
|
|
|
|
|
|
* <<security-api-saml-prepare-authentication, Prepare an authentication request>>
|
|
|
|
* <<security-api-saml-authenticate, Submit an authentication response>>
|
|
|
|
* <<security-api-saml-logout, Logout an authenticated user>>
|
|
|
|
* <<security-api-saml-invalidate, Submit a logout request from the IdP>>
|
2021-05-31 09:28:16 +08:00
|
|
|
* <<security-api-saml-complete-logout, Verify a logout response from the IdP>>
|
2020-11-17 23:42:53 +08:00
|
|
|
* <<security-api-saml-sp-metadata,Generate SAML metadata>>
|
2019-10-11 20:30:21 +08:00
|
|
|
|
2021-05-12 13:45:02 +08:00
|
|
|
[discrete]
|
|
|
|
[[security-enrollment-apis]]
|
|
|
|
=== Enrollment
|
|
|
|
|
2021-06-24 19:25:54 +08:00
|
|
|
Use the following APIs to enable new nodes to join an existing cluster with
|
|
|
|
security enabled, or to enable a {kib} instance to configure itself to
|
|
|
|
communicate with a secured {es} cluster.
|
2021-05-12 13:45:02 +08:00
|
|
|
|
|
|
|
* <<security-api-node-enrollment, Enroll a new node>>
|
2021-06-24 19:25:54 +08:00
|
|
|
* <<security-api-kibana-enrollment, Enroll a new {kib} instance>>
|
2021-05-12 13:45:02 +08:00
|
|
|
|
2022-02-10 07:00:16 +08:00
|
|
|
[discrete]
|
|
|
|
[[security-user-profile-apis]]
|
|
|
|
=== User Profile
|
|
|
|
|
|
|
|
Use the following APIs to retrieve and manage user profiles.
|
|
|
|
|
2022-04-14 22:38:41 +08:00
|
|
|
* <<security-api-activate-user-profile, Activate user profile>>
|
2022-02-10 07:00:16 +08:00
|
|
|
* <<security-api-get-user-profile, Get user profile>>
|
|
|
|
* <<security-api-update-user-profile-data, Update user profile data>>
|
2022-03-15 08:08:25 +08:00
|
|
|
* <<security-api-enable-user-profile, Enable user profile>>
|
|
|
|
* <<security-api-disable-user-profile, Disable user profile>>
|
2022-04-01 07:33:23 +08:00
|
|
|
* <<security-api-suggest-user-profile, Suggest user profile>>
|
2022-06-07 15:58:32 +08:00
|
|
|
* <<security-api-has-privileges-user-profile, Has Privileges user profile>>
|
2022-02-10 07:00:16 +08:00
|
|
|
|
2017-04-07 09:04:39 +08:00
|
|
|
include::security/authenticate.asciidoc[]
|
|
|
|
include::security/change-password.asciidoc[]
|
|
|
|
include::security/clear-cache.asciidoc[]
|
2018-08-18 00:18:08 +08:00
|
|
|
include::security/clear-roles-cache.asciidoc[]
|
2020-06-29 11:59:00 +08:00
|
|
|
include::security/clear-privileges-cache.asciidoc[]
|
2020-10-06 18:41:25 +08:00
|
|
|
include::security/clear-api-key-cache.asciidoc[]
|
2021-05-13 19:55:42 +08:00
|
|
|
include::security/clear-service-token-caches.asciidoc[]
|
2019-03-05 07:06:00 +08:00
|
|
|
include::security/create-api-keys.asciidoc[]
|
2018-12-21 02:23:28 +08:00
|
|
|
include::security/put-app-privileges.asciidoc[]
|
|
|
|
include::security/create-role-mappings.asciidoc[]
|
2018-08-18 00:18:08 +08:00
|
|
|
include::security/create-roles.asciidoc[]
|
2024-07-02 21:45:39 +08:00
|
|
|
include::security/bulk-create-roles.asciidoc[]
|
2024-07-03 17:04:53 +08:00
|
|
|
include::security/bulk-delete-roles.asciidoc[]
|
2018-08-18 14:17:33 +08:00
|
|
|
include::security/create-users.asciidoc[]
|
2021-05-13 19:55:42 +08:00
|
|
|
include::security/create-service-token.asciidoc[]
|
2019-08-26 23:53:10 +08:00
|
|
|
include::security/delegate-pki-authentication.asciidoc[]
|
2018-08-24 09:04:02 +08:00
|
|
|
include::security/delete-app-privileges.asciidoc[]
|
2018-08-21 05:30:42 +08:00
|
|
|
include::security/delete-role-mappings.asciidoc[]
|
2018-08-18 00:18:08 +08:00
|
|
|
include::security/delete-roles.asciidoc[]
|
2021-05-13 19:55:42 +08:00
|
|
|
include::security/delete-service-token.asciidoc[]
|
2018-08-18 14:17:33 +08:00
|
|
|
include::security/delete-users.asciidoc[]
|
|
|
|
include::security/disable-users.asciidoc[]
|
|
|
|
include::security/enable-users.asciidoc[]
|
2021-08-17 19:41:35 +08:00
|
|
|
include::security/enroll-kibana.asciidoc[]
|
2021-05-12 13:45:02 +08:00
|
|
|
include::security/enroll-node.asciidoc[]
|
2019-03-05 07:06:00 +08:00
|
|
|
include::security/get-api-keys.asciidoc[]
|
2018-08-24 09:04:02 +08:00
|
|
|
include::security/get-app-privileges.asciidoc[]
|
2019-07-03 13:55:50 +08:00
|
|
|
include::security/get-builtin-privileges.asciidoc[]
|
2018-08-21 05:30:42 +08:00
|
|
|
include::security/get-role-mappings.asciidoc[]
|
2018-08-18 00:18:08 +08:00
|
|
|
include::security/get-roles.asciidoc[]
|
2024-07-05 17:46:48 +08:00
|
|
|
include::security/query-role.asciidoc[]
|
2021-05-13 19:55:42 +08:00
|
|
|
include::security/get-service-accounts.asciidoc[]
|
|
|
|
include::security/get-service-credentials.asciidoc[]
|
2024-01-30 22:39:34 +08:00
|
|
|
include::security/get-settings.asciidoc[]
|
2018-08-18 13:22:09 +08:00
|
|
|
include::security/get-tokens.asciidoc[]
|
2021-06-22 23:16:21 +08:00
|
|
|
include::security/get-user-privileges.asciidoc[]
|
2022-04-14 22:38:41 +08:00
|
|
|
|
2018-08-18 14:17:33 +08:00
|
|
|
include::security/get-users.asciidoc[]
|
2020-10-17 04:51:28 +08:00
|
|
|
include::security/grant-api-keys.asciidoc[]
|
2018-08-24 09:04:02 +08:00
|
|
|
include::security/has-privileges.asciidoc[]
|
2019-03-05 07:06:00 +08:00
|
|
|
include::security/invalidate-api-keys.asciidoc[]
|
2018-11-21 15:32:56 +08:00
|
|
|
include::security/invalidate-tokens.asciidoc[]
|
2019-04-22 20:38:41 +08:00
|
|
|
include::security/oidc-prepare-authentication-api.asciidoc[]
|
|
|
|
include::security/oidc-authenticate-api.asciidoc[]
|
|
|
|
include::security/oidc-logout-api.asciidoc[]
|
2021-08-19 02:01:43 +08:00
|
|
|
include::security/query-api-key.asciidoc[]
|
2024-01-30 18:27:24 +08:00
|
|
|
include::security/query-user.asciidoc[]
|
2022-07-08 17:48:02 +08:00
|
|
|
include::security/update-api-key.asciidoc[]
|
2024-01-30 22:39:34 +08:00
|
|
|
include::security/update-settings.asciidoc[]
|
2022-08-02 17:27:05 +08:00
|
|
|
include::security/bulk-update-api-keys.asciidoc[]
|
2019-10-11 20:30:21 +08:00
|
|
|
include::security/saml-prepare-authentication-api.asciidoc[]
|
|
|
|
include::security/saml-authenticate-api.asciidoc[]
|
|
|
|
include::security/saml-logout-api.asciidoc[]
|
|
|
|
include::security/saml-invalidate-api.asciidoc[]
|
2021-05-31 09:28:16 +08:00
|
|
|
include::security/saml-complete-logout-api.asciidoc[]
|
2020-11-17 23:42:53 +08:00
|
|
|
include::security/saml-sp-metadata.asciidoc[]
|
2019-05-20 18:47:58 +08:00
|
|
|
include::security/ssl.asciidoc[]
|
2022-04-14 22:38:41 +08:00
|
|
|
include::security/activate-user-profile.asciidoc[]
|
|
|
|
include::security/disable-user-profile.asciidoc[]
|
|
|
|
include::security/enable-user-profile.asciidoc[]
|
|
|
|
include::security/get-user-profile.asciidoc[]
|
2022-04-01 07:33:23 +08:00
|
|
|
include::security/suggest-user-profile.asciidoc[]
|
2022-02-07 08:05:01 +08:00
|
|
|
include::security/update-user-profile-data.asciidoc[]
|
2022-06-07 15:58:32 +08:00
|
|
|
include::security/has-privileges-user-profile.asciidoc[]
|
2023-05-27 07:46:02 +08:00
|
|
|
include::security/create-cross-cluster-api-key.asciidoc[]
|
|
|
|
include::security/update-cross-cluster-api-key.asciidoc[]
|