-
Notifications
You must be signed in to change notification settings - Fork 25.6k
Documentation for operator privileges #68964
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Pinging @elastic/es-docs (Team:Docs) |
|
Pinging @elastic/es-security (Team:Security) |
| Therefore, <<configure-operator-privileges,*when the feature of operator privileges is enabled*>>, | ||
| snapshot data associated to any operator-only functionality are *not* restored. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not yet true for autoscaling policies, which currently do not get restored regardless whether operator privileges are enabled or not. However, I do not want to go into this difference here because this will be the ultimate behaviour that we want once Cloud enables operator privileges.
|
@elasticmachine run elasticsearch-ci/2 |
bytebilly
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, I just left a couple of comments
x-pack/docs/en/security/operator-privileges/operator-only-functionality.asciidoc
Outdated
Show resolved
Hide resolved
x-pack/docs/en/security/operator-privileges/configure-operator-privileges.asciidoc
Outdated
Show resolved
Hide resolved
|
Two thoughts on the top level warning:
|
x-pack/docs/en/security/operator-privileges/configure-operator-privileges.asciidoc
Outdated
Show resolved
Hide resolved
x-pack/docs/en/security/operator-privileges/configure-operator-privileges.asciidoc
Outdated
Show resolved
Hide resolved
x-pack/docs/en/security/operator-privileges/configure-operator-privileges.asciidoc
Outdated
Show resolved
Hide resolved
| WARNING: The feature needs to be either enabled or disabled consistently across all nodes | ||
| in a cluster. Otherwise, you can get inconsistent behaviours depending on which node | ||
| a request hits first and where it gets executed. | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think there's a section missing here. You'll probably want to clean up the words a bit, but roughly:
When operator privileges are enabled on a cluster, specific functionality is restricted so that it may only be executed by those used who have been explicitly designated as operators.
That just makes the flow of thought a little more clear - it walks the reader through the process of
- turn on the setting,
- what did that do?
- okay now how do I how do I designate which users are intended to be operators?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added two sentences to make the transition smoother as suggested.
x-pack/docs/en/security/operator-privileges/operator-only-functionality.asciidoc
Outdated
Show resolved
Hide resolved
x-pack/docs/en/security/operator-privileges/operator-only-functionality.asciidoc
Outdated
Show resolved
Hide resolved
x-pack/docs/en/security/operator-privileges/operator-only-functionality.asciidoc
Outdated
Show resolved
Hide resolved
x-pack/docs/en/security/operator-privileges/operator-only-snapshot-and-restore.asciidoc
Outdated
Show resolved
Hide resolved
| The invocation of <<operator-only-apis>> and update of <<operator-only-dynamic-cluster-settings>> | ||
| result changes in the cluster state, which can be <<snapshot-restore,snapshot and restored>>. | ||
| Restoring snapshot data associated to <<operator-only-functionality,operator-only functionality>> | ||
| is problematic because: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we want to rethink this sentence. It's not problematic, because we made it do the right thing.
I think you want to restructure this whole section to say:
- We do this
- Because the infrastructure owners want this
- So we avoid this bad stuff
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are right. It reads a bit negative for the restore process which isn't true. I reworded a bit and added some context.
Co-authored-by: Tim Vernum <[email protected]>
…tionality.asciidoc Co-authored-by: Tim Vernum <[email protected]>
x-pack/docs/en/security/operator-privileges/operator-only-functionality.asciidoc
Outdated
Show resolved
Hide resolved
Agreed. This is an option we can consider in the future if we are comfortable.
I'd like to see it as users may reach the page directly via links or searches. That's not the same for autoscaling docs, so we may want to be consistent whatever we'll decide. |
Yes we do have it (#65867)
The warning header is now added to almost every page of autoscaling doc with #67202. I think it is reasonable for me to do the same here. |
lcawl
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added a commit with some minor doc edits, now it LGTM
x-pack/docs/en/security/operator-privileges/operator-only-snapshot-and-restore.asciidoc
Outdated
Show resolved
Hide resolved
…shot-and-restore.asciidoc
Oh I see it is included in API docs, but it's not included in autoscaling subpages here (except this first one): https://www.elastic.co/guide/en/elasticsearch/reference/current/xpack-autoscaling.html However, +1 to have the banner everywhere. |
|
@ywangd, I was doing a drive-by view of these docs and am curious if we want to make these instructions more Cloud-first, since operator privileges apply only to our Elastic Cloud services. For example, we mention the Similarly, we mention the |
|
@lockewritesdocs Thanks for the suggestions - drive by is a great way to find out how the docs land on someone without much existing knowledge of the feature. They missing piece here is that operator privileges are (actually will be because it's turned on yet) enabled automatically in Cloud and cannot be configured by the customer. The point of the feature is that it's something we enable to reduce the number of ways that deployments can be broken/destabilized/etc by end users (by stopping them from being able to affect the parts of the system that are managed by the cloud platform itself). We probably need to prepare a separate PR (because it's not live in ESS yet) that changes these docs to explain that this setting is always on in cloud, and if cloud customers are running into "you need to be an operator to do this" errors, that means the platform is intentionally stopping them from doing something, and they can't change it. |
|
Thanks @lockewritesdocs As Tim said, this feature is not meant for end users on Cloud. But your comment did prompt me to think that we should state the fact that Cloud manages this feature exclusively. I will raise another PR to add it once it is implemented by Cloud as Tim suggested. |
|
Thank you for the context and explanation @tvernum! I agree that we need to inform users that this setting is always on in Cloud, and what interaction they should anticipate as an operator user.
Further explaining this use case would also help distinguish why users would enable operator privileges for on-prem deployments. Essentially, we're providing users a way to implement guardrails that restrict permissions and keep other users from doing potentially damaging things. I added a comment with a suggestion to expand this explanation. I'm happy to help with the follow-up PR @ywangd -- just ping me whenever it's ready 👍 |
|
If @lcawl is happy, I am. I don't think I need to do another full pass on it. |
Add documentation for operator privilegs. The docs cover features delivered by phase 1 (elastic#65256) and 2 (elastic#66684). Co-authored-by: Tim Vernum <[email protected]> Co-authored-by: lcawl <[email protected]> Co-authored-by: Adam Locke <[email protected]>
Add documentation for operator privilegs. The docs cover features delivered by phase 1 (elastic#65256) and 2 (elastic#66684). Co-authored-by: Tim Vernum <[email protected]> Co-authored-by: lcawl <[email protected]> Co-authored-by: Adam Locke <[email protected]>
Add documentation for operator privilegs. The docs cover features delivered by phase 1 (#65256) and 2 (#66684). Co-authored-by: Tim Vernum <[email protected]> Co-authored-by: lcawl <[email protected]> Co-authored-by: Adam Locke <[email protected]>
Add documentation for operator privilegs. The docs cover features delivered by phase 1 (#65256) and 2 (#66684). Co-authored-by: Tim Vernum <[email protected]> Co-authored-by: lcawl <[email protected]> Co-authored-by: Adam Locke <[email protected]>

Add documentation for operator privilegs. The docs cover features delivered by phase 1 (#65256) and 2 (#66684).
Please preview the changes at: https://elasticsearch_68964.docs-preview.app.elstc.co/guide/en/elasticsearch/reference/master/operator-privileges.html
PS: Since the operator privileges feature is mainly for Elastic Cloud and is being worked on, I'd like the docs to be internal only. I didn't find any formal directives to use for "internal" docs. So I just put up a disclaimer in the beginning of the overview, similar to how autoscaling is documented.
Relates:
#66684
#65256