-
Notifications
You must be signed in to change notification settings - Fork 24.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[DOCS] Splits the users API documentation into multiple pages (#32825)
- Loading branch information
Showing
15 changed files
with
375 additions
and
239 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
[role="xpack"] | ||
[[security-api-put-user]] | ||
=== Create users API | ||
|
||
Creates and updates users in the native realm. These users are commonly referred | ||
to as _native users_. | ||
|
||
|
||
==== Request | ||
|
||
`POST /_xpack/security/user/<username>` + | ||
|
||
`PUT /_xpack/security/user/<username>` | ||
|
||
|
||
==== Description | ||
|
||
When updating a user, you can update everything but its `username` and `password`. | ||
To change a user's password, use the | ||
<<security-api-change-password, change password API>>. | ||
|
||
For more information about the native realm, see | ||
{stack-ov}/realms.html[Realms] and <<configuring-native-realm>>. | ||
|
||
==== Path Parameters | ||
|
||
`username` (required):: | ||
(string) An identifier for the user. | ||
+ | ||
-- | ||
[[username-validation]] | ||
NOTE: Usernames must be at least 1 and no more than 1024 characters. They can | ||
contain alphanumeric characters (`a-z`, `A-Z`, `0-9`), spaces, punctuation, and | ||
printable symbols in the https://en.wikipedia.org/wiki/Basic_Latin_(Unicode_block)[Basic Latin (ASCII) block]. Leading or trailing whitespace is not allowed. | ||
|
||
-- | ||
|
||
|
||
==== Request Body | ||
|
||
The following parameters can be specified in the body of a POST or PUT request: | ||
|
||
`enabled`:: | ||
(boolean) Specifies whether the user is enabled. The default value is `true`. | ||
|
||
`email`:: | ||
(string) The email of the user. | ||
|
||
`full_name`:: | ||
(string) The full name of the user. | ||
|
||
`metadata`:: | ||
(object) Arbitrary metadata that you want to associate with the user. | ||
|
||
`password` (required):: | ||
(string) The user's password. Passwords must be at least 6 characters long. | ||
|
||
`roles` (required):: | ||
(list) A set of roles the user has. The roles determine the user's access | ||
permissions. To create a user without any roles, specify an empty list: `[]`. | ||
|
||
|
||
==== Authorization | ||
|
||
To use this API, you must have at least the `manage_security` cluster privilege. | ||
|
||
|
||
==== Examples | ||
|
||
The following example creates a user `jacknich`: | ||
|
||
[source,js] | ||
-------------------------------------------------- | ||
POST /_xpack/security/user/jacknich | ||
{ | ||
"password" : "j@rV1s", | ||
"roles" : [ "admin", "other_role1" ], | ||
"full_name" : "Jack Nicholson", | ||
"email" : "jacknich@example.com", | ||
"metadata" : { | ||
"intelligence" : 7 | ||
} | ||
} | ||
-------------------------------------------------- | ||
// CONSOLE | ||
|
||
A successful call returns a JSON structure that shows whether the user has been | ||
created or updated. | ||
|
||
[source,js] | ||
-------------------------------------------------- | ||
{ | ||
"user": { | ||
"created" : true <1> | ||
} | ||
} | ||
-------------------------------------------------- | ||
// TESTRESPONSE | ||
<1> When an existing user is updated, `created` is set to false. | ||
|
||
After you add a user, requests from that user can be authenticated. For example: | ||
|
||
[source,shell] | ||
-------------------------------------------------- | ||
curl -u jacknich:j@rV1s http://localhost:9200/_cluster/health | ||
-------------------------------------------------- | ||
// NOTCONSOLE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
[role="xpack"] | ||
[[security-api-delete-user]] | ||
=== Delete users API | ||
|
||
Deletes users from the native realm. | ||
|
||
==== Request | ||
|
||
`DELETE /_xpack/security/user/<username>` | ||
|
||
==== Description | ||
|
||
For more information about the native realm, see | ||
{stack-ov}/realms.html[Realms] and <<configuring-native-realm>>. | ||
|
||
==== Path Parameters | ||
|
||
`username` (required):: | ||
(string) An identifier for the user. | ||
|
||
//==== Request Body | ||
|
||
==== Authorization | ||
|
||
To use this API, you must have at least the `manage_security` cluster privilege. | ||
|
||
|
||
==== Examples | ||
|
||
The following example deletes the user `jacknich`: | ||
|
||
[source,js] | ||
-------------------------------------------------- | ||
DELETE /_xpack/security/user/jacknich | ||
-------------------------------------------------- | ||
// CONSOLE | ||
// TEST[setup:jacknich_user] | ||
|
||
If the user is successfully deleted, the request returns `{"found": true}`. | ||
Otherwise, `found` is set to false. | ||
|
||
[source,js] | ||
-------------------------------------------------- | ||
{ | ||
"found" : true | ||
} | ||
-------------------------------------------------- | ||
// TESTRESPONSE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
[role="xpack"] | ||
[[security-api-disable-user]] | ||
=== Disable users API | ||
|
||
Disables users in the native realm. | ||
|
||
|
||
==== Request | ||
|
||
`PUT /_xpack/security/user/<username>/_disable` | ||
|
||
|
||
==== Description | ||
|
||
By default, when you create users, they are enabled. You can use this API to | ||
revoke a user's access to {es}. To re-enable a user, there is an | ||
<<security-api-enable-user,enable users API>>. | ||
|
||
For more information about the native realm, see | ||
{stack-ov}/realms.html[Realms] and <<configuring-native-realm>>. | ||
|
||
==== Path Parameters | ||
|
||
`username` (required):: | ||
(string) An identifier for the user. | ||
|
||
//==== Request Body | ||
|
||
==== Authorization | ||
|
||
To use this API, you must have at least the `manage_security` cluster privilege. | ||
|
||
|
||
==== Examples | ||
|
||
The following example disables the user `jacknich`: | ||
|
||
[source,js] | ||
-------------------------------------------------- | ||
PUT /_xpack/security/user/jacknich/_disable | ||
-------------------------------------------------- | ||
// CONSOLE | ||
// TEST[setup:jacknich_user] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
[role="xpack"] | ||
[[security-api-enable-user]] | ||
=== Enable users API | ||
|
||
Enables users in the native realm. | ||
|
||
|
||
==== Request | ||
|
||
`PUT /_xpack/security/user/<username>/_enable` | ||
|
||
|
||
==== Description | ||
|
||
By default, when you create users, they are enabled. You can use this enable | ||
users API and the <<security-api-disable-user,disable users API>> to change that attribute. | ||
|
||
For more information about the native realm, see | ||
{stack-ov}/realms.html[Realms] and <<configuring-native-realm>>. | ||
|
||
==== Path Parameters | ||
|
||
`username` (required):: | ||
(string) An identifier for the user. | ||
|
||
//==== Request Body | ||
|
||
==== Authorization | ||
|
||
To use this API, you must have at least the `manage_security` cluster privilege. | ||
|
||
|
||
==== Examples | ||
|
||
The following example enables the user `jacknich`: | ||
|
||
[source,js] | ||
-------------------------------------------------- | ||
PUT /_xpack/security/user/jacknich/_enable | ||
-------------------------------------------------- | ||
// CONSOLE | ||
// TEST[setup:jacknich_user] |
Oops, something went wrong.