@lanaqi/rsr 0.0.1-rc.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/README.md +49 -0
- package/dist/access/aaa.d.ts +177 -0
- package/dist/access/addon.d.ts +92 -0
- package/dist/access/blocker.d.ts +94 -0
- package/dist/access/common.d.ts +63 -0
- package/dist/access/context.d.ts +162 -0
- package/dist/access/guarder.d.ts +173 -0
- package/dist/access/handler.d.ts +183 -0
- package/dist/access/index.d.ts +56 -0
- package/dist/access/manager.d.ts +109 -0
- package/dist/access/matcher.d.ts +70 -0
- package/dist/access/navigator.d.ts +33 -0
- package/dist/access/recorder.d.ts +291 -0
- package/dist/access/resource.d.ts +215 -0
- package/dist/access/storer.d.ts +197 -0
- package/dist/access/voter.d.ts +156 -0
- package/dist/addons/index.d.ts +4 -0
- package/dist/addons/micro.d.ts +53 -0
- package/dist/bridge.d.ts +8 -0
- package/dist/builder/blocker.d.ts +24 -0
- package/dist/builder/builder.d.ts +9 -0
- package/dist/builder/context.d.ts +112 -0
- package/dist/builder/guarder.d.ts +54 -0
- package/dist/builder/handler.d.ts +21 -0
- package/dist/builder/index.d.ts +48 -0
- package/dist/builder/manager.d.ts +55 -0
- package/dist/builder/matcher.d.ts +37 -0
- package/dist/builder/navigator.d.ts +22 -0
- package/dist/builder/recorder.d.ts +11 -0
- package/dist/builder/resource.d.ts +101 -0
- package/dist/builder/storer.d.ts +83 -0
- package/dist/builder/voter.d.ts +41 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.js +1778 -0
- package/dist/security/blocker.d.ts +14 -0
- package/dist/security/index.d.ts +8 -0
- package/dist/security/provider.d.ts +31 -0
- package/dist/support/aaa.d.ts +29 -0
- package/dist/support/blocker.d.ts +28 -0
- package/dist/support/index.d.ts +20 -0
- package/dist/support/permission.d.ts +5 -0
- package/dist/support/signature.d.ts +21 -0
- package/dist/support/user.d.ts +14 -0
- package/dist/warpper/index.d.ts +4 -0
- package/dist/warpper/permission.d.ts +24 -0
- package/package.json +74 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { type AccessPermissions, type AccessResource, type ResourceLabels, type ResourcePatterns } from '../access';
|
|
2
|
+
import type { AccessBuilder } from './builder';
|
|
3
|
+
/**
|
|
4
|
+
* 访问资源配置
|
|
5
|
+
*/
|
|
6
|
+
export type AccessResourceConfig = {
|
|
7
|
+
/**
|
|
8
|
+
* 模式集合
|
|
9
|
+
*/
|
|
10
|
+
readonly patterns: ResourcePatterns;
|
|
11
|
+
/**
|
|
12
|
+
* 权限集合
|
|
13
|
+
*/
|
|
14
|
+
readonly permissions: AccessPermissions;
|
|
15
|
+
/**
|
|
16
|
+
* 标签集合
|
|
17
|
+
*/
|
|
18
|
+
readonly labels?: ResourceLabels;
|
|
19
|
+
/**
|
|
20
|
+
* 基础路径
|
|
21
|
+
*/
|
|
22
|
+
readonly basename?: string;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* 访问资源配置集合
|
|
26
|
+
*/
|
|
27
|
+
export type AccessResourceConfigs = AccessResourceConfig[];
|
|
28
|
+
/**
|
|
29
|
+
* 访问资源构建器
|
|
30
|
+
*/
|
|
31
|
+
export declare class AccessResourceBuilder implements AccessBuilder<AccessResource> {
|
|
32
|
+
/**
|
|
33
|
+
* 模式集合
|
|
34
|
+
* @private
|
|
35
|
+
*/
|
|
36
|
+
private readonly _patterns;
|
|
37
|
+
/**
|
|
38
|
+
* 权限集合
|
|
39
|
+
* @private
|
|
40
|
+
*/
|
|
41
|
+
private readonly _permissions;
|
|
42
|
+
/**
|
|
43
|
+
* 标签集合
|
|
44
|
+
* @private
|
|
45
|
+
*/
|
|
46
|
+
private readonly _labels;
|
|
47
|
+
/**
|
|
48
|
+
* 基础路径
|
|
49
|
+
* @private
|
|
50
|
+
*/
|
|
51
|
+
private _basename?;
|
|
52
|
+
/**
|
|
53
|
+
* 添加模式集合
|
|
54
|
+
* @param patterns 模式集合
|
|
55
|
+
*/
|
|
56
|
+
patterns(...patterns: ResourcePatterns): AccessResourceBuilder;
|
|
57
|
+
/**
|
|
58
|
+
* 添加权限集合
|
|
59
|
+
* @param permissions 权限集合
|
|
60
|
+
*/
|
|
61
|
+
permissions(...permissions: AccessPermissions): AccessResourceBuilder;
|
|
62
|
+
/**
|
|
63
|
+
* 添加标签集合
|
|
64
|
+
* @param labels 标签集合
|
|
65
|
+
*/
|
|
66
|
+
labels(...labels: ResourceLabels): AccessResourceBuilder;
|
|
67
|
+
/**
|
|
68
|
+
* 标记匿名的权限
|
|
69
|
+
*/
|
|
70
|
+
anonymous(): AccessResourceBuilder;
|
|
71
|
+
/**
|
|
72
|
+
* 标记已认证权限
|
|
73
|
+
*/
|
|
74
|
+
authenticated(): AccessResourceBuilder;
|
|
75
|
+
/**
|
|
76
|
+
* 标记已授权权限
|
|
77
|
+
*/
|
|
78
|
+
authorized(): AccessResourceBuilder;
|
|
79
|
+
/**
|
|
80
|
+
* 标记已签名标签
|
|
81
|
+
*/
|
|
82
|
+
signatured(): AccessResourceBuilder;
|
|
83
|
+
/**
|
|
84
|
+
* 标记始终签名标签
|
|
85
|
+
*/
|
|
86
|
+
alwaysSignature(): AccessResourceBuilder;
|
|
87
|
+
/**
|
|
88
|
+
* 设置基础路径
|
|
89
|
+
* @param basename 基础路径
|
|
90
|
+
*/
|
|
91
|
+
basename(basename: string): AccessResourceBuilder;
|
|
92
|
+
/**
|
|
93
|
+
* 通过配置添加相关
|
|
94
|
+
* @param config 资源配置
|
|
95
|
+
*/
|
|
96
|
+
config(config: AccessResourceConfig): AccessResourceBuilder;
|
|
97
|
+
/**
|
|
98
|
+
* 构建
|
|
99
|
+
*/
|
|
100
|
+
build(): AccessResource;
|
|
101
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { type AccessStorer, type AccessValidator } from '../access';
|
|
2
|
+
import type { AccessBuilder } from './builder';
|
|
3
|
+
/**
|
|
4
|
+
* 访问存储器构建器
|
|
5
|
+
*/
|
|
6
|
+
export declare class AccessStorerBuilder implements AccessBuilder<AccessStorer> {
|
|
7
|
+
/**
|
|
8
|
+
* 认证与授权存储
|
|
9
|
+
* @private
|
|
10
|
+
*/
|
|
11
|
+
private _aaaStorage?;
|
|
12
|
+
/**
|
|
13
|
+
* 签名存储
|
|
14
|
+
* @private
|
|
15
|
+
*/
|
|
16
|
+
private _signStorage?;
|
|
17
|
+
/**
|
|
18
|
+
* 认证健
|
|
19
|
+
* @private
|
|
20
|
+
*/
|
|
21
|
+
private _authenticationKey?;
|
|
22
|
+
/**
|
|
23
|
+
* 授权健
|
|
24
|
+
* @private
|
|
25
|
+
*/
|
|
26
|
+
private _authorizationKey?;
|
|
27
|
+
/**
|
|
28
|
+
* 签名健
|
|
29
|
+
* @private
|
|
30
|
+
*/
|
|
31
|
+
private _signatureKey?;
|
|
32
|
+
/**
|
|
33
|
+
* 认证验证器
|
|
34
|
+
* @private
|
|
35
|
+
*/
|
|
36
|
+
private _authenticationValidator?;
|
|
37
|
+
/**
|
|
38
|
+
* 设置认证与授权存储
|
|
39
|
+
* @param aaaStorage 认证与授权存储
|
|
40
|
+
*/
|
|
41
|
+
aaaStorage(aaaStorage: Storage): AccessStorerBuilder;
|
|
42
|
+
/**
|
|
43
|
+
* 设置签名存储
|
|
44
|
+
* @param signStorage 签名存储
|
|
45
|
+
*/
|
|
46
|
+
signStorage(signStorage: Storage): AccessStorerBuilder;
|
|
47
|
+
/**
|
|
48
|
+
* 设置认证健
|
|
49
|
+
* @param authenticationKey 认证健
|
|
50
|
+
*/
|
|
51
|
+
authenticationKey(authenticationKey: string): AccessStorerBuilder;
|
|
52
|
+
/**
|
|
53
|
+
* 设置授权健
|
|
54
|
+
* @param authorizationKey 授权健
|
|
55
|
+
*/
|
|
56
|
+
authorizationKey(authorizationKey: string): AccessStorerBuilder;
|
|
57
|
+
/**
|
|
58
|
+
* 设置签名健
|
|
59
|
+
* @param signatureKey 签名健
|
|
60
|
+
*/
|
|
61
|
+
signatureKey(signatureKey: string): AccessStorerBuilder;
|
|
62
|
+
/**
|
|
63
|
+
* 设置认证验证器
|
|
64
|
+
* @param authenticationValidator 认证验证器
|
|
65
|
+
*/
|
|
66
|
+
authenticationValidator(authenticationValidator: AccessValidator): AccessStorerBuilder;
|
|
67
|
+
/**
|
|
68
|
+
* 设置本地存储
|
|
69
|
+
*/
|
|
70
|
+
local(): AccessStorerBuilder;
|
|
71
|
+
/**
|
|
72
|
+
* 设置会话存储
|
|
73
|
+
*/
|
|
74
|
+
session(): AccessStorerBuilder;
|
|
75
|
+
/**
|
|
76
|
+
* 设置混合存储(认证与授权存储为本地存储,签名存储为会话存储)
|
|
77
|
+
*/
|
|
78
|
+
blend(): AccessStorerBuilder;
|
|
79
|
+
/**
|
|
80
|
+
* 构建
|
|
81
|
+
*/
|
|
82
|
+
build(): AccessStorer;
|
|
83
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { type AccessVoter, type RelationResolver } from '../access';
|
|
2
|
+
import type { AccessBuilder } from './builder';
|
|
3
|
+
/**
|
|
4
|
+
* 访问投票器构建器
|
|
5
|
+
*/
|
|
6
|
+
export declare class AccessVoterBuilder implements AccessBuilder<AccessVoter> {
|
|
7
|
+
/**
|
|
8
|
+
* 关系解析器
|
|
9
|
+
* @private
|
|
10
|
+
*/
|
|
11
|
+
private _resolver?;
|
|
12
|
+
/**
|
|
13
|
+
* 层级关系:a>b;b>c;c>d;e>f;f>g
|
|
14
|
+
* @private
|
|
15
|
+
*/
|
|
16
|
+
private _hierarchy?;
|
|
17
|
+
/**
|
|
18
|
+
* 包含全部
|
|
19
|
+
* @private
|
|
20
|
+
*/
|
|
21
|
+
private _all;
|
|
22
|
+
/**
|
|
23
|
+
* 设置关系解析器
|
|
24
|
+
* @param resolver 关系解析器
|
|
25
|
+
*/
|
|
26
|
+
resolver(resolver: RelationResolver): AccessVoterBuilder;
|
|
27
|
+
/**
|
|
28
|
+
* 设置层级关系
|
|
29
|
+
* @param hierarchy 层级关系:a>b;b>c;c>d;e>f;f>g
|
|
30
|
+
*/
|
|
31
|
+
hierarchy(hierarchy: string): AccessVoterBuilder;
|
|
32
|
+
/**
|
|
33
|
+
* 设置包含全部
|
|
34
|
+
* @param all 包含全部
|
|
35
|
+
*/
|
|
36
|
+
all(all: boolean): AccessVoterBuilder;
|
|
37
|
+
/**
|
|
38
|
+
* 构建
|
|
39
|
+
*/
|
|
40
|
+
build(): AccessVoter;
|
|
41
|
+
}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 访问模块
|
|
3
|
+
*/
|
|
4
|
+
export * from './access';
|
|
5
|
+
/**
|
|
6
|
+
* 构建模块
|
|
7
|
+
*/
|
|
8
|
+
export * from './builder';
|
|
9
|
+
/**
|
|
10
|
+
* 安全模块
|
|
11
|
+
*/
|
|
12
|
+
export * from './security';
|
|
13
|
+
/**
|
|
14
|
+
* 支持模块
|
|
15
|
+
*/
|
|
16
|
+
export * from './support';
|
|
17
|
+
/**
|
|
18
|
+
* 包装模块
|
|
19
|
+
*/
|
|
20
|
+
export * from './warpper';
|
|
21
|
+
/**
|
|
22
|
+
* 插件模块
|
|
23
|
+
*/
|
|
24
|
+
export * from './addons';
|