Skip to content

Commit 4e87fce

Browse files
authored
Users and roles: Overviews, cloud org, project custom roles (#340)
1 parent a7aa31e commit 4e87fce

27 files changed

+641
-533
lines changed

deploy-manage/toc.yml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -594,6 +594,14 @@ toc:
594594
- file: security/fips-140-2.md
595595
- file: users-roles.md
596596
children:
597+
- file: users-roles/cloud-organization.md
598+
children:
599+
- file: users-roles/cloud-organization/manage-users.md
600+
- file: users-roles/cloud-organization/user-roles.md
601+
- file: users-roles/cloud-organization/configure-saml-authentication.md
602+
children:
603+
- file: users-roles/cloud-organization/register-elastic-cloud-saml-in-okta.md
604+
- file: users-roles/cloud-organization/register-elastic-cloud-saml-in-microsoft-entra-id.md
597605
- file: users-roles/cloud-enterprise-orchestrator.md
598606
children:
599607
- file: users-roles/cloud-enterprise-orchestrator/manage-system-passwords.md
@@ -604,14 +612,7 @@ toc:
604612
- file: users-roles/cloud-enterprise-orchestrator/ldap.md
605613
- file: users-roles/cloud-enterprise-orchestrator/saml.md
606614
- file: users-roles/cloud-enterprise-orchestrator/configure-sso-for-deployments.md
607-
- file: users-roles/cloud-organization.md
608-
children:
609-
- file: users-roles/cloud-organization/manage-users.md
610-
- file: users-roles/cloud-organization/user-roles.md
611-
- file: users-roles/cloud-organization/configure-saml-authentication.md
612-
children:
613-
- file: users-roles/cloud-organization/register-elastic-cloud-saml-in-okta.md
614-
- file: users-roles/cloud-organization/register-elastic-cloud-saml-in-microsoft-entra-id.md
615+
- file: users-roles/custom-roles.md
615616
- file: users-roles/cluster-or-deployment-auth.md
616617
children:
617618
- file: users-roles/cluster-or-deployment-auth/quickstart.md

deploy-manage/users-roles.md

Lines changed: 118 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,129 @@
11
---
2-
navigation_title: "Access"
2+
navigation_title: "Users and roles"
33
mapped_pages:
44
- https://www.elastic.co/guide/en/serverless/current/project-settings-access.html
5+
applies:
6+
serverless: all
7+
hosted: all
8+
ece: all
9+
eck: all
10+
stack: all
511
---
612

13+
# Manage users and roles
714

15+
To prevent unauthorized access to your Elastic resources, you need a way to identify users and validate that a user is who they claim to be (*authentication*), and control what data users can access and what tasks they can perform (*authorization*).
816

9-
# Manage users and roles [project-settings-access]
17+
The methods that you use to authenticate users and control access depends on the way Elastic is deployed.
1018

19+
::::{note}
20+
Preventing unauthorized access is only one element of a complete security strategy. To secure your Elastic environment, you can also do the following:
21+
22+
* Restrict the nodes and clients that can connect to the cluster using [traffic filters](/deploy-manage/security/traffic-filtering.md).
23+
* Take steps to maintain your data integrity and confidentiality by [encrypting HTTP and inter-node communications](/deploy-manage/security/secure-endpoints.md), as well as [encrypting your data at rest](/deploy-manage/security/encrypt-deployment.md).
24+
* Maintain an [audit trail](/deploy-manage/monitor/logging-configuration/security-event-audit-logging.md) for security-related events.
25+
* Control access to dashboards and other saved objects in your UI using [{{kib}} spaces](/deploy-manage/manage-spaces.md).
26+
* Connect your cluster to a [remote cluster](/deploy-manage/remote-clusters.md) to enable cross-cluster replication and search.
27+
* Manage [API keys](/deploy-manage/api-keys.md) used for programmatic access to Elastic.
28+
::::
1129

12-
Go to **Project settings**, then ** Management** to manage your indices, data views, saved objects, settings, and more. You can also open Management by using the [global search field](../explore-analyze/find-and-organize/find-apps-and-objects.md).
30+
## Cloud organization level
1331

14-
Access to individual features is governed by Elastic user roles. Consult your administrator if you do not have the appropriate access. To learn more about roles, refer to [Assign user roles and privileges](users-roles/cloud-organization/manage-users.md#general-assign-user-roles).
32+
:::{applies}
33+
:hosted: all
34+
:serverless: all
35+
:::
1536

16-
| Feature | Description | Available in |
17-
| --- | --- | --- |
18-
| [Organization members](api-keys/serverless-project-api-keys.md) | Invite and manage your team’s access to your organization. | [![Elasticsearch](../images/serverless-es-badge.svg "")](../solutions/search.md)[![Observability](../images/serverless-obs-badge.svg "")](../solutions/observability.md)[![Security](../images/serverless-sec-badge.svg "")](../solutions/security/elastic-security-serverless.md) |
19-
| [Project API keys](api-keys/serverless-project-api-keys.md) | Create and manage keys that can interact with your project’s data. | [![Elasticsearch](../images/serverless-es-badge.svg "")](../solutions/search.md)[![Observability](../images/serverless-obs-badge.svg "")](../solutions/observability.md)[![Security](../images/serverless-sec-badge.svg "")](../solutions/security/elastic-security-serverless.md) |
20-
| [Custom roles](users-roles/cloud-organization/user-roles.md) | Create and manage custom roles for your users. | [![Elasticsearch](../images/serverless-es-badge.svg "")](../solutions/search.md)[![Security](../images/serverless-sec-badge.svg "")](../solutions/security/elastic-security-serverless.md) |
37+
If you’re using {{ecloud}}, then you can perform the following tasks to control access to your Cloud organization, your Cloud Hosted deployments, and your Cloud Serverless projects:
38+
39+
* [Invite users to join your organization](/deploy-manage/users-roles/cloud-organization/manage-users.md)
40+
* Assign [user roles and privileges](/deploy-manage/users-roles/cloud-organization/user-roles.md):
41+
* Manage organization-level roles and high-level access to deployments and projects.
42+
* Assign project-level roles and [create custom roles](/deploy-manage/users-roles/custom-roles.md). ({{serverless-short}} only)
43+
* Configure [SAML single sign-on](/deploy-manage/users-roles/cloud-organization/configure-saml-authentication.md) for your organization
44+
45+
::::{tip}
46+
For {{ech}} deployments, you can configure SSO at the organization level, the deployment level, or both. Refer to [Cloud organization users](/deploy-manage/users-roles/cloud-organization.md#organization-deployment-sso) for more information.
47+
::::
48+
49+
{{ech}} deployments can also use [cluster-level authentication and authorization](/deploy-manage/users-roles/cluster-or-deployment-auth.md). Cluster-level auth features are not available for {{serverless-full}}.
50+
51+
## Orchestrator level
52+
53+
:::{applies}
54+
:ece: all
55+
:::
56+
57+
Control access to your {{ece}} [orchestrator](/deploy-manage/deploy/cloud-enterprise/deploy-an-orchestrator.md) and deployments.
58+
59+
* [Manage passwords for default users](/deploy-manage/users-roles/cloud-enterprise-orchestrator/manage-system-passwords.md)
60+
* [Manage orchestrator users and roles](/deploy-manage/users-roles/cloud-enterprise-orchestrator/manage-users-roles.md):
61+
* [Using native users](/deploy-manage/users-roles/cloud-enterprise-orchestrator/native-user-authentication.md)
62+
* By integrating with external authentication providers:
63+
* [Active Directory](/deploy-manage/users-roles/cloud-enterprise-orchestrator/active-directory.md)
64+
* [LDAP](/deploy-manage/users-roles/cloud-enterprise-orchestrator/ldap.md)
65+
* [SAML](/deploy-manage/users-roles/cloud-enterprise-orchestrator/saml.md)
66+
* [Configure single sign-on to deployments](/deploy-manage/users-roles/cloud-enterprise-orchestrator/configure-sso-for-deployments.md) for orchestrator users
67+
68+
::::{tip}
69+
For {{ece}} deployments, you can configure SSO at the orchestrator level, the deployment level, or both.
70+
::::
71+
72+
{{ece}} deployments can also use [cluster-level authentication and authorization](/deploy-manage/users-roles/cluster-or-deployment-auth.md).
73+
74+
:::{note}
75+
You can't manage users and roles for {{eck}} clusters at the orchestrator level. {{eck}} deployments use cluster-level authentication and authorization only.
76+
:::
77+
78+
## Project level
79+
80+
:::{applies}
81+
:serverless: all
82+
:::
83+
84+
As an extension of the [predefined instance access roles](/deploy-manage/users-roles/cloud-organization/user-roles.md#ec_instance_access_roles) offered for {{serverless-short}} projects, you can create custom roles at the project level to provide more granular control, and provide users with only the access they need within specific projects.
85+
86+
[Learn more about custom roles for {{serverless-full}} projects](/deploy-manage/users-roles/custom-roles.md).
87+
88+
## Cluster or deployment level
89+
90+
:::{applies}
91+
:ece: all
92+
:hosted: all
93+
:eck: all
94+
:stack: all
95+
:::
96+
97+
Set up authentication and authorization at the cluster or deployment level, and learn about the underlying security technologies that Elasticsearch uses to authenticate and authorize requests internally and across services.
98+
99+
### User authentication
100+
101+
Set up methods to identify users to the Elasticsearch cluster.
102+
103+
Key tasks for managing user authentication include:
104+
105+
* [Managing default users](/deploy-manage/users-roles/cluster-or-deployment-auth/built-in-users.md)
106+
* [Managing users natively](/deploy-manage/users-roles/cluster-or-deployment-auth/native.md)
107+
* [Integrating with external authentication providers](/deploy-manage/users-roles/cluster-or-deployment-auth/external-authentication.md)
108+
109+
You can also learn the basics of Elasticsearch authentication, learn about accounts used to communicate within an Elasticsearch cluster and across services, and perform advanced tasks.
110+
111+
[View all user authentication docs](/deploy-manage/users-roles/cluster-or-deployment-auth/user-authentication.md)
112+
113+
### User authorization
114+
115+
After a user is authenticated, use role-based access control to determine whether the user behind an incoming request is allowed to execute the request.
116+
117+
Key tasks for managing user authorization include:
118+
119+
* Assigning [built-in roles](/deploy-manage/users-roles/cluster-or-deployment-auth/built-in-roles.md) or [defining your own](/deploy-manage/users-roles/cluster-or-deployment-auth/defining-roles.md)
120+
* [Mapping users and groups to roles](/deploy-manage/users-roles/cluster-or-deployment-auth/mapping-users-groups-to-roles.md)
121+
* [Setting up field- and document-level security](/deploy-manage/users-roles/cluster-or-deployment-auth/controlling-access-at-document-field-level.md)
122+
123+
You can also learn the basics of Elasticsearch authorization, and perform advanced tasks.
124+
125+
::::{tip}
126+
User roles are also used to control access to [{{kib}} spaces](/deploy-manage/manage-spaces.md).
127+
::::
128+
129+
[View all user authorization docs](/deploy-manage/users-roles/cluster-or-deployment-auth/user-roles.md)
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
For {{ech}} deployments, you can configure SSO at the [organization level](/deploy-manage/users-roles/cloud-organization/configure-saml-authentication.md), the [deployment level](/deploy-manage/users-roles/cluster-or-deployment-auth.md), or both.
2+
3+
The option that you choose depends on your requirements:
4+
5+
| Consideration | Organization-level | Deployment-level |
6+
| --- | --- | --- |
7+
| **Management experience** | Manage authentication and role mapping centrally for all deployments in the organization | Configure SSO for each deployment individually |
8+
| **Authentication protocols** | SAML only | Multiple protocols, including LDAP, OIDC, and SAML |
9+
| **Role mapping** | [Organization-level roles and instance access roles](../../../deploy-manage/users-roles/cloud-organization/user-roles.md), Serverless project [custom roles](https://docs.elastic.co/serverless/custom-roles.md) | [Built-in](../../../deploy-manage/users-roles/cluster-or-deployment-auth/built-in-roles.md) and [custom](../../../deploy-manage/users-roles/cluster-or-deployment-auth/defining-roles.md) stack-level roles |
10+
| **User experience** | Users interact with Cloud | Users interact with the deployment directly |
11+
12+
If you want to avoid exposing users to the {{ecloud}} Console, or have users who only interact with some deployments, then you might prefer users to interact with your deployment directly.
13+
14+
In some circumstances, you might want to use both organization-level and deployment-level SSO. For example, if you have a data analyst who interacts only with data in specific deployments, then you might want to configure deployment-level SSO for them. If you manage multiple tenants in a single organization, then you might want to configure organization-level SSO to administer deployments, and deployment-level SSO for the users who are using each deployment.
Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,24 @@
1+
---
2+
navigation_title: "ECE orchestrator"
3+
applies:
4+
ece: all
5+
---
6+
17
# Elastic Cloud Enterprise orchestrator users
28

3-
% What needs to be done: Write from scratch
9+
Control access to your {{ece}} [orchestrator](/deploy-manage/deploy/cloud-enterprise/deploy-an-orchestrator.md) and deployments.
10+
11+
* [Manage passwords for default users](/deploy-manage/users-roles/cloud-enterprise-orchestrator/manage-system-passwords.md)
12+
* [Manage orchestrator users and roles](/deploy-manage/users-roles/cloud-enterprise-orchestrator/manage-users-roles.md):
13+
* [Using native users](/deploy-manage/users-roles/cloud-enterprise-orchestrator/native-user-authentication.md)
14+
* By integrating with external authentication providers:
15+
* [Active Directory](/deploy-manage/users-roles/cloud-enterprise-orchestrator/active-directory.md)
16+
* [LDAP](/deploy-manage/users-roles/cloud-enterprise-orchestrator/ldap.md)
17+
* [SAML](/deploy-manage/users-roles/cloud-enterprise-orchestrator/saml.md)
18+
* [Configure single sign-on to deployments](/deploy-manage/users-roles/cloud-enterprise-orchestrator/configure-sso-for-deployments.md) for orchestrator users
419

5-
% GitHub issue: https://github.com/elastic/docs-projects/issues/347
20+
::::{tip}
21+
For {{ece}} deployments, you can configure SSO at the orchestrator level, the deployment level, or both.
22+
::::
623

7-
⚠️ **This page is a work in progress.** ⚠️
24+
{{ece}} deployments can also use [cluster-level authentication and authorization](/deploy-manage/users-roles/cluster-or-deployment-auth.md).

deploy-manage/users-roles/cloud-enterprise-orchestrator/manage-system-passwords.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,5 +50,5 @@ To reset the password for the `admin` user if no secrets file exists:
5050
bash elastic-cloud-enterprise.sh reset-adminconsole-password
5151
```
5252

53-
For additional usage examples, check [`elastic-cloud-enterprise.sh reset-adminconsole-password` Reference](https://www.elastic.co/guide/en/cloud-enterprise/current/ece-installation-script-reset.html).
53+
For additional usage examples, check [`elastic-cloud-enterprise.sh reset-adminconsole-password` Reference](https://www.elastic.co/guide/en/cloud-enterprise/current/ece-installation-script-reset.md).
5454

deploy-manage/users-roles/cloud-enterprise-orchestrator/manage-users-roles.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,14 @@ Implementing RBAC in your environment benefits you in several ways:
2323

2424

2525
::::{important}
26-
With RBAC, interacting with API endpoints now requires a [bearer token](https://www.elastic.co/guide/en/cloud-enterprise/current/ece-api-command-line.html) or [API key](../../api-keys/elastic-cloud-enterprise-api-keys.md#ece-api-keys).
26+
With RBAC, interacting with API endpoints now requires a [bearer token](https://www.elastic.co/guide/en/cloud-enterprise/current/ece-api-command-line.md) or [API key](../../api-keys/elastic-cloud-enterprise-api-keys.md#ece-api-keys).
2727
::::
2828

2929

3030

3131
## Before you begin [ece_before_you_begin_8]
3232

33-
To prepare for RBAC, you should review the Elastic Cloud Enterprise [limitations and known issues](https://www.elastic.co/guide/en/cloud-enterprise/current/ece-limitations.html).
33+
To prepare for RBAC, you should review the Elastic Cloud Enterprise [limitations and known issues](https://www.elastic.co/guide/en/cloud-enterprise/current/ece-limitations.md).
3434

3535

3636
## Available roles and permissions [ece-user-role-permissions]
Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,33 @@
11
---
2+
navigation_title: "Cloud organization"
23
mapped_pages:
34
- https://www.elastic.co/guide/en/cloud/current/ec-organizations.html
5+
applies:
6+
serverless: all
7+
hosted: all
48
---
59

610
# Cloud organization users [ec-organizations]
711

8-
When you sign up to Elastic Cloud, you create an organization.
12+
When you sign up to {{ecloud}}, you create an organization. This organization is the umbrella for all of your {{ecloud}} resources, users, and account settings. Every organization has a unique identifier.
913

10-
This organization is the umbrella for all of your Elastic Cloud resources, users, and account settings. Every organization has a unique identifier. Bills are invoiced according to the billing contact and details that you set for your organization.
14+
You can perform the following tasks to control access to your Cloud organization, your {{ech}} deployments, and your {{serverless-full}} projects:
1115

12-
From the Organization page, you can:
16+
* [Manage users](/deploy-manage/users-roles/cloud-organization/manage-users.md): Invite users to join your organization and manage existing users.
17+
* Assign [user roles and privileges](/deploy-manage/users-roles/cloud-organization/user-roles.md):
18+
* Manage organization-level roles and high-level access to deployments and projects.
19+
* If you have {{serverless-full}} projects, assign project-level roles and create custom roles.
20+
* Configure [SAML single sign-on](/deploy-manage/users-roles/cloud-organization/configure-saml-authentication.md) for your organization.
1321

14-
* [Manage members of your organization](cloud-organization/manage-users.md)
15-
* [Leave an organization](cloud-organization/manage-users.md#ec-leave-organization)
16-
* [Assign user roles and privileges](cloud-organization/user-roles.md)
17-
* [Create API keys for using the Elastic Cloud API](../api-keys/elastic-cloud-api-keys.md#ec-api-keys)
18-
* [Configure SAML single sign-on for your organization](cloud-organization/configure-saml-authentication.md)
22+
:::{tip}
23+
If you're using {{ech}}, then you can also manage users and control access [at the deployment level](/deploy-manage/users-roles/cluster-or-deployment-auth.md).
24+
:::
1925

26+
## Should I use organization-level or deployment-level SSO? [organization-deployment-sso]
27+
28+
:::{applies}
29+
:hosted: all
30+
:::
31+
32+
:::{include} _snippets/org-vs-deploy-sso.md
33+
:::

0 commit comments

Comments
 (0)