Skip to content

Commit fb93809

Browse files
committed
Add security API examples (#3490)
(cherry picked from commit f393c66)
1 parent e5658d2 commit fb93809

File tree

154 files changed

+2705
-115
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

154 files changed

+2705
-115
lines changed

output/openapi/elasticsearch-openapi.json

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

output/schema/schema.json

Lines changed: 278 additions & 113 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

specification/_doc_ids/table.csv

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -596,6 +596,7 @@ searchable-snapshots-api-stats,https://www.elastic.co/guide/en/elasticsearch/ref
596596
searchable-snapshots-apis,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/searchable-snapshots-apis.html
597597
search-templates,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/search-template.html
598598
secure-settings,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/secure-settings.html
599+
security-api-activate-user-profile,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-activate-user-profile.html
599600
security-api-authenticate,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-authenticate.html
600601
security-api-bulk-update-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-bulk-update-api-keys.html
601602
security-api-change-password,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-change-password.html
@@ -606,14 +607,17 @@ security-api-clear-role-cache,https://www.elastic.co/guide/en/elasticsearch/refe
606607
security-api-clear-service-token-caches,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-clear-service-token-caches.html
607608
security-api-create-api-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-create-api-key.html
608609
security-api-create-service-token,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-create-service-token.html
610+
security-api-cross-cluster-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-create-cross-cluster-api-key.html
609611
security-api-delegate-pki,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-delegate-pki-authentication.html
610612
security-api-delete-privilege,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-delete-privilege.html
611613
security-api-delete-role-mapping,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-delete-role-mapping.html
612614
security-api-delete-role,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-delete-role.html
613615
security-api-delete-service-token,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-delete-service-token.html
614616
security-api-delete-user,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-delete-user.html
615617
security-api-disable-user,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-disable-user.html
618+
security-api-disable-user-profile,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-disable-user-profile.html
616619
security-api-enable-user,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-enable-user.html
620+
security-api-enable-user-profile,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-enable-user-profile.html
617621
security-api-get-api-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-api-key.html
618622
security-api-get-builtin-privileges,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-builtin-privileges.html
619623
security-api-get-privileges,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-privileges.html
@@ -624,9 +628,11 @@ security-api-get-service-credentials,https://www.elastic.co/guide/en/elasticsear
624628
security-api-get-settings,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-settings.html
625629
security-api-get-token,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-token.html
626630
security-api-get-user-privileges,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-user-privileges.html
631+
security-api-get-user-profile,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-user-profile.html
627632
security-api-get-user,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-get-user.html
628633
security-api-grant-api-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-grant-api-key.html
629634
security-api-has-privileges,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-has-privileges.html
635+
security-api-has-privileges-profile,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-has-privileges-user-profile.html
630636
security-api-invalidate-api-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-invalidate-api-key.html
631637
security-api-invalidate-token,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-invalidate-token.html
632638
security-api-kibana-enrollment,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-kibana-enrollment.html
@@ -639,15 +645,22 @@ security-api-put-role-mapping,https://www.elastic.co/guide/en/elasticsearch/refe
639645
security-api-put-role,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-put-role.html
640646
security-api-put-user,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-put-user.html
641647
security-api-query-api-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-query-api-key.html
648+
security-api-query-role,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-query-role.html
649+
security-api-query-user,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-query-user.html
642650
security-api-saml-authenticate,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-saml-authenticate.html
643651
security-api-saml-complete-logout,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-saml-complete-logout.html
644652
security-api-saml-invalidate,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-saml-invalidate.html
645653
security-api-saml-logout,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-saml-logout.html
646654
security-api-saml-prepare-authentication,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-saml-prepare-authentication.html
647655
security-api-saml-sp-metadata,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-saml-sp-metadata.html
648656
security-api-ssl,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-ssl.html
657+
security-api-suggest,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-suggest-user-profile.html
658+
security-api-cross-cluster-key-update,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-update-cross-cluster-api-key.html
659+
security-api-update-key,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-update-api-key.html
660+
security-api-update-user-data,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-update-user-profile-data.html
649661
security-privileges,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-privileges.html
650662
security-api-update-settings,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-api-update-settings.html
663+
security-encrypt-internode,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/security-basic-setup.html#encrypt-internode-communication
651664
service-accounts,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/service-accounts.html
652665
set-processor,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/set-processor.html
653666
shape,https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/shape.html

specification/security/activate_user_profile/Request.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import { RequestBase } from '@_types/Base'
2828
* @availability stack since=8.2.0 stability=stable
2929
* @availability serverless stability=stable visibility=private
3030
* @cluster_privileges manage_user_profile
31+
* @doc_id security-api-activate-user-profile
3132
*/
3233
export interface Request extends RequestBase {
3334
body: {
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# summary:
2+
# method_request: POST /_security/user/jacknich
3+
description: >
4+
Run `POST /_security/user/jacknich` to create a user.
5+
# type: request
6+
value: |-
7+
{
8+
"password" : "l0ng-r4nd0m-p@ssw0rd",
9+
"roles" : [ "admin", "other_role1" ],
10+
"full_name" : "Jack Nicholson",
11+
"email" : "jacknich@example.com",
12+
"metadata" : {
13+
"intelligence" : 7
14+
}
15+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# summary:
2+
description: A successful response from `POST /_security/profile/_activate`.
3+
# type: response
4+
# response_code:
5+
value: |-
6+
{
7+
"uid": "u_79HkWkwmnBH5gqFKwoxggWPjEBOur1zLPXQPEl1VBW0_0",
8+
"enabled": true,
9+
"last_synchronized": 1642650651037,
10+
"user": {
11+
"username": "jacknich",
12+
"roles": [
13+
"admin", "other_role1"
14+
],
15+
"realm_name": "native",
16+
"full_name": "Jack Nicholson",
17+
"email": "jacknich@example.com"
18+
},
19+
"labels": {},
20+
"data": {},
21+
"_doc": {
22+
"_primary_term": 88,
23+
"_seq_no": 66
24+
}
25+
}

specification/security/authenticate/SecurityAuthenticateRequest.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,6 @@ import { RequestBase } from '@_types/Base'
2929
* @rest_spec_name security.authenticate
3030
* @availability stack since=5.5.0 stability=stable
3131
* @availability serverless stability=stable visibility=public
32+
* @doc_id security-api-authenticate
3233
*/
3334
export interface Request extends RequestBase {}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# summary:
2+
description: A successful response from `GET /_security/_authenticate`.
3+
# type: response
4+
# response_code: 200
5+
value: |-
6+
{
7+
"username": "rdeniro",
8+
"roles": [
9+
"admin"
10+
],
11+
"full_name": null,
12+
"email": null,
13+
"metadata": { },
14+
"enabled": true,
15+
"authentication_realm": {
16+
"name" : "file",
17+
"type" : "file"
18+
},
19+
"lookup_realm": {
20+
"name" : "file",
21+
"type" : "file"
22+
},
23+
"authentication_type": "realm"
24+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
summary: Bulk delete example 1
2+
# method_request: DELETE /_security/role
3+
description: >
4+
Run DELETE /_security/role` to delete `my_admin_role` and `my_user_role` roles.
5+
# type: request
6+
value: |-
7+
{
8+
"names": ["my_admin_role", "my_user_role"]
9+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
summary: A successful response
2+
description: A successful response from `DELETE /_security/role`.
3+
# type: response
4+
# response_code:
5+
value: |-
6+
{
7+
"deleted": [
8+
"my_admin_role",
9+
"my_user_role"
10+
]
11+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
summary: A response with not_found roles
2+
description: >
3+
A partially successful response from `DELETE /_security/role`.
4+
If a role cannot be found, it appears in the `not_found` list in the response.
5+
# type: response
6+
# response_code:
7+
value: |-
8+
{
9+
"deleted": [
10+
"my_admin_role"
11+
],
12+
"not_found": [
13+
"not_an_existing_role"
14+
]
15+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
summary: A response with errors
2+
description: >
3+
A partially successful response from `DELETE /_security/role`.
4+
If part of a request fails or is invalid, the response includes `errors`.
5+
# type: response
6+
# response_code:
7+
value: |-
8+
{
9+
"deleted": [
10+
"my_admin_role"
11+
],
12+
"errors": {
13+
"count": 1,
14+
"details": {
15+
"superuser": {
16+
"type": "illegal_argument_exception",
17+
"reason": "role [superuser] is reserved and cannot be deleted"
18+
}
19+
}
20+
}
21+
}
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
summary: Bulk role success
2+
# method_request: POST /_security/role
3+
description: >
4+
Run `POST /_security/role` to add roles called `my_admin_role` and `my_user_role`.
5+
# type: request
6+
value: |-
7+
{
8+
"roles": {
9+
"my_admin_role": {
10+
"cluster": [
11+
"all"
12+
],
13+
"indices": [
14+
{
15+
"names": [
16+
"index1",
17+
"index2"
18+
],
19+
"privileges": [
20+
"all"
21+
],
22+
"field_security": {
23+
"grant": [
24+
"title",
25+
"body"
26+
]
27+
},
28+
"query": "{\"match\": {\"title\": \"foo\"}}"
29+
}
30+
],
31+
"applications": [
32+
{
33+
"application": "myapp",
34+
"privileges": [
35+
"admin",
36+
"read"
37+
],
38+
"resources": [
39+
"*"
40+
]
41+
}
42+
],
43+
"run_as": [
44+
"other_user"
45+
],
46+
"metadata": {
47+
"version": 1
48+
}
49+
},
50+
"my_user_role": {
51+
"cluster": [
52+
"all"
53+
],
54+
"indices": [
55+
{
56+
"names": [
57+
"index1"
58+
],
59+
"privileges": [
60+
"read"
61+
],
62+
"field_security": {
63+
"grant": [
64+
"title",
65+
"body"
66+
]
67+
},
68+
"query": "{\"match\": {\"title\": \"foo\"}}"
69+
}
70+
],
71+
"applications": [
72+
{
73+
"application": "myapp",
74+
"privileges": [
75+
"admin",
76+
"read"
77+
],
78+
"resources": [
79+
"*"
80+
]
81+
}
82+
],
83+
"run_as": [
84+
"other_user"
85+
],
86+
"metadata": {
87+
"version": 1
88+
}
89+
}
90+
}
91+
}

0 commit comments

Comments
 (0)