Skip to content
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

[DRAFT] Security feature SuperAdmin documentation updates #6927

Conversation

leanneeliatra
Copy link
Contributor

@leanneeliatra leanneeliatra commented Apr 9, 2024

Description

The SuperAdmin role was added and this will be added to the documentation.

Issues Resolved

One part of: [DOC] Missing documentation for security features #433. The part this PR addresses is: CRUD APIs for default configurations. (Default roles, users and role-mapping can be updated by super admin now).

The original PR for the work of this ticket can be found here: Added SuperAdmin check to allow update/delete/add of reserved config, this PR is concerned with adding the documentation to support the SuperAdmin addition.

Checklist

  • By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and subject to the Developers Certificate of Origin.
    For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@leanneeliatra
Copy link
Contributor Author

Hi @Naarcha-AWS & @hdhalter. I opened this ticket as a draft to get some input from you please. I'm not sure if the file I have included these changes in, is the right place for this addition to the documentation.

Could you take a look and let me know please. I am adding a section to the documentation to convey the addition of the SuperAdmin role. The SuperAdmin can add, update and delete the reserved configuration such as roles, roles_mapping, internal_users, action_groups and tenants.

I have included these changes in the _security/access-control/users-roles.md file at the end, or on the # Users and roles page. Do you think this is a suitable place to add these changes? Thank you.

@leanneeliatra leanneeliatra changed the title [DRAFT] Security feature SuperAdmin documentation updates Security feature SuperAdmin documentation updates Apr 10, 2024
@Naarcha-AWS Naarcha-AWS added security 3 - Tech review PR: Tech review in progress labels Apr 10, 2024
@Naarcha-AWS Naarcha-AWS added the backport 2.13 PR: Backport label for 2.13 label Apr 10, 2024
@leanneeliatra leanneeliatra changed the title Security feature SuperAdmin documentation updates [DRAFT] Security feature SuperAdmin documentation updates Apr 10, 2024
@Naarcha-AWS Naarcha-AWS added 2 - In progress Issue/PR: The issue or PR is in progress. and removed 3 - Tech review PR: Tech review in progress labels Apr 10, 2024
@leanneeliatra
Copy link
Contributor Author

We reviewed these changes internally and I am currently in the process of understanding the original PR fully, so I can update the documentation appropriately.

@leanneeliatra
Copy link
Contributor Author

I reached out to Hardik Shah via slack to discuss the original PR in more depth.


The `superAdmin` role enables adding, updating, and deleting reserved configurations like roles, roles_mapping, internal_users, action_groups, and tenants. Previously, these configurations were loaded from default YAML files. Now, the `superAdmin` role now has the privilege to add, update, and delete by using API calls.

### Example API calls:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we add more examples for roles_mapping, internal_users, action_groups, and tenants as well?


Adding a Reserved Configuration:
```
curl -X PUT https://localhost:9200/_opendistro/_security/api/roles/new_role -k -H 'Content-Type: application/json' -d '{
Copy link
Member

@hardik-k-shah hardik-k-shah Apr 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also don't user need to pass Admin certificate for invoking this API, other than invoking locally from the node?
without identity to this API, system won't know the caller is super admin. And identity for super admin was being passed as client certificate with dn name which is allowlisted in config.yml

Can you verify working of these?

@leanneeliatra
Copy link
Contributor Author

Thank you @hardik-k-shah for your comments much appreciated. Still testing these changes locally to ensure correct documentation of the SuperAdmin.

@hdhalter
Copy link
Contributor

hdhalter commented May 7, 2024

@leanneeliatra - Do you want to close this PR in favor of #7069?

@leanneeliatra
Copy link
Contributor Author

@leanneeliatra - Do you want to close this PR in favor of #7069?

Hi @hdhalter yes please. I can ensure all aspects are covered in 7069.

@hdhalter
Copy link
Contributor

hdhalter commented May 8, 2024

Closing in favor of #7069

@hdhalter hdhalter closed this May 8, 2024
@hdhalter hdhalter added Closed - Duplicate or Cancelled Issue: Nothing to be done and removed 2 - In progress Issue/PR: The issue or PR is in progress. labels May 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 2.13 PR: Backport label for 2.13 Closed - Duplicate or Cancelled Issue: Nothing to be done security
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants