@o3co/auth.policy-verifier.builtins 0.1.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/LICENSE +201 -0
- package/README.ja.md +101 -0
- package/README.md +101 -0
- package/dist/__tests__/collectors/PayloadScopeCollector.test.d.mts +2 -0
- package/dist/__tests__/collectors/PayloadScopeCollector.test.d.mts.map +1 -0
- package/dist/__tests__/collectors/PayloadScopeCollector.test.mjs +24 -0
- package/dist/__tests__/collectors/PayloadSubjectIdCollector.test.d.mts +2 -0
- package/dist/__tests__/collectors/PayloadSubjectIdCollector.test.d.mts.map +1 -0
- package/dist/__tests__/collectors/PayloadSubjectIdCollector.test.mjs +33 -0
- package/dist/__tests__/collectors/RequestContextCollector.test.d.mts +2 -0
- package/dist/__tests__/collectors/RequestContextCollector.test.d.mts.map +1 -0
- package/dist/__tests__/collectors/RequestContextCollector.test.mjs +42 -0
- package/dist/__tests__/collectors/StaticPermissionCollector.test.d.mts +2 -0
- package/dist/__tests__/collectors/StaticPermissionCollector.test.d.mts.map +1 -0
- package/dist/__tests__/collectors/StaticPermissionCollector.test.mjs +22 -0
- package/dist/__tests__/collectors/StaticRoleCollector.test.d.mts +2 -0
- package/dist/__tests__/collectors/StaticRoleCollector.test.d.mts.map +1 -0
- package/dist/__tests__/collectors/StaticRoleCollector.test.mjs +24 -0
- package/dist/__tests__/module.test.d.mts +2 -0
- package/dist/__tests__/module.test.d.mts.map +1 -0
- package/dist/__tests__/module.test.mjs +72 -0
- package/dist/__tests__/resource/DotNotationResourceParser.test.d.mts +2 -0
- package/dist/__tests__/resource/DotNotationResourceParser.test.d.mts.map +1 -0
- package/dist/__tests__/resource/DotNotationResourceParser.test.mjs +34 -0
- package/dist/__tests__/rules/HasPermission.test.d.mts +2 -0
- package/dist/__tests__/rules/HasPermission.test.d.mts.map +1 -0
- package/dist/__tests__/rules/HasPermission.test.mjs +86 -0
- package/dist/__tests__/rules/HasScope.test.d.mts +2 -0
- package/dist/__tests__/rules/HasScope.test.d.mts.map +1 -0
- package/dist/__tests__/rules/HasScope.test.mjs +42 -0
- package/dist/__tests__/rules/ResourceActionPermissionRuleCollector.test.d.mts +2 -0
- package/dist/__tests__/rules/ResourceActionPermissionRuleCollector.test.d.mts.map +1 -0
- package/dist/__tests__/rules/ResourceActionPermissionRuleCollector.test.mjs +27 -0
- package/dist/__tests__/rules/ResourceActionScopeRuleCollector.test.d.mts +2 -0
- package/dist/__tests__/rules/ResourceActionScopeRuleCollector.test.d.mts.map +1 -0
- package/dist/__tests__/rules/ResourceActionScopeRuleCollector.test.mjs +27 -0
- package/dist/collectors/PayloadScopeCollector.d.mts +5 -0
- package/dist/collectors/PayloadScopeCollector.d.mts.map +1 -0
- package/dist/collectors/PayloadScopeCollector.mjs +8 -0
- package/dist/collectors/PayloadSubjectIdCollector.d.mts +5 -0
- package/dist/collectors/PayloadSubjectIdCollector.d.mts.map +1 -0
- package/dist/collectors/PayloadSubjectIdCollector.mjs +13 -0
- package/dist/collectors/RequestContextCollector.d.mts +5 -0
- package/dist/collectors/RequestContextCollector.d.mts.map +1 -0
- package/dist/collectors/RequestContextCollector.mjs +15 -0
- package/dist/collectors/StaticPermissionCollector.d.mts +9 -0
- package/dist/collectors/StaticPermissionCollector.d.mts.map +1 -0
- package/dist/collectors/StaticPermissionCollector.mjs +10 -0
- package/dist/collectors/StaticRoleCollector.d.mts +9 -0
- package/dist/collectors/StaticRoleCollector.d.mts.map +1 -0
- package/dist/collectors/StaticRoleCollector.mjs +10 -0
- package/dist/index.d.mts +12 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +15 -0
- package/dist/module.d.mts +3 -0
- package/dist/module.d.mts.map +1 -0
- package/dist/module.mjs +24 -0
- package/dist/resource/DotNotationResourceParser.d.mts +5 -0
- package/dist/resource/DotNotationResourceParser.d.mts.map +1 -0
- package/dist/resource/DotNotationResourceParser.mjs +14 -0
- package/dist/rules/HasPermission.d.mts +11 -0
- package/dist/rules/HasPermission.d.mts.map +1 -0
- package/dist/rules/HasPermission.mjs +39 -0
- package/dist/rules/HasScope.d.mts +11 -0
- package/dist/rules/HasScope.d.mts.map +1 -0
- package/dist/rules/HasScope.mjs +22 -0
- package/dist/rules/ResourceActionPermissionRuleCollector.d.mts +5 -0
- package/dist/rules/ResourceActionPermissionRuleCollector.d.mts.map +1 -0
- package/dist/rules/ResourceActionPermissionRuleCollector.mjs +7 -0
- package/dist/rules/ResourceActionScopeRuleCollector.d.mts +5 -0
- package/dist/rules/ResourceActionScopeRuleCollector.d.mts.map +1 -0
- package/dist/rules/ResourceActionScopeRuleCollector.mjs +7 -0
- package/package.json +38 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ATTR_SCOPES } from "@o3co/auth.policy-verifier.core";
|
|
2
|
+
export class HasScope {
|
|
3
|
+
scope;
|
|
4
|
+
ruleType = "scope";
|
|
5
|
+
code = "invalid_scope";
|
|
6
|
+
message;
|
|
7
|
+
constructor(scope) {
|
|
8
|
+
this.scope = scope;
|
|
9
|
+
this.message = `Token does not have required scope: ${scope}`;
|
|
10
|
+
}
|
|
11
|
+
verify(attrs) {
|
|
12
|
+
const scopes = attrs.get(ATTR_SCOPES) ?? [];
|
|
13
|
+
return scopes.some((s) => this.matchScopes(s, this.scope));
|
|
14
|
+
}
|
|
15
|
+
matchScopes(scope, required) {
|
|
16
|
+
scope = scope.toLowerCase();
|
|
17
|
+
required = required.toLowerCase();
|
|
18
|
+
const parts = scope.split(":");
|
|
19
|
+
const [perm, resource] = parts.length === 1 ? ["read", parts[0]] : parts;
|
|
20
|
+
return required === `${perm}:${resource}`;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { CollectorContext, Rule, RuleCollector } from "@o3co/auth.policy-verifier.core";
|
|
2
|
+
export declare class ResourceActionPermissionRuleCollector implements RuleCollector {
|
|
3
|
+
collect(context: CollectorContext): Promise<Rule[]>;
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=ResourceActionPermissionRuleCollector.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceActionPermissionRuleCollector.d.mts","sourceRoot":"","sources":["../../src/rules/ResourceActionPermissionRuleCollector.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAG7F,qBAAa,qCAAsC,YAAW,aAAa;IACpE,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;CAIzD"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { CollectorContext, Rule, RuleCollector } from "@o3co/auth.policy-verifier.core";
|
|
2
|
+
export declare class ResourceActionScopeRuleCollector implements RuleCollector {
|
|
3
|
+
collect(context: CollectorContext): Promise<Rule[]>;
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=ResourceActionScopeRuleCollector.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceActionScopeRuleCollector.d.mts","sourceRoot":"","sources":["../../src/rules/ResourceActionScopeRuleCollector.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAG7F,qBAAa,gCAAiC,YAAW,aAAa;IAC/D,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;CAIzD"}
|
package/package.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@o3co/auth.policy-verifier.builtins",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"license": "Apache-2.0",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.mjs",
|
|
7
|
+
"types": "./dist/index.d.mts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"import": "./dist/index.mjs",
|
|
11
|
+
"types": "./dist/index.d.mts"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist",
|
|
16
|
+
"LICENSE",
|
|
17
|
+
"README.md"
|
|
18
|
+
],
|
|
19
|
+
"repository": {
|
|
20
|
+
"type": "git",
|
|
21
|
+
"url": "https://github.com/o3co/auth.policy-verifier.git",
|
|
22
|
+
"directory": "packages/builtins"
|
|
23
|
+
},
|
|
24
|
+
"imports": {
|
|
25
|
+
"#/*": "./src/*"
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"@o3co/auth.policy-verifier.core": "0.1.0"
|
|
29
|
+
},
|
|
30
|
+
"devDependencies": {
|
|
31
|
+
"@types/node": "^25.1.0",
|
|
32
|
+
"vitest": "^4.1.2"
|
|
33
|
+
},
|
|
34
|
+
"scripts": {
|
|
35
|
+
"build": "tsc",
|
|
36
|
+
"test": "vitest run"
|
|
37
|
+
}
|
|
38
|
+
}
|