Module: Elasticsearch::XPack::API::Security::Actions
- Included in:
- SecurityClient
- Defined in:
- lib/elasticsearch/xpack/api/namespace/security.rb,
lib/elasticsearch/xpack/api/actions/security/get_role.rb,
lib/elasticsearch/xpack/api/actions/security/get_user.rb,
lib/elasticsearch/xpack/api/actions/security/put_role.rb,
lib/elasticsearch/xpack/api/actions/security/put_user.rb,
lib/elasticsearch/xpack/api/actions/security/get_token.rb,
lib/elasticsearch/xpack/api/actions/security/delete_role.rb,
lib/elasticsearch/xpack/api/actions/security/delete_user.rb,
lib/elasticsearch/xpack/api/actions/security/enable_user.rb,
lib/elasticsearch/xpack/api/actions/security/enroll_node.rb,
lib/elasticsearch/xpack/api/actions/security/get_api_key.rb,
lib/elasticsearch/xpack/api/actions/security/saml_logout.rb,
lib/elasticsearch/xpack/api/actions/security/authenticate.rb,
lib/elasticsearch/xpack/api/actions/security/disable_user.rb,
lib/elasticsearch/xpack/api/actions/security/enroll_kibana.rb,
lib/elasticsearch/xpack/api/actions/security/grant_api_key.rb,
lib/elasticsearch/xpack/api/actions/security/create_api_key.rb,
lib/elasticsearch/xpack/api/actions/security/get_privileges.rb,
lib/elasticsearch/xpack/api/actions/security/has_privileges.rb,
lib/elasticsearch/xpack/api/actions/security/put_privileges.rb,
lib/elasticsearch/xpack/api/actions/security/query_api_keys.rb,
lib/elasticsearch/xpack/api/actions/security/change_password.rb,
lib/elasticsearch/xpack/api/actions/security/params_registry.rb,
lib/elasticsearch/xpack/api/actions/security/saml_invalidate.rb,
lib/elasticsearch/xpack/api/actions/security/get_role_mapping.rb,
lib/elasticsearch/xpack/api/actions/security/invalidate_token.rb,
lib/elasticsearch/xpack/api/actions/security/put_role_mapping.rb,
lib/elasticsearch/xpack/api/actions/security/delete_privileges.rb,
lib/elasticsearch/xpack/api/actions/security/saml_authenticate.rb,
lib/elasticsearch/xpack/api/actions/security/clear_cached_roles.rb,
lib/elasticsearch/xpack/api/actions/security/invalidate_api_key.rb,
lib/elasticsearch/xpack/api/actions/security/clear_api_key_cache.rb,
lib/elasticsearch/xpack/api/actions/security/clear_cached_realms.rb,
lib/elasticsearch/xpack/api/actions/security/delete_role_mapping.rb,
lib/elasticsearch/xpack/api/actions/security/get_user_privileges.rb,
lib/elasticsearch/xpack/api/actions/security/create_service_token.rb,
lib/elasticsearch/xpack/api/actions/security/delete_service_token.rb,
lib/elasticsearch/xpack/api/actions/security/get_service_accounts.rb,
lib/elasticsearch/xpack/api/actions/security/saml_complete_logout.rb,
lib/elasticsearch/xpack/api/actions/security/get_builtin_privileges.rb,
lib/elasticsearch/xpack/api/actions/security/clear_cached_privileges.rb,
lib/elasticsearch/xpack/api/actions/security/get_service_credentials.rb,
lib/elasticsearch/xpack/api/actions/security/clear_cached_service_tokens.rb,
lib/elasticsearch/xpack/api/actions/security/saml_prepare_authentication.rb,
lib/elasticsearch/xpack/api/actions/security/saml_service_provider_metadata.rb
Defined Under Namespace
Modules: ParamsRegistry
Instance Method Summary collapse
-
#authenticate(arguments = {}) ⇒ Object
Enables authentication as a user and retrieve information about the authenticated user.
-
#change_password(arguments = {}) ⇒ Object
Changes the passwords of users in the native realm and built-in users.
-
#clear_api_key_cache(arguments = {}) ⇒ Object
Clear a subset or all entries from the API key cache.
-
#clear_cached_privileges(arguments = {}) ⇒ Object
Evicts application privileges from the native application privileges cache.
-
#clear_cached_realms(arguments = {}) ⇒ Object
Evicts users from the user cache.
-
#clear_cached_roles(arguments = {}) ⇒ Object
Evicts roles from the native role cache.
-
#clear_cached_service_tokens(arguments = {}) ⇒ Object
Evicts tokens from the service account token caches.
-
#create_api_key(arguments = {}) ⇒ Object
Creates an API key for access without requiring basic authentication.
-
#create_service_token(arguments = {}) ⇒ Object
Creates a service account token for access without requiring basic authentication.
-
#delete_privileges(arguments = {}) ⇒ Object
Removes application privileges.
-
#delete_role(arguments = {}) ⇒ Object
Removes roles in the native realm.
-
#delete_role_mapping(arguments = {}) ⇒ Object
Removes role mappings.
-
#delete_service_token(arguments = {}) ⇒ Object
Deletes a service account token.
-
#delete_user(arguments = {}) ⇒ Object
Deletes users from the native realm.
-
#disable_user(arguments = {}) ⇒ Object
Disables users in the native realm.
-
#enable_user(arguments = {}) ⇒ Object
Enables users in the native realm.
-
#enroll_kibana(arguments = {}) ⇒ Object
Allows a kibana instance to configure itself to communicate with a secured elasticsearch cluster.
-
#enroll_node(arguments = {}) ⇒ Object
Allows a new node to enroll to an existing cluster with security enabled.
-
#get_api_key(arguments = {}) ⇒ Object
Retrieves information for one or more API keys.
-
#get_builtin_privileges(arguments = {}) ⇒ Object
Retrieves the list of cluster privileges and index privileges that are available in this version of Elasticsearch.
-
#get_privileges(arguments = {}) ⇒ Object
Retrieves application privileges.
-
#get_role(arguments = {}) ⇒ Object
Retrieves roles in the native realm.
-
#get_role_mapping(arguments = {}) ⇒ Object
Retrieves role mappings.
-
#get_service_accounts(arguments = {}) ⇒ Object
Retrieves information about service accounts.
-
#get_service_credentials(arguments = {}) ⇒ Object
Retrieves information of all service credentials for a service account.
-
#get_token(arguments = {}) ⇒ Object
Creates a bearer token for access without requiring basic authentication.
-
#get_user(arguments = {}) ⇒ Object
Retrieves information about users in the native realm and built-in users.
-
#get_user_privileges(arguments = {}) ⇒ Object
Retrieves security privileges for the logged in user.
-
#grant_api_key(arguments = {}) ⇒ Object
Creates an API key on behalf of another user.
-
#has_privileges(arguments = {}) ⇒ Object
Determines whether the specified user has a specified list of privileges.
-
#invalidate_api_key(arguments = {}) ⇒ Object
Invalidates one or more API keys.
-
#invalidate_token(arguments = {}) ⇒ Object
Invalidates one or more access tokens or refresh tokens.
-
#put_privileges(arguments = {}) ⇒ Object
Adds or updates application privileges.
-
#put_role(arguments = {}) ⇒ Object
Adds and updates roles in the native realm.
-
#put_role_mapping(arguments = {}) ⇒ Object
Creates and updates role mappings.
-
#put_user(arguments = {}) ⇒ Object
Adds and updates users in the native realm.
-
#query_api_keys(arguments = {}) ⇒ Object
Retrieves information for API keys using a subset of query DSL.
-
#saml_authenticate(arguments = {}) ⇒ Object
Exchanges a SAML Response message for an Elasticsearch access token and refresh token pair.
-
#saml_complete_logout(arguments = {}) ⇒ Object
Verifies the logout response sent from the SAML IdP.
-
#saml_invalidate(arguments = {}) ⇒ Object
Consumes a SAML LogoutRequest.
-
#saml_logout(arguments = {}) ⇒ Object
Invalidates an access token and a refresh token that were generated via the SAML Authenticate API.
-
#saml_prepare_authentication(arguments = {}) ⇒ Object
Creates a SAML authentication request.
-
#saml_service_provider_metadata(arguments = {}) ⇒ Object
Generates SAML metadata for the Elastic stack SAML 2.0 Service Provider.
Instance Method Details
#authenticate(arguments = {}) ⇒ Object
Enables authentication as a user and retrieve information about the authenticated user.
29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/elasticsearch/xpack/api/actions/security/authenticate.rb', line 29 def authenticate(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_GET path = "_security/_authenticate" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#change_password(arguments = {}) ⇒ Object
Changes the passwords of users in the native realm and built-in users.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/elasticsearch/xpack/api/actions/security/change_password.rb', line 32 def change_password(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _username = arguments.delete(:username) method = Elasticsearch::API::HTTP_PUT path = if _username "_security/user/#{Elasticsearch::API::Utils.__listify(_username)}/_password" else "_security/user/_password" end params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#clear_api_key_cache(arguments = {}) ⇒ Object
Clear a subset or all entries from the API key cache.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/elasticsearch/xpack/api/actions/security/clear_api_key_cache.rb', line 30 def clear_api_key_cache(arguments = {}) raise ArgumentError, "Required argument 'ids' missing" unless arguments[:ids] headers = arguments.delete(:headers) || {} arguments = arguments.clone _ids = arguments.delete(:ids) method = Elasticsearch::API::HTTP_POST path = "_security/api_key/#{Elasticsearch::API::Utils.__listify(_ids)}/_clear_cache" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#clear_cached_privileges(arguments = {}) ⇒ Object
Evicts application privileges from the native application privileges cache.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/elasticsearch/xpack/api/actions/security/clear_cached_privileges.rb', line 30 def clear_cached_privileges(arguments = {}) raise ArgumentError, "Required argument 'application' missing" unless arguments[:application] headers = arguments.delete(:headers) || {} arguments = arguments.clone _application = arguments.delete(:application) method = Elasticsearch::API::HTTP_POST path = "_security/privilege/#{Elasticsearch::API::Utils.__listify(_application)}/_clear_cache" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#clear_cached_realms(arguments = {}) ⇒ Object
Evicts users from the user cache. Can completely clear the cache or evict specific users.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/elasticsearch/xpack/api/actions/security/clear_cached_realms.rb', line 31 def clear_cached_realms(arguments = {}) raise ArgumentError, "Required argument 'realms' missing" unless arguments[:realms] headers = arguments.delete(:headers) || {} arguments = arguments.clone _realms = arguments.delete(:realms) method = Elasticsearch::API::HTTP_POST path = "_security/realm/#{Elasticsearch::API::Utils.__listify(_realms)}/_clear_cache" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#clear_cached_roles(arguments = {}) ⇒ Object
Evicts roles from the native role cache.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/elasticsearch/xpack/api/actions/security/clear_cached_roles.rb', line 30 def clear_cached_roles(arguments = {}) raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_POST path = "_security/role/#{Elasticsearch::API::Utils.__listify(_name)}/_clear_cache" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#clear_cached_service_tokens(arguments = {}) ⇒ Object
Evicts tokens from the service account token caches.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/elasticsearch/xpack/api/actions/security/clear_cached_service_tokens.rb', line 32 def clear_cached_service_tokens(arguments = {}) raise ArgumentError, "Required argument 'namespace' missing" unless arguments[:namespace] raise ArgumentError, "Required argument 'service' missing" unless arguments[:service] raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _namespace = arguments.delete(:namespace) _service = arguments.delete(:service) _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_POST path = "_security/service/#{Elasticsearch::API::Utils.__listify(_namespace)}/#{Elasticsearch::API::Utils.__listify(_service)}/credential/token/#{Elasticsearch::API::Utils.__listify(_name)}/_clear_cache" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#create_api_key(arguments = {}) ⇒ Object
Creates an API key for access without requiring basic authentication.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/elasticsearch/xpack/api/actions/security/create_api_key.rb', line 31 def create_api_key(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_PUT path = "_security/api_key" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#create_service_token(arguments = {}) ⇒ Object
Creates a service account token for access without requiring basic authentication.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/elasticsearch/xpack/api/actions/security/create_service_token.rb', line 33 def create_service_token(arguments = {}) raise ArgumentError, "Required argument 'namespace' missing" unless arguments[:namespace] raise ArgumentError, "Required argument 'service' missing" unless arguments[:service] headers = arguments.delete(:headers) || {} arguments = arguments.clone _namespace = arguments.delete(:namespace) _service = arguments.delete(:service) _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_PUT path = if _namespace && _service && _name "_security/service/#{Elasticsearch::API::Utils.__listify(_namespace)}/#{Elasticsearch::API::Utils.__listify(_service)}/credential/token/#{Elasticsearch::API::Utils.__listify(_name)}" else "_security/service/#{Elasticsearch::API::Utils.__listify(_namespace)}/#{Elasticsearch::API::Utils.__listify(_service)}/credential/token" end params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#delete_privileges(arguments = {}) ⇒ Object
Removes application privileges.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/elasticsearch/xpack/api/actions/security/delete_privileges.rb', line 32 def delete_privileges(arguments = {}) raise ArgumentError, "Required argument 'application' missing" unless arguments[:application] raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _application = arguments.delete(:application) _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_DELETE path = "_security/privilege/#{Elasticsearch::API::Utils.__listify(_application)}/#{Elasticsearch::API::Utils.__listify(_name)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#delete_role(arguments = {}) ⇒ Object
Removes roles in the native realm.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/elasticsearch/xpack/api/actions/security/delete_role.rb', line 31 def delete_role(arguments = {}) raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_DELETE path = "_security/role/#{Elasticsearch::API::Utils.__listify(_name)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#delete_role_mapping(arguments = {}) ⇒ Object
Removes role mappings.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/elasticsearch/xpack/api/actions/security/delete_role_mapping.rb', line 31 def delete_role_mapping(arguments = {}) raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_DELETE path = "_security/role_mapping/#{Elasticsearch::API::Utils.__listify(_name)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#delete_service_token(arguments = {}) ⇒ Object
Deletes a service account token.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/elasticsearch/xpack/api/actions/security/delete_service_token.rb', line 33 def delete_service_token(arguments = {}) raise ArgumentError, "Required argument 'namespace' missing" unless arguments[:namespace] raise ArgumentError, "Required argument 'service' missing" unless arguments[:service] raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _namespace = arguments.delete(:namespace) _service = arguments.delete(:service) _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_DELETE path = "_security/service/#{Elasticsearch::API::Utils.__listify(_namespace)}/#{Elasticsearch::API::Utils.__listify(_service)}/credential/token/#{Elasticsearch::API::Utils.__listify(_name)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#delete_user(arguments = {}) ⇒ Object
Deletes users from the native realm.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/elasticsearch/xpack/api/actions/security/delete_user.rb', line 31 def delete_user(arguments = {}) raise ArgumentError, "Required argument 'username' missing" unless arguments[:username] headers = arguments.delete(:headers) || {} arguments = arguments.clone _username = arguments.delete(:username) method = Elasticsearch::API::HTTP_DELETE path = "_security/user/#{Elasticsearch::API::Utils.__listify(_username)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#disable_user(arguments = {}) ⇒ Object
Disables users in the native realm.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/elasticsearch/xpack/api/actions/security/disable_user.rb', line 31 def disable_user(arguments = {}) raise ArgumentError, "Required argument 'username' missing" unless arguments[:username] headers = arguments.delete(:headers) || {} arguments = arguments.clone _username = arguments.delete(:username) method = Elasticsearch::API::HTTP_PUT path = "_security/user/#{Elasticsearch::API::Utils.__listify(_username)}/_disable" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#enable_user(arguments = {}) ⇒ Object
Enables users in the native realm.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/elasticsearch/xpack/api/actions/security/enable_user.rb', line 31 def enable_user(arguments = {}) raise ArgumentError, "Required argument 'username' missing" unless arguments[:username] headers = arguments.delete(:headers) || {} arguments = arguments.clone _username = arguments.delete(:username) method = Elasticsearch::API::HTTP_PUT path = "_security/user/#{Elasticsearch::API::Utils.__listify(_username)}/_enable" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#enroll_kibana(arguments = {}) ⇒ Object
Allows a kibana instance to configure itself to communicate with a secured elasticsearch cluster.
29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/elasticsearch/xpack/api/actions/security/enroll_kibana.rb', line 29 def enroll_kibana(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_GET path = "_security/enroll/kibana" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#enroll_node(arguments = {}) ⇒ Object
Allows a new node to enroll to an existing cluster with security enabled.
29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/elasticsearch/xpack/api/actions/security/enroll_node.rb', line 29 def enroll_node(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_GET path = "_security/enroll/node" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_api_key(arguments = {}) ⇒ Object
Retrieves information for one or more API keys.
34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_api_key.rb', line 34 def get_api_key(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_GET path = "_security/api_key" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = nil perform_request(method, path, params, body, headers).body end |
#get_builtin_privileges(arguments = {}) ⇒ Object
Retrieves the list of cluster privileges and index privileges that are available in this version of Elasticsearch.
29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_builtin_privileges.rb', line 29 def get_builtin_privileges(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_GET path = "_security/privilege/_builtin" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_privileges(arguments = {}) ⇒ Object
Retrieves application privileges.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_privileges.rb', line 31 def get_privileges(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _application = arguments.delete(:application) _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_GET path = if _application && _name "_security/privilege/#{Elasticsearch::API::Utils.__listify(_application)}/#{Elasticsearch::API::Utils.__listify(_name)}" elsif _application "_security/privilege/#{Elasticsearch::API::Utils.__listify(_application)}" else "_security/privilege" end params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_role(arguments = {}) ⇒ Object
Retrieves roles in the native realm.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_role.rb', line 30 def get_role(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_GET path = if _name "_security/role/#{Elasticsearch::API::Utils.__listify(_name)}" else "_security/role" end params = {} body = nil if Array(arguments[:ignore]).include?(404) Elasticsearch::API::Utils.__rescue_from_not_found { perform_request(method, path, params, body, headers).body } else perform_request(method, path, params, body, headers).body end end |
#get_role_mapping(arguments = {}) ⇒ Object
Retrieves role mappings.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_role_mapping.rb', line 30 def get_role_mapping(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_GET path = if _name "_security/role_mapping/#{Elasticsearch::API::Utils.__listify(_name)}" else "_security/role_mapping" end params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_service_accounts(arguments = {}) ⇒ Object
Retrieves information about service accounts.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_service_accounts.rb', line 31 def get_service_accounts(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _namespace = arguments.delete(:namespace) _service = arguments.delete(:service) method = Elasticsearch::API::HTTP_GET path = if _namespace && _service "_security/service/#{Elasticsearch::API::Utils.__listify(_namespace)}/#{Elasticsearch::API::Utils.__listify(_service)}" elsif _namespace "_security/service/#{Elasticsearch::API::Utils.__listify(_namespace)}" else "_security/service" end params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_service_credentials(arguments = {}) ⇒ Object
Retrieves information of all service credentials for a service account.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_service_credentials.rb', line 31 def get_service_credentials(arguments = {}) raise ArgumentError, "Required argument 'namespace' missing" unless arguments[:namespace] raise ArgumentError, "Required argument 'service' missing" unless arguments[:service] headers = arguments.delete(:headers) || {} arguments = arguments.clone _namespace = arguments.delete(:namespace) _service = arguments.delete(:service) method = Elasticsearch::API::HTTP_GET path = "_security/service/#{Elasticsearch::API::Utils.__listify(_namespace)}/#{Elasticsearch::API::Utils.__listify(_service)}/credential" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#get_token(arguments = {}) ⇒ Object
Creates a bearer token for access without requiring basic authentication.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_token.rb', line 30 def get_token(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_POST path = "_security/oauth2/token" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#get_user(arguments = {}) ⇒ Object
Retrieves information about users in the native realm and built-in users.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_user.rb', line 30 def get_user(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone _username = arguments.delete(:username) method = Elasticsearch::API::HTTP_GET path = if _username "_security/user/#{Elasticsearch::API::Utils.__listify(_username)}" else "_security/user" end params = {} body = nil if Array(arguments[:ignore]).include?(404) Elasticsearch::API::Utils.__rescue_from_not_found { perform_request(method, path, params, body, headers).body } else perform_request(method, path, params, body, headers).body end end |
#get_user_privileges(arguments = {}) ⇒ Object
Retrieves security privileges for the logged in user.
29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/elasticsearch/xpack/api/actions/security/get_user_privileges.rb', line 29 def get_user_privileges(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_GET path = "_security/user/_privileges" params = {} body = nil perform_request(method, path, params, body, headers).body end |
#grant_api_key(arguments = {}) ⇒ Object
Creates an API key on behalf of another user.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/elasticsearch/xpack/api/actions/security/grant_api_key.rb', line 31 def grant_api_key(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_POST path = "_security/api_key/grant" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#has_privileges(arguments = {}) ⇒ Object
Determines whether the specified user has a specified list of privileges.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/elasticsearch/xpack/api/actions/security/has_privileges.rb', line 31 def has_privileges(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone _user = arguments.delete(:user) method = Elasticsearch::API::HTTP_POST path = if _user "_security/user/#{Elasticsearch::API::Utils.__listify(_user)}/_has_privileges" else "_security/user/_has_privileges" end params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#invalidate_api_key(arguments = {}) ⇒ Object
Invalidates one or more API keys.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/invalidate_api_key.rb', line 30 def invalidate_api_key(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_DELETE path = "_security/api_key" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#invalidate_token(arguments = {}) ⇒ Object
Invalidates one or more access tokens or refresh tokens.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/invalidate_token.rb', line 30 def invalidate_token(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_DELETE path = "_security/oauth2/token" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#put_privileges(arguments = {}) ⇒ Object
Adds or updates application privileges.
31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/elasticsearch/xpack/api/actions/security/put_privileges.rb', line 31 def put_privileges(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_PUT path = "_security/privilege" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#put_role(arguments = {}) ⇒ Object
Adds and updates roles in the native realm.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/elasticsearch/xpack/api/actions/security/put_role.rb', line 32 def put_role(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_PUT path = "_security/role/#{Elasticsearch::API::Utils.__listify(_name)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#put_role_mapping(arguments = {}) ⇒ Object
Creates and updates role mappings.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/elasticsearch/xpack/api/actions/security/put_role_mapping.rb', line 32 def put_role_mapping(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'name' missing" unless arguments[:name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _name = arguments.delete(:name) method = Elasticsearch::API::HTTP_PUT path = "_security/role_mapping/#{Elasticsearch::API::Utils.__listify(_name)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#put_user(arguments = {}) ⇒ Object
Adds and updates users in the native realm. These users are commonly referred to as native users.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/elasticsearch/xpack/api/actions/security/put_user.rb', line 32 def put_user(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] raise ArgumentError, "Required argument 'username' missing" unless arguments[:username] headers = arguments.delete(:headers) || {} arguments = arguments.clone _username = arguments.delete(:username) method = Elasticsearch::API::HTTP_PUT path = "_security/user/#{Elasticsearch::API::Utils.__listify(_username)}" params = Elasticsearch::API::Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__) body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#query_api_keys(arguments = {}) ⇒ Object
Retrieves information for API keys using a subset of query DSL
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/elasticsearch/xpack/api/actions/security/query_api_keys.rb', line 30 def query_api_keys(arguments = {}) headers = arguments.delete(:headers) || {} arguments = arguments.clone method = if arguments[:body] Elasticsearch::API::HTTP_POST else Elasticsearch::API::HTTP_GET end path = "_security/_query/api_key" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#saml_authenticate(arguments = {}) ⇒ Object
Exchanges a SAML Response message for an Elasticsearch access token and refresh token pair
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/saml_authenticate.rb', line 30 def saml_authenticate(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_POST path = "_security/saml/authenticate" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#saml_complete_logout(arguments = {}) ⇒ Object
Verifies the logout response sent from the SAML IdP
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/saml_complete_logout.rb', line 30 def saml_complete_logout(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_POST path = "_security/saml/complete_logout" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#saml_invalidate(arguments = {}) ⇒ Object
Consumes a SAML LogoutRequest
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/saml_invalidate.rb', line 30 def saml_invalidate(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_POST path = "_security/saml/invalidate" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#saml_logout(arguments = {}) ⇒ Object
Invalidates an access token and a refresh token that were generated via the SAML Authenticate API
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/saml_logout.rb', line 30 def saml_logout(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_POST path = "_security/saml/logout" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#saml_prepare_authentication(arguments = {}) ⇒ Object
Creates a SAML authentication request
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/elasticsearch/xpack/api/actions/security/saml_prepare_authentication.rb', line 30 def saml_prepare_authentication(arguments = {}) raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] headers = arguments.delete(:headers) || {} arguments = arguments.clone method = Elasticsearch::API::HTTP_POST path = "_security/saml/prepare" params = {} body = arguments[:body] perform_request(method, path, params, body, headers).body end |
#saml_service_provider_metadata(arguments = {}) ⇒ Object
Generates SAML metadata for the Elastic stack SAML 2.0 Service Provider
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/elasticsearch/xpack/api/actions/security/saml_service_provider_metadata.rb', line 30 def (arguments = {}) raise ArgumentError, "Required argument 'realm_name' missing" unless arguments[:realm_name] headers = arguments.delete(:headers) || {} arguments = arguments.clone _realm_name = arguments.delete(:realm_name) method = Elasticsearch::API::HTTP_GET path = "_security/saml/metadata/#{Elasticsearch::API::Utils.__listify(_realm_name)}" params = {} body = nil perform_request(method, path, params, body, headers).body end |