Skip to content

Commit c58400a

Browse files
committed
refactor: consolidate authentication and authorization services in documentation
1 parent f4fe082 commit c58400a

2 files changed

Lines changed: 39 additions & 37 deletions

File tree

content/docs/concepts/implementation-status.mdx

Lines changed: 25 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -250,31 +250,28 @@ This matrix is generated from actual codebase analysis and represents the curren
250250
**Plugin-Provided Service** — The kernel does NOT handle authentication or authorization. Security services must be provided by plugins (e.g., `@objectstack/plugin-auth`). The Discovery API reports auth as `unavailable` until a plugin is registered.
251251
</Callout>
252252

253-
### Authentication
254-
255-
| Protocol | @objectstack/spec | Kernel | Plugin Required | Status |
256-
|:---------|:-----------------:|:------:|:---------------:|:------:|
257-
| **Identity** |||| 📋 Plugin |
258-
| **Auth Config** |||| 📋 Plugin |
259-
| **Role** |||| 📋 Plugin |
260-
| **Organization** |||| 📋 Plugin |
261-
| **Policy** |||| 📋 Plugin |
262-
| **SCIM** |||| 📋 Plugin |
263-
264-
### Authorization
265-
266-
| Protocol | @objectstack/spec | Kernel | Plugin Required | Status |
267-
|:---------|:-----------------:|:------:|:---------------:|:------:|
268-
| **Permission** |||| 📋 Plugin |
269-
| **Sharing** |||| 📋 Plugin |
270-
| **RLS** |||| 📋 Plugin |
271-
| **Territory** |||| 📋 Plugin |
253+
### Auth Service (`plugin-auth`)
254+
255+
The `auth` service in `CoreServiceName` covers both **authentication** (identity) and **authorization** (permissions). There is no separate `permission` service — it is part of `auth`.
256+
257+
| Protocol | Area | @objectstack/spec | Kernel | Plugin Required | Status |
258+
|:---------|:-----|:-----------------:|:------:|:---------------:|:------:|
259+
| **Identity** | Authentication |||| 📋 Plugin |
260+
| **Auth Config** | Authentication |||| 📋 Plugin |
261+
| **Role** | Authentication |||| 📋 Plugin |
262+
| **Organization** | Authentication |||| 📋 Plugin |
263+
| **Policy** | Authentication |||| 📋 Plugin |
264+
| **SCIM** | Authentication |||| 📋 Plugin |
265+
| **Permission** | Authorization |||| 📋 Plugin |
266+
| **Sharing** | Authorization |||| 📋 Plugin |
267+
| **RLS** | Authorization |||| 📋 Plugin |
268+
| **Territory** | Authorization |||| 📋 Plugin |
272269

273270
**Notes:**
274-
- Complete security protocols defined in spec — ready for plugin implementation
275-
- Client SDK supports bearer token header — but token validation requires an auth plugin
276-
- Auth route (`/auth/*`) only appears in Discovery when an auth plugin is registered
277-
- Fine-grained authorization (RLS, sharing, territory) requires dedicated plugins
271+
- All security protocols (identity + permission) are delivered by a single `auth` plugin — matching `CoreServiceName`
272+
- Client SDK supports bearer token header — but token validation requires the auth plugin
273+
- Auth route (`/auth/*`) only appears in Discovery when the auth plugin is registered
274+
- Fine-grained authorization (RLS, sharing, territory) is internal to the auth plugin
278275

279276
---
280277

@@ -412,19 +409,18 @@ This matrix is generated from actual codebase analysis and represents the curren
412409
| **UI** | 10 | 0 | 0 | 10 |
413410
| **API** | 14 | 11 | 1 | 2 |
414411
| **System** | 39 | 8 | 1 | 30 |
415-
| **Auth** (plugin) | 6 | 0 | 0 | 6 |
416-
| **Permission** (plugin) | 4 | 0 | 0 | 4 |
412+
| **Auth** (plugin) | 10 | 0 | 0 | 10 |
417413
| **Automation** (plugin) | 7 | 1 | 0 | 6 |
418414
| **AI** | 12 | 0 | 0 | 12 |
419415
| **Integration** | 7 | 0 | 0 | 7 |
420416
| **QA** | 1 | 1 | 0 | 0 |
421-
| **TOTAL** | **116** | **28** | **5** | **83** |
417+
| **TOTAL** | **112** | **28** | **5** | **79** |
422418

423419
### Implementation Coverage
424420

425-
- **Fully Implemented**: 24.1% (28/116)
426-
- **Partially Implemented**: 4.3% (5/116)
427-
- **Not Implemented**: 71.6% (83/116)
421+
- **Fully Implemented**: 25.0% (28/112)
422+
- **Partially Implemented**: 4.5% (5/112)
423+
- **Not Implemented**: 70.5% (79/112)
428424

429425
### Core Functionality Status
430426

content/docs/guides/kernel-services.mdx

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -196,14 +196,20 @@ The discovery endpoint returns a `services` map so clients know what is availabl
196196

197197
### Plugin Requirements
198198

199-
| Module | Description | Priority |
200-
|:-------|:------------|:--------:|
201-
| **Identity Provider** | JWT issuance/verification, session management | P0 |
202-
| **User CRUD** | Create / read / update / delete users | P0 |
203-
| **Role Management** | Role definitions, role-user associations | P0 |
204-
| **OAuth2 / OIDC** | Third-party login (Google, GitHub, etc.) | P1 |
205-
| **Multi-tenancy** | Space / Tenant isolation | P1 |
206-
| **SCIM** | Enterprise user provisioning protocol | P2 |
199+
The `auth` service covers both **authentication** (identity) and **authorization** (permissions). There is no separate `permission` service in `CoreServiceName`.
200+
201+
| Module | Area | Description | Priority |
202+
|:-------|:-----|:------------|:--------:|
203+
| **Identity Provider** | Authentication | JWT issuance/verification, session management | P0 |
204+
| **User CRUD** | Authentication | Create / read / update / delete users | P0 |
205+
| **Role Management** | Authentication | Role definitions, role-user associations | P0 |
206+
| **Permission Engine** | Authorization | Object-level and field-level permissions | P0 |
207+
| **OAuth2 / OIDC** | Authentication | Third-party login (Google, GitHub, etc.) | P1 |
208+
| **Sharing Rules** | Authorization | Record-level sharing and visibility | P1 |
209+
| **Row-Level Security** | Authorization | Automatic query filtering by user context | P1 |
210+
| **Multi-tenancy** | Authentication | Space / Tenant isolation | P1 |
211+
| **Territory Management** | Authorization | Data territory assignment and access | P2 |
212+
| **SCIM** | Authentication | Enterprise user provisioning protocol | P2 |
207213

208214
### Spec Files: `identity.zod.ts`, `role.zod.ts`, `organization.zod.ts`, `auth-config.zod.ts`, `tenant.zod.ts`
209215

0 commit comments

Comments
 (0)