@cubejs-backend/api-gateway 0.30.38 → 0.30.44
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 +27 -0
- package/dist/src/interfaces.d.ts +2 -2
- package/dist/src/interfaces.d.ts.map +1 -1
- package/dist/src/interfaces.js.map +1 -1
- package/dist/src/sql-server.d.ts +6 -3
- package/dist/src/sql-server.d.ts.map +1 -1
- package/dist/src/sql-server.js +31 -9
- package/dist/src/sql-server.js.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,33 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.30.44](https://github.com/cube-js/cube.js/compare/v0.30.43...v0.30.44) (2022-08-01)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @cubejs-backend/api-gateway
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [0.30.43](https://github.com/cube-js/cube.js/compare/v0.30.42...v0.30.43) (2022-07-28)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Features
|
|
18
|
+
|
|
19
|
+
* **cubesql:** Security Context switching (Row Access) ([731e1ab](https://github.com/cube-js/cube.js/commit/731e1ab6d9362fb9a1857f5276e22a565f79781c))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
## [0.30.42](https://github.com/cube-js/cube.js/compare/v0.30.41...v0.30.42) (2022-07-27)
|
|
26
|
+
|
|
27
|
+
**Note:** Version bump only for package @cubejs-backend/api-gateway
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
6
33
|
## [0.30.38](https://github.com/cube-js/cube.js/compare/v0.30.37...v0.30.38) (2022-07-25)
|
|
7
34
|
|
|
8
35
|
**Note:** Version bump only for package @cubejs-backend/api-gateway
|
package/dist/src/interfaces.d.ts
CHANGED
|
@@ -2,9 +2,9 @@ import type { Request as ExpressRequest, Response as ExpressResponse, NextFuncti
|
|
|
2
2
|
import { QueryTimeDimensionGranularity } from './types/strings';
|
|
3
3
|
import { QueryType } from './types/enums';
|
|
4
4
|
import { QueryFilter, LogicalAndFilter, LogicalOrFilter, QueryTimeDimension, Query, NormalizedQueryFilter, NormalizedQuery } from './types/query';
|
|
5
|
-
import { JWTOptions, CheckAuthFn, CheckSQLAuthSuccessResponse, CheckSQLAuthFn } from './types/auth';
|
|
5
|
+
import { JWTOptions, CheckAuthFn, CheckSQLAuthSuccessResponse, CheckSQLAuthFn, CanSwitchSQLUserFn } from './types/auth';
|
|
6
6
|
import { RequestContext, RequestExtension, ExtendedRequestContext, Request, QueryRewriteFn, SecurityContextExtractorFn, ExtendContextFn } from './types/request';
|
|
7
|
-
export { QueryTimeDimensionGranularity, QueryType, QueryFilter, LogicalAndFilter, LogicalOrFilter, QueryTimeDimension, Query, NormalizedQueryFilter, NormalizedQuery, JWTOptions, CheckAuthFn, CheckSQLAuthSuccessResponse, CheckSQLAuthFn, RequestContext, RequestExtension, ExtendedRequestContext, Request, QueryRewriteFn, SecurityContextExtractorFn, ExtendContextFn, };
|
|
7
|
+
export { QueryTimeDimensionGranularity, QueryType, QueryFilter, LogicalAndFilter, LogicalOrFilter, QueryTimeDimension, Query, NormalizedQueryFilter, NormalizedQuery, JWTOptions, CheckAuthFn, CheckSQLAuthSuccessResponse, CheckSQLAuthFn, CanSwitchSQLUserFn, RequestContext, RequestExtension, ExtendedRequestContext, Request, QueryRewriteFn, SecurityContextExtractorFn, ExtendContextFn, };
|
|
8
8
|
/**
|
|
9
9
|
* Auth middleware.
|
|
10
10
|
* @deprecated
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,IAAI,cAAc,EACzB,QAAQ,IAAI,eAAe,EAC3B,YAAY,IAAI,mBAAmB,EACpC,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,SAAS,EACV,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,KAAK,EACL,qBAAqB,EACrB,eAAe,EAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,WAAW,EACX,2BAA2B,EAC3B,cAAc,
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,IAAI,cAAc,EACzB,QAAQ,IAAI,eAAe,EAC3B,YAAY,IAAI,mBAAmB,EACpC,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,SAAS,EACV,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,KAAK,EACL,qBAAqB,EACrB,eAAe,EAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,WAAW,EACX,2BAA2B,EAC3B,cAAc,EACd,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,OAAO,EACP,cAAc,EACd,0BAA0B,EAC1B,eAAe,EAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,6BAA6B,EAC7B,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,KAAK,EACL,qBAAqB,EACrB,eAAe,EACf,UAAU,EACV,WAAW,EACX,2BAA2B,EAC3B,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,OAAO,EACP,cAAc,EACd,0BAA0B,EAC1B,eAAe,GAChB,CAAC;AAEF;;;GAGG;AACH,oBAAY,qBAAqB,GAChC,CACE,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,mBAAmB,KACtB,IAAI,CAAC;AAEX;;;GAGG;AACH,oBAAY,yBAAyB,GACnC,CACE,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,mBAAmB,KACtB,IAAI,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;AAUA,yCAEuB;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;AAUA,yCAEuB;AAgCrB,0FAjCA,iBAAS,OAiCA"}
|
package/dist/src/sql-server.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import { SqlInterfaceInstance, Request as NativeRequest } from '@cubejs-backend/native';
|
|
1
|
+
import { SqlInterfaceInstance, Request as NativeRequest, LoadRequestMeta } from '@cubejs-backend/native';
|
|
2
2
|
import type { ApiGateway } from './gateway';
|
|
3
|
-
import type { CheckSQLAuthFn, ExtendedRequestContext } from './interfaces';
|
|
3
|
+
import type { CheckSQLAuthFn, ExtendedRequestContext, CanSwitchSQLUserFn } from './interfaces';
|
|
4
4
|
export declare type SQLServerOptions = {
|
|
5
5
|
checkSqlAuth?: CheckSQLAuthFn;
|
|
6
|
+
canSwitchSqlUser?: CanSwitchSQLUserFn;
|
|
6
7
|
sqlPort?: number;
|
|
7
8
|
pgSqlPort?: number;
|
|
8
9
|
sqlNonce?: string;
|
|
9
10
|
sqlUser?: string;
|
|
11
|
+
sqlSuperUser?: string;
|
|
10
12
|
sqlPassword?: string;
|
|
11
13
|
};
|
|
12
14
|
export declare class SQLServer {
|
|
@@ -15,8 +17,9 @@ export declare class SQLServer {
|
|
|
15
17
|
constructor(apiGateway: ApiGateway);
|
|
16
18
|
init(options: SQLServerOptions): Promise<void>;
|
|
17
19
|
protected wrapCheckSqlAuthFn(checkSqlAuth: CheckSQLAuthFn): CheckSQLAuthFn;
|
|
20
|
+
protected createDefaultCanSwitchSqlUserFn(options: SQLServerOptions): CanSwitchSQLUserFn;
|
|
18
21
|
protected createDefaultCheckSqlAuthFn(options: SQLServerOptions): CheckSQLAuthFn;
|
|
19
|
-
protected contextByNativeReq(req: NativeRequest
|
|
22
|
+
protected contextByNativeReq(req: NativeRequest<LoadRequestMeta>, securityContext: any, requestId: string): Promise<ExtendedRequestContext>;
|
|
20
23
|
close(): Promise<void>;
|
|
21
24
|
}
|
|
22
25
|
//# sourceMappingURL=sql-server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-server.d.ts","sourceRoot":"","sources":["../../src/sql-server.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"sql-server.d.ts","sourceRoot":"","sources":["../../src/sql-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,oBAAoB,EACpB,OAAO,IAAI,aAAa,EACxB,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAE/F,oBAAY,gBAAgB,GAAG;IAC7B,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,qBAAa,SAAS;IAIlB,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU;IAH3C,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,GAAG,IAAI,CAAQ;gBAG9C,UAAU,EAAE,UAAU;IAQ9B,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiF3D,SAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,cAAc,GAAG,cAAc;IAe1E,SAAS,CAAC,+BAA+B,CAAC,OAAO,EAAE,gBAAgB,GAAG,kBAAkB;IAYxF,SAAS,CAAC,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,GAAG,cAAc;cAkChE,kBAAkB,CAAC,GAAG,EAAE,aAAa,CAAC,eAAe,CAAC,EAAE,eAAe,KAAA,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAS/H,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAGpC"}
|
package/dist/src/sql-server.js
CHANGED
|
@@ -35,20 +35,23 @@ class SQLServer {
|
|
|
35
35
|
}
|
|
36
36
|
const checkSqlAuth = (options.checkSqlAuth && this.wrapCheckSqlAuthFn(options.checkSqlAuth))
|
|
37
37
|
|| this.createDefaultCheckSqlAuthFn(options);
|
|
38
|
+
const canSwitchSqlUser = options.canSwitchSqlUser
|
|
39
|
+
|| this.createDefaultCanSwitchSqlUserFn(options);
|
|
38
40
|
this.sqlInterfaceInstance = await native_1.registerInterface({
|
|
39
41
|
port: options.sqlPort,
|
|
40
42
|
pgPort: options.pgSqlPort,
|
|
41
43
|
nonce: options.sqlNonce,
|
|
42
44
|
checkAuth: async ({ request, user }) => {
|
|
43
|
-
const { password } = await checkSqlAuth(request, user);
|
|
45
|
+
const { password, superuser } = await checkSqlAuth(request, user);
|
|
44
46
|
// Strip securityContext to improve speed deserialization
|
|
45
47
|
return {
|
|
46
|
-
password
|
|
48
|
+
password,
|
|
49
|
+
superuser: superuser || false,
|
|
47
50
|
};
|
|
48
51
|
},
|
|
49
|
-
meta: async ({ request,
|
|
52
|
+
meta: async ({ request, session }) => {
|
|
50
53
|
// @todo Store security context in native
|
|
51
|
-
const { securityContext } = await checkSqlAuth(request, user);
|
|
54
|
+
const { securityContext } = await checkSqlAuth(request, session.user);
|
|
52
55
|
const context = await this.apiGateway.contextByReq(request, securityContext, request.id);
|
|
53
56
|
// eslint-disable-next-line no-async-promise-executor
|
|
54
57
|
return new Promise(async (resolve, reject) => {
|
|
@@ -65,10 +68,20 @@ class SQLServer {
|
|
|
65
68
|
}
|
|
66
69
|
});
|
|
67
70
|
},
|
|
68
|
-
load: async ({ request,
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
71
|
+
load: async ({ request, session, query }) => {
|
|
72
|
+
let userForContext = session.user;
|
|
73
|
+
if (request.meta.changeUser && request.meta.changeUser !== session.user) {
|
|
74
|
+
const canSwitch = session.superuser || await canSwitchSqlUser(session.user, request.meta.changeUser);
|
|
75
|
+
if (canSwitch) {
|
|
76
|
+
userForContext = request.meta.changeUser;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
throw new Error(`You cannot change security context via __user from ${session.user} to ${request.meta.changeUser}, because it's not allowed.`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// @todo Store security context in native for session's user, but not for switching
|
|
83
|
+
const current = await checkSqlAuth(request, userForContext);
|
|
84
|
+
const context = await this.contextByNativeReq(request, current.securityContext, request.id);
|
|
72
85
|
// eslint-disable-next-line no-async-promise-executor
|
|
73
86
|
return new Promise(async (resolve, reject) => {
|
|
74
87
|
try {
|
|
@@ -101,6 +114,15 @@ class SQLServer {
|
|
|
101
114
|
return response;
|
|
102
115
|
};
|
|
103
116
|
}
|
|
117
|
+
createDefaultCanSwitchSqlUserFn(options) {
|
|
118
|
+
const superUser = options.sqlSuperUser || shared_1.getEnv('sqlSuperUser');
|
|
119
|
+
return async (current, _user) => {
|
|
120
|
+
if (superUser) {
|
|
121
|
+
return current === superUser;
|
|
122
|
+
}
|
|
123
|
+
return false;
|
|
124
|
+
};
|
|
125
|
+
}
|
|
104
126
|
createDefaultCheckSqlAuthFn(options) {
|
|
105
127
|
let allowedUser = options.sqlUser || shared_1.getEnv('sqlUser');
|
|
106
128
|
let allowedPassword = options.sqlPassword || shared_1.getEnv('sqlPassword');
|
|
@@ -116,7 +138,7 @@ class SQLServer {
|
|
|
116
138
|
}
|
|
117
139
|
return async (req, user) => {
|
|
118
140
|
if (allowedUser && user !== allowedUser) {
|
|
119
|
-
throw new Error(
|
|
141
|
+
throw new Error(`Incorrect user name "${user}" or password`);
|
|
120
142
|
}
|
|
121
143
|
return {
|
|
122
144
|
password: allowedPassword,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-server.js","sourceRoot":"","sources":["../../src/sql-server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"sql-server.js","sourceRoot":"","sources":["../../src/sql-server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@cubejs-backend/api-gateway",
|
|
3
3
|
"description": "Cube.js API Gateway",
|
|
4
4
|
"author": "Cube Dev, Inc.",
|
|
5
|
-
"version": "0.30.
|
|
5
|
+
"version": "0.30.44",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/cube-js/cube.js.git",
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"dist/src/*"
|
|
28
28
|
],
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@cubejs-backend/native": "^0.30.
|
|
31
|
-
"@cubejs-backend/shared": "^0.30.
|
|
30
|
+
"@cubejs-backend/native": "^0.30.44",
|
|
31
|
+
"@cubejs-backend/shared": "^0.30.43",
|
|
32
32
|
"@hapi/joi": "^15.1.1",
|
|
33
33
|
"@ungap/structured-clone": "^0.3.4",
|
|
34
34
|
"body-parser": "^1.19.0",
|
|
@@ -81,5 +81,5 @@
|
|
|
81
81
|
".*\\.d\\.ts"
|
|
82
82
|
]
|
|
83
83
|
},
|
|
84
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "b6188933972d9466828c85c1b14501f635d7e730"
|
|
85
85
|
}
|