[#11279] docs: Add built-in IDP operator how-to and align design doc#11281
[#11279] docs: Add built-in IDP operator how-to and align design doc#11281lasdf1234 wants to merge 43 commits into
Conversation
Document /api/idp management APIs from idp-basic implementation, clarify unimplemented Basic auth and startup init, and fix group membership paths in the local authentication design doc. Co-authored-by: Cursor <cursoragent@cursor.com>
The default entity store is already relational and IdP schema setup is covered by the following prerequisite item. Co-authored-by: Cursor <cursoragent@cursor.com>
Avoid suggesting a combined authenticator list that is not the intended production configuration. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Reorganize the guide to match other Gravitino how-to docs: Introduction, Prerequisites, Configuration, Operations, access control integration, and Further reading. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Explain enabling authorization, configuring serviceAdmins, and calling /api/idp as an authenticated service admin before API examples. Co-authored-by: Cursor <cursoragent@cursor.com>
Drop Plugin JAR copy steps from prerequisites and document service admin configuration, authentication, and optional IDP password setup. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Document GRAVITINO_INITIAL_ADMIN_PASSWORD as mandatory startup setup and remove simple-mode workarounds for calling /api/idp management APIs. Co-authored-by: Cursor <cursoragent@cursor.com>
Describe service admin initialization and basic authentication as normative behavior aligned with the IdP how-to guide. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Usernames come from serviceAdmins; the env var holds only the password, not a JSON username:password array. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Update slug and doc site links to match the new filename. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Drop gravitino.authenticators=basic and "when basic is enabled" wording; document built-in IDP via rest.extensionPackages instead. Co-authored-by: Cursor <cursoragent@cursor.com>
Remove duplicate sections, incorrect AuthenticatorFactory claims, and awkward wording in the how-to and design doc. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds documentation for the new built-in IDP (local authentication) feature and updates the existing local authentication design doc to reflect the implemented configuration model (extension packages + service admin initialization) rather than the earlier basic authenticator approach.
Changes:
- New user-facing guide
docs/how-to-use-built-in-idp.mddescribing prerequisites, configuration, and/api/idp/*operations. - Updates
design-docs/gravitino-local-authentication.mdto remove thegravitino.authenticators=basicmodel and usegravitino.server.rest.extensionPackagesplusGRAVITINO_INITIAL_ADMIN_PASSWORDas a single password string. - Links the new guide from
docs/index.mdanddocs/security/security.md.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| docs/security/security.md | Adds a link to the new Built-in IDP guide in the security index. |
| docs/index.md | Adds the Built-in IDP entry under the Security section. |
| docs/how-to-use-built-in-idp.md | New how-to guide covering setup and /api/idp/* operations. |
| design-docs/gravitino-local-authentication.md | Rewrites design to match the implemented IDP configuration and admin init flow. |
Relocate how-to-use-built-in-idp.md next to other security guides, update slug and cross-links in index.md and security.md. Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
||
| This guide describes how to enable and operate the management APIs in `plugins:idp-basic`. For | ||
| design background, see | ||
| [Design of local authentication support](../design-docs/gravitino-local-authentication.md). For |
There was a problem hiding this comment.
Could u avoid telling the implementation and design details?
There was a problem hiding this comment.
Got remove design doc.
| gravitino.server.rest.extensionPackages = org.apache.gravitino.idp.web.rest.feature | ||
| ``` | ||
|
|
||
| 2. **IDP database tables** — Run the appropriate upgrade script under `${GRAVITINO_HOME}/scripts/` |
There was a problem hiding this comment.
Got it has been deleted.
|
|
||
| --- | ||
|
|
||
| ## Use with Gravitino access control |
|
|
||
| | Configuration item | Description | Example | | ||
| |-----------------------------------------|------------------------------------------|---------| | ||
| | `gravitino.authorization.enable` | Enable Gravitino authorization | `true` | |
Remove the relational upgrade-script prerequisite and all gravitino.authorization.enable settings from the operator guide. Co-authored-by: Cursor <cursoragent@cursor.com>
Remove the setting from the initialization example and built-in IDP configuration table to match the operator how-to guide. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Could u check all the links? |
|
|
||
| For full request and response definitions, see the [Built-in IDP OpenAPI](../open-api/idp/openapi.yaml). | ||
|
|
||
| --- |
There was a problem hiding this comment.
You should add complete user process?
- Add a metalake
- Add the user
- Add a Iceberg catalog
- How IRC clients to access
There was a problem hiding this comment.
I will mention an improvement later.
Code Coverage Report
|
Add navigation entries so operators can discover the built-in IDP operator guide from the docs home page and security capabilities list. Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
||
| ### [Authentication](how-to-authenticate.md) | ||
|
|
||
| ### [Built-in IDP (local authentication)](how-to-use-built-in-idp.md) |
There was a problem hiding this comment.
remove local authentication.
Use "built-in IDP" consistently in the how-to title and navigation links on the docs index and security overview pages. Co-authored-by: Cursor <cursoragent@cursor.com>
Resolve docs/index.md conflict: keep main's authentication list (simple, basic, OAuth, Kerberos) and retain the built-in IDP how-to link. Co-authored-by: Cursor <cursoragent@cursor.com>
Clarify serviceAdmins table wording, use "Basic authentication" without "HTTP" in prose, and say "Start Gravitino" in prerequisites. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Drop "usernames" from serviceAdmins descriptions and pad markdown table columns in the built-in IDP docs. Co-authored-by: Cursor <cursoragent@cursor.com>
What changes were proposed in this pull request?
docs/how-to-use-built-in-idp.md, an operator guide for the built-in IDP (idp-basicplugin): prerequisites (REST extension package, schema upgrade, service admin password init), configuration, management REST APIs withcurlexamples, password rules, and access-control integration.design-docs/gravitino-local-authentication.mdto align with the how-to (service admin initialization, configuration, administrative APIs; remove outdated or inaccurate prose).docs/index.mdanddocs/security/security.md.Why are the changes needed?
Operators need a single how-to and an aligned design document as built-in IdP capabilities land across multiple PRs under epic #10959.
Fix: #11279
Does this PR introduce any user-facing change?
Documentation only.
How was this patch tested?
Made with Cursor