diff --git a/CHANGES.md b/CHANGES.md index 0cd2b8c..071dcbf 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -13,7 +13,7 @@ - Query: Added a few example questions specific to CrateDB - Outline: Renamed `CRATEDB_CONTEXT_URL` to `ABOUT_CONTEXT_URL` - Outline: Fixed `llms_txt` currently does not accept newlines in description fields -- Outline: Significantly update `cratedb-outline.yaml` +- Inventory: Significantly update `cratedb-outline.yaml` - Bundle: Started accepting `--url`/`ABOUT_OUTLINE_URL` option to specify alternative input outline file - Bundle: Improved handling of `--format` option @@ -21,6 +21,8 @@ per `ABOUT_CONTEXT_URL` - Query: Introduced caching for context payloads on HTTP remote URLs - llms-txt: Introduced caching for expanding outline into Markdown file +- Inventory: Added information about user and role management, privilege assignment, + and multi-tenancy implementation suggestions ## v0.0.3 - 2025-05-10 - Outline: Refactored the source of truth for the documentation outline diff --git a/src/cratedb_about/outline/cratedb-outline.yaml b/src/cratedb_about/outline/cratedb-outline.yaml index 93cd202..1642547 100644 --- a/src/cratedb_about/outline/cratedb-outline.yaml +++ b/src/cratedb_about/outline/cratedb-outline.yaml @@ -300,6 +300,37 @@ data: parents: [ reference ] tags: [ sql, reflection ] + # Admin: User management, roles, privileges, multi-tenancy. + - title: "CrateDB reference: Users and roles management" + link: https://cratedb.com/docs/crate/reference/en/latest/_sources/admin/user-management.rst.txt + description: | + Users and roles account information is stored in the cluster metadata of CrateDB and supports + standard SQL statements to create, alter and drop users and roles. + You need this knowledge to work with permissions in CrateDB. + parents: [reference] + source: docs + - title: "CrateDB reference: Privileges" + link: https://cratedb.com/docs/crate/reference/en/latest/_sources/admin/privileges.rst.txt + description: | + To execute statements, a user needs to have the required privileges. + CrateDB has a built-in superuser account (`crate`) which has the privilege to do anything. + The privileges of other users and roles have to be managed using the `GRANT`, `DENY` or `REVOKE` statements. + The privileges that can be granted, denied or revoked are: `DQL`, `DML`, `DDL`, `AL`. + The privileges can be granted on different classes: `CLUSTER`, `SCHEMA`, `TABLE`, `VIEW`. + You need this knowledge to work with permissions in CrateDB. + parents: [reference] + source: docs + - title: "CrateDB tutorial: Multi-tenancy with CrateDB" + link: https://community.cratedb.com/raw/1153/1 + description: | + Multi-tenancy is an architecture in which different tenants share a single software instance. + CrateDB does not support the creation of multiple databases and catalogs as some other solutions + (e.g., PostgreSQL). However, there are several ways to implement multi-tenancy in CrateDB, and, + as is often the case, which one works the best depends on a variety of options and trade-offs. + The article illustrates two methods for sharing a single CrateDB instance between multiple tenants. + You need this knowledge to work with permissions in CrateDB. + source: tutorials + # SQL - title: "CrateDB SQL reference: Syntax" description: You can use Structured Query Language (SQL) to query your data.