@mastra/auth-workos 1.2.0-alpha.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +42 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,47 @@
|
|
|
1
1
|
# @mastra/auth-workos
|
|
2
2
|
|
|
3
|
+
## 1.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- Added `MastraFGAWorkos` provider for Fine-Grained Authorization using the WorkOS Authorization API. Implements `IFGAManager` interface with support for: ([#15410](https://github.com/mastra-ai/mastra/pull/15410))
|
|
8
|
+
- Authorization checks (`check()`, `require()`, `filterAccessible()`)
|
|
9
|
+
- Resource management (`createResource()`, `getResource()`, `listResources()`, `updateResource()`, `deleteResource()`)
|
|
10
|
+
- Role assignments (`assignRole()`, `removeRole()`, `listRoleAssignments()`)
|
|
11
|
+
- `resourceMapping` and `permissionMapping` for translating Mastra resource types and permissions to WorkOS resource type slugs and permission slugs
|
|
12
|
+
- Organization scoping that denies access when the user is not a member of the configured organization
|
|
13
|
+
- Bearer-token / verified JWT support that carries service-token FGA context such as organization membership IDs, while ignoring JWT-derived memberships unless organization claims are trusted
|
|
14
|
+
- Membership caching and batched accessible-resource discovery for lower per-request latency
|
|
15
|
+
- Tenant inference and parent-resource filtering for scoped access checks
|
|
16
|
+
- Paginated organization membership lookup and limited concurrent FGA checks when filtering accessible resources
|
|
17
|
+
- Typed permission constants accepted in `permissionMapping`
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
import { MastraFGAWorkos } from '@mastra/auth-workos';
|
|
21
|
+
|
|
22
|
+
const fga = new MastraFGAWorkos({
|
|
23
|
+
organizationId: 'org_abc123',
|
|
24
|
+
resourceMapping: {
|
|
25
|
+
agent: { fgaResourceType: 'team', deriveId: ctx => ctx.user.teamId },
|
|
26
|
+
},
|
|
27
|
+
permissionMapping: {
|
|
28
|
+
'agents:execute': 'manage-workflows',
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
// Check whether a user can execute an agent
|
|
33
|
+
const allowed = await fga.check(user, {
|
|
34
|
+
resource: { type: 'agent', id: 'my-agent' },
|
|
35
|
+
permission: 'agents:execute',
|
|
36
|
+
});
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Patch Changes
|
|
40
|
+
|
|
41
|
+
- Updated dependencies [[`6dcd65f`](https://github.com/mastra-ai/mastra/commit/6dcd65f2a34069e6dc43ba35f1d11119b9b40bef), [`86c0298`](https://github.com/mastra-ai/mastra/commit/86c0298e647306423c842f9d5ac827bd616bd13d), [`c05c9a1`](https://github.com/mastra-ai/mastra/commit/c05c9a13230988cef6d438a62f37760f31927bc7), [`ca28c23`](https://github.com/mastra-ai/mastra/commit/ca28c232a2f18801a6cf20fe053479237b4d4fb0), [`e24aacb`](https://github.com/mastra-ai/mastra/commit/e24aacba07bd66f5d95b636dc24016fca26b52cf), [`7679a63`](https://github.com/mastra-ai/mastra/commit/7679a634eae8e8ca459fd87538fdf72b4389b07f), [`7fce309`](https://github.com/mastra-ai/mastra/commit/7fce30912b14170bfc41f0ac736cca0f39fe0cd4), [`1d64a76`](https://github.com/mastra-ai/mastra/commit/1d64a765861a0772ea187bab76e5ed37bf82d042), [`1c2dda8`](https://github.com/mastra-ai/mastra/commit/1c2dda805fbfccc0abf55d4cb20cc34402dc3f0c), [`c721164`](https://github.com/mastra-ai/mastra/commit/c7211643f7ac861f83b19a3757cc921487fc9d75), [`1b55954`](https://github.com/mastra-ai/mastra/commit/1b559541c1e08a10e49d01ffc51a634dfc37a286), [`7997c2e`](https://github.com/mastra-ai/mastra/commit/7997c2e55ddd121562a4098cd8d2b89c68433bf1), [`5adc55e`](https://github.com/mastra-ai/mastra/commit/5adc55e63407be8ee977914957d68bcc2a075ceb), [`7679a63`](https://github.com/mastra-ai/mastra/commit/7679a634eae8e8ca459fd87538fdf72b4389b07f), [`a0d9b6d`](https://github.com/mastra-ai/mastra/commit/a0d9b6d6b810aeaa9e177a0dcc99a4402e609634), [`e97ccb9`](https://github.com/mastra-ai/mastra/commit/e97ccb900f8b7a390ce82c9f8eb8d6eb2c5e3777), [`c5daf48`](https://github.com/mastra-ai/mastra/commit/c5daf48556e98c46ae06caf00f92c249912007e9), [`70017d7`](https://github.com/mastra-ai/mastra/commit/70017d72ab741b5d7040e2a15c251a317782e39e), [`cd96779`](https://github.com/mastra-ai/mastra/commit/cd9677937f113b2856dc8b9f3d4bdabcee58bb2e), [`b0c7022`](https://github.com/mastra-ai/mastra/commit/b0c70224f80dad7c0cdbfb22cbff22e0f75c064f), [`e4942bc`](https://github.com/mastra-ai/mastra/commit/e4942bc7fdc903572f7d84f26d5e15f9d39c763d)]:
|
|
42
|
+
- @mastra/core@1.32.0
|
|
43
|
+
- @mastra/auth@1.0.2
|
|
44
|
+
|
|
3
45
|
## 1.2.0-alpha.0
|
|
4
46
|
|
|
5
47
|
### Minor Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/auth-workos",
|
|
3
|
-
"version": "1.2.0
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "Mastra WorkOS Auth integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -37,9 +37,9 @@
|
|
|
37
37
|
"tsup": "^8.5.1",
|
|
38
38
|
"typescript": "^6.0.3",
|
|
39
39
|
"vitest": "4.1.5",
|
|
40
|
-
"@
|
|
41
|
-
"@internal/
|
|
42
|
-
"@
|
|
40
|
+
"@mastra/core": "1.32.0",
|
|
41
|
+
"@internal/lint": "0.0.91",
|
|
42
|
+
"@internal/types-builder": "0.0.66"
|
|
43
43
|
},
|
|
44
44
|
"files": [
|
|
45
45
|
"dist",
|