chyz 1.0.12-rc.8 → 1.0.13-rc.3

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.
Files changed (96) hide show
  1. package/BaseChyz.ts +72 -12
  2. package/Examples/Controllers/ApiController.ts +88 -30
  3. package/Examples/Controllers/KeyCloakController.ts +100 -0
  4. package/Examples/Controllers/PublicController.ts +5 -7
  5. package/Examples/Controllers/SiteController.ts +82 -32
  6. package/Examples/Models/Categories.ts +36 -0
  7. package/Examples/Models/Customer.ts +115 -0
  8. package/Examples/Models/KeycloakUser.ts +66 -0
  9. package/Examples/Models/Order.ts +64 -0
  10. package/Examples/Models/OrderItem.ts +27 -0
  11. package/Examples/Models/ProductModels.ts +50 -0
  12. package/Examples/Models/ProductToCategories.ts +35 -0
  13. package/Examples/Models/Products.ts +49 -0
  14. package/Examples/Models/Stocks.ts +60 -0
  15. package/Examples/Models/User.ts +66 -35
  16. package/Examples/Models/UserPermission.ts +37 -0
  17. package/Examples/index-keycloack.ts +78 -0
  18. package/Examples/index.ts +16 -15
  19. package/Examples/keycloak.json +7 -0
  20. package/Examples/log/app.log +903 -1034
  21. package/Examples/log/errors.log +79 -256
  22. package/Examples/package.json +46 -44
  23. package/Examples/tsconfig.json +1 -1
  24. package/README.md +118 -16
  25. package/base/ActionFilter.ts +2 -2
  26. package/base/BaseError.ts +2 -2
  27. package/base/DataErrorDbException.ts +1 -1
  28. package/base/DbConnection.ts +6 -0
  29. package/base/ForbiddenHttpException.ts +1 -1
  30. package/base/InvalidConfigException.ts +1 -1
  31. package/base/Model.ts +204 -15
  32. package/base/NotFoundHttpException.ts +1 -1
  33. package/base/RestClient.ts +28 -0
  34. package/base/UnauthorizedHttpException.ts +2 -1
  35. package/base/ValidationHttpException.ts +14 -0
  36. package/base/db/Exception.ts +14 -0
  37. package/base/index.ts +2 -0
  38. package/dist/BaseChyz.js +56 -10
  39. package/dist/BaseChyz.js.map +1 -1
  40. package/dist/README.md +270 -0
  41. package/dist/base/ActionFilter.js +2 -2
  42. package/dist/base/ActionFilter.js.map +1 -1
  43. package/dist/base/BaseError.js +2 -2
  44. package/dist/base/BaseError.js.map +1 -1
  45. package/dist/base/DataErrorDbException.js +1 -1
  46. package/dist/base/DataErrorDbException.js.map +1 -1
  47. package/dist/base/DbConnection.js +3 -0
  48. package/dist/base/DbConnection.js.map +1 -1
  49. package/dist/base/ForbiddenHttpException.js +1 -1
  50. package/dist/base/ForbiddenHttpException.js.map +1 -1
  51. package/dist/base/InvalidConfigException.js +1 -1
  52. package/dist/base/InvalidConfigException.js.map +1 -1
  53. package/dist/base/Model.js +181 -13
  54. package/dist/base/Model.js.map +1 -1
  55. package/dist/base/NotFoundHttpException.js +1 -1
  56. package/dist/base/NotFoundHttpException.js.map +1 -1
  57. package/dist/base/RestClient.js +27 -0
  58. package/dist/base/RestClient.js.map +1 -0
  59. package/dist/base/UnauthorizedHttpException.js +1 -1
  60. package/dist/base/UnauthorizedHttpException.js.map +1 -1
  61. package/dist/base/ValidationHttpException.js +18 -0
  62. package/dist/base/ValidationHttpException.js.map +1 -0
  63. package/dist/base/db/Exception.js +16 -0
  64. package/dist/base/db/Exception.js.map +1 -0
  65. package/dist/base/index.js +2 -0
  66. package/dist/base/index.js.map +1 -1
  67. package/dist/filters/AccessControl.js +2 -2
  68. package/dist/filters/AccessControl.js.map +1 -1
  69. package/dist/filters/AccessRule.js.map +1 -1
  70. package/dist/filters/auth/AuthMethod.js +2 -2
  71. package/dist/filters/auth/AuthMethod.js.map +1 -1
  72. package/dist/filters/auth/HttpHeaderAuth.js.map +1 -1
  73. package/dist/filters/auth/JwtHttpBearerAuth.js +1 -0
  74. package/dist/filters/auth/JwtHttpBearerAuth.js.map +1 -1
  75. package/dist/filters/auth/KeyCloakHttpBearerAuth.js +117 -0
  76. package/dist/filters/auth/KeyCloakHttpBearerAuth.js.map +1 -0
  77. package/dist/index.js +28 -0
  78. package/dist/index.js.map +1 -0
  79. package/dist/package.json +55 -0
  80. package/dist/web/{User.js → WebUser.js} +12 -7
  81. package/dist/web/WebUser.js.map +1 -0
  82. package/filters/AccessControl.ts +3 -3
  83. package/filters/AccessRule.ts +2 -2
  84. package/filters/auth/AuthMethod.ts +4 -4
  85. package/filters/auth/HttpHeaderAuth.ts +2 -2
  86. package/filters/auth/JwtHttpBearerAuth.ts +4 -5
  87. package/filters/auth/KeyCloakHttpBearerAuth.ts +115 -0
  88. package/index.ts +14 -0
  89. package/package-lock.json +5259 -0
  90. package/package.json +56 -52
  91. package/web/{User.ts → WebUser.ts} +10 -6
  92. package/.idea/Chy-Nodejs-Framework.iml +0 -12
  93. package/.idea/jsLibraryMappings.xml +0 -6
  94. package/.idea/modules.xml +0 -8
  95. package/.idea/vcs.xml +0 -6
  96. package/dist/web/User.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"NotFoundHttpException.js","sourceRoot":"","sources":["../../base/NotFoundHttpException.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAAsC;AAEtC,MAAa,qBAAsB,SAAQ,qBAAS;IAChD,YAAqB,OAAe;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC;QADE,YAAO,GAAP,OAAO,CAAQ;IAEpC,CAAC;CACJ;AAJD,sDAIC"}
1
+ {"version":3,"file":"NotFoundHttpException.js","sourceRoot":"","sources":["../../base/NotFoundHttpException.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAAsC;AAEtC,MAAa,qBAAsB,SAAQ,qBAAS;IAChD,YAAqB,OAAe;QAChC,KAAK,CAAC,OAAO,EAAC,GAAG,CAAC,CAAC;QADF,YAAO,GAAP,OAAO,CAAQ;IAEpC,CAAC;CACJ;AAJD,sDAIC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ /*
3
+ *
4
+ * Copyright (c) 2021.. Chy Bilgisayar Bilisim
5
+ * Author: Cihan Ozturk
6
+ * E-mail: cihan@chy.com.tr
7
+ * Github:https://github.com/cihan53/
8
+ *
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.RestClient = void 0;
12
+ const Component_1 = require("./Component");
13
+ const axios = require('axios');
14
+ class RestClient extends Component_1.Component {
15
+ post(url, args) {
16
+ return axios.post(url, args);
17
+ }
18
+ get(url, args) {
19
+ return axios.post(url, args);
20
+ }
21
+ Rest(params) {
22
+ return axios(params);
23
+ }
24
+ }
25
+ exports.RestClient = RestClient;
26
+ exports.default = new RestClient();
27
+ //# sourceMappingURL=RestClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RestClient.js","sourceRoot":"","sources":["../../base/RestClient.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAGH,2CAAsC;AAEtC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;AAE9B,MAAa,UAAW,SAAQ,qBAAS;IAC9B,IAAI,CAAC,GAAW,EAAE,IAAW;QAChC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAChC,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,IAAW;QAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAChC,CAAC;IAEM,IAAI,CAAC,MAAW;QACnB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC;CACJ;AAZD,gCAYC;AACD,kBAAe,IAAI,UAAU,EAAE,CAAC"}
@@ -10,7 +10,7 @@ exports.UnauthorizedHttpException = void 0;
10
10
  const BaseError_1 = require("./BaseError");
11
11
  class UnauthorizedHttpException extends BaseError_1.BaseError {
12
12
  constructor(message) {
13
- super(message);
13
+ super(message, 401);
14
14
  this.message = message;
15
15
  }
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UnauthorizedHttpException.js","sourceRoot":"","sources":["../../base/UnauthorizedHttpException.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAAsC;AAEtC,MAAa,yBAA0B,SAAQ,qBAAS;IACpD,YAAqB,OAAe;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC;QADE,YAAO,GAAP,OAAO,CAAQ;IAEpC,CAAC;CACJ;AAJD,8DAIC"}
1
+ {"version":3,"file":"UnauthorizedHttpException.js","sourceRoot":"","sources":["../../base/UnauthorizedHttpException.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAAsC;AAEtC,MAAa,yBAA0B,SAAQ,qBAAS;IACpD,YAAqB,OAAe;QAChC,KAAK,CAAC,OAAO,EAAC,GAAG,CAAC,CAAC;QADF,YAAO,GAAP,OAAO,CAAQ;IAEpC,CAAC;CAEJ;AALD,8DAKC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2021. Chy Bilgisayar Bilisim
4
+ * Author: Cihan Ozturk
5
+ * E-mail: cihan@chy.com.tr
6
+ * Github:https://github.com/cihan53/
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ValidationHttpException = void 0;
10
+ const BaseError_1 = require("./BaseError");
11
+ class ValidationHttpException extends BaseError_1.BaseError {
12
+ constructor(message) {
13
+ super(message, 401);
14
+ this.message = message;
15
+ }
16
+ }
17
+ exports.ValidationHttpException = ValidationHttpException;
18
+ //# sourceMappingURL=ValidationHttpException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidationHttpException.js","sourceRoot":"","sources":["../../base/ValidationHttpException.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2CAAsC;AAEtC,MAAa,uBAAwB,SAAQ,qBAAS;IAClD,YAAqB,OAAe;QAChC,KAAK,CAAC,OAAO,EAAC,GAAG,CAAC,CAAC;QADF,YAAO,GAAP,OAAO,CAAQ;IAEpC,CAAC;CACJ;AAJD,0DAIC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Exception = void 0;
4
+ const BaseError_1 = require("../BaseError");
5
+ class Exception extends BaseError_1.BaseError {
6
+ constructor(message, errorInfo = [], code = '', previous = null) {
7
+ super(message);
8
+ this.errorInfo = [];
9
+ this.errorInfo = errorInfo;
10
+ this.name = 'Database Exception'; // good practice
11
+ this.code = code; // error code for responding to client
12
+ Error.captureStackTrace(this);
13
+ }
14
+ }
15
+ exports.Exception = Exception;
16
+ //# sourceMappingURL=Exception.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Exception.js","sourceRoot":"","sources":["../../../base/db/Exception.ts"],"names":[],"mappings":";;;AAAA,4CAAuC;AAEvC,MAAa,SAAU,SAAQ,qBAAS;IAIpC,YAAY,OAAe,EAAE,YAAgB,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,GAAG,IAAI;QACvE,KAAK,CAAC,OAAO,CAAC,CAAC;QAJZ,cAAS,GAAG,EAAE,CAAC;QAKlB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAA,CAAC,gBAAgB;QACjD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA,CAAC,sCAAsC;QACvD,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;CACJ;AAXD,8BAWC"}
@@ -23,5 +23,7 @@ __exportStar(require("./InvalidConfigException"), exports);
23
23
  __exportStar(require("./NotFoundHttpException"), exports);
24
24
  __exportStar(require("./UnauthorizedHttpException"), exports);
25
25
  __exportStar(require("./DataErrorDbException"), exports);
26
+ __exportStar(require("./ValidationHttpException"), exports);
26
27
  __exportStar(require("./Model"), exports);
28
+ __exportStar(require("./RestClient"), exports);
27
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA8B;AAC9B,+CAA4B;AAC5B,8CAA2B;AAC3B,6CAA0B;AAC1B,8CAA2B;AAC3B,iDAA8B;AAC9B,+CAA4B;AAC5B,iDAA8B;AAC9B,2DAAwC;AACxC,2DAAwC;AACxC,0DAAuC;AACvC,8DAA2C;AAC3C,yDAAsC;AACtC,0CAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA8B;AAC9B,+CAA4B;AAC5B,8CAA2B;AAC3B,6CAA0B;AAC1B,8CAA2B;AAC3B,iDAA8B;AAC9B,+CAA4B;AAC5B,iDAA8B;AAC9B,2DAAwC;AACxC,2DAAwC;AACxC,0DAAuC;AACvC,8DAA2C;AAC3C,yDAAsC;AACtC,4DAAyC;AACzC,0CAAuB;AACvB,+CAA4B"}
@@ -23,7 +23,7 @@ const BaseChyz_1 = __importDefault(require("../BaseChyz"));
23
23
  const ForbiddenHttpException_1 = require("../base/ForbiddenHttpException");
24
24
  const ActionFilter_1 = require("../base/ActionFilter");
25
25
  const AccessRule_1 = require("./AccessRule");
26
- const User_1 = require("../web/User");
26
+ const WebUser_1 = require("../web/WebUser");
27
27
  const Utils_1 = __importDefault(require("../requiments/Utils"));
28
28
  var _ = require('lodash');
29
29
  class AccessControl extends ActionFilter_1.ActionFilter {
@@ -35,7 +35,7 @@ class AccessControl extends ActionFilter_1.ActionFilter {
35
35
  var _a;
36
36
  super.init();
37
37
  if (this.user == undefined) {
38
- this.user = (_a = Utils_1.default.cloneDeep(BaseChyz_1.default.getComponent("user"))) !== null && _a !== void 0 ? _a : new User_1.User();
38
+ this.user = (_a = Utils_1.default.cloneDeep(BaseChyz_1.default.getComponent("user"))) !== null && _a !== void 0 ? _a : new WebUser_1.WebUser();
39
39
  }
40
40
  this.rules.forEach((rule, index) => {
41
41
  if (rule === Object(rule)) {
@@ -1 +1 @@
1
- {"version":3,"file":"AccessControl.js","sourceRoot":"","sources":["../../filters/AccessControl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,2DAAmC;AACnC,2EAAsE;AACtE,uDAAkD;AAClD,6CAAwC;AACxC,sCAAiC;AACjC,gEAAwC;AAGxC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAG1B,MAAa,aAAc,SAAQ,2BAAY;IAA/C;;QAEW,SAAI,GAAQ,IAAI,CAAC;IA4C5B,CAAC;IAzCU,IAAI;;QACP,KAAK,CAAC,IAAI,EAAE,CAAA;QAEZ,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE;YACxB,IAAI,CAAC,IAAI,GAAG,MAAA,eAAK,CAAC,SAAS,CAAC,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,mCAAI,IAAI,WAAI,EAAE,CAAC;SAC5E;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAQ,EAAE,KAAY,EAAE,EAAE;YAC1C,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,eAAK,CAAC,YAAY,CAAC,IAAI,uBAAU,EAAE,EAAE,IAAI,CAAC,CAAC;aAClE;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAGY,YAAY,CAAC,MAAU,EAAE,OAAe;;;YACjD,IAAI,KAAK,CAAC;YACV,aAAa;YACb,IAAI,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,IAAI,CAAC,IAAI,CAAC;YACrC,aAAa;YACb,IAAI,CAAC,QAAQ,GAAG,MAAA,OAAO,CAAC,QAAQ,mCAAI,IAAI,CAAC;YAEzC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE;gBAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE;oBAC9D,OAAO,IAAI,CAAC;iBACf;qBAAM,IAAI,KAAK,KAAK,KAAK,EAAE;oBACxB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAEtB,OAAO,KAAK,CAAC;iBAChB;aACJ;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,KAAK,CAAC;;KAChB;IAEM,UAAU,CAAC,IAAU;QACxB,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACxC,IAAI,CAAC,aAAa,EAAE,CAAC;SACxB;;YAAM,MAAM,IAAI,+CAAsB,CAAC,kBAAQ,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC;IACvG,CAAC;CAEJ;AA9CD,sCA8CC"}
1
+ {"version":3,"file":"AccessControl.js","sourceRoot":"","sources":["../../filters/AccessControl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,2DAAmC;AACnC,2EAAsE;AACtE,uDAAkD;AAClD,6CAAwC;AACxC,4CAAuC;AACvC,gEAAwC;AAGxC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAG1B,MAAa,aAAc,SAAQ,2BAAY;IAA/C;;QAEW,SAAI,GAAQ,IAAI,CAAC;IA4C5B,CAAC;IAzCU,IAAI;;QACP,KAAK,CAAC,IAAI,EAAE,CAAA;QAEZ,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE;YACxB,IAAI,CAAC,IAAI,GAAG,MAAA,eAAK,CAAC,SAAS,CAAC,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,mCAAI,IAAI,iBAAO,EAAE,CAAC;SAC/E;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAQ,EAAE,KAAY,EAAE,EAAE;YAC1C,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,eAAK,CAAC,YAAY,CAAC,IAAI,uBAAU,EAAE,EAAE,IAAI,CAAC,CAAC;aAClE;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAGY,YAAY,CAAC,MAAU,EAAE,OAAe;;;YACjD,IAAI,KAAK,CAAC;YACV,aAAa;YACb,IAAI,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,IAAI,CAAC,IAAI,CAAC;YACrC,aAAa;YACb,IAAI,CAAC,QAAQ,GAAG,MAAA,OAAO,CAAC,QAAQ,mCAAI,IAAI,CAAC;YAEzC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE;gBAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE;oBAC9D,OAAO,IAAI,CAAC;iBACf;qBAAM,IAAI,KAAK,KAAK,KAAK,EAAE;oBACxB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAEtB,OAAO,KAAK,CAAC;iBAChB;aACJ;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,KAAK,CAAC;;KAChB;IAEM,UAAU,CAAC,IAAa;QAC3B,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACxC,IAAI,CAAC,aAAa,EAAE,CAAC;SACxB;;YAAM,MAAM,IAAI,+CAAsB,CAAC,kBAAQ,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC;IACvG,CAAC;CAEJ;AA9CD,sCA8CC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AccessRule.js","sourceRoot":"","sources":["../../filters/AccessRule.ts"],"names":[],"mappings":";;;AAQA,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC1B,iDAA4C;AAC5C,2EAAsE;AAGtE,MAAa,UAAW,SAAQ,qBAAS;IAwC9B,MAAM,CAAC,MAAU,EAAE,IAAS,EAAE,OAAe;QAChD,IACI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;eACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EACzB;YACE,OAAO,IAAI,CAAC,KAAK,CAAA;SACpB;QACD,oCAAoC;QACpC,mCAAmC;QACnC,yCAAyC;QACzC,2CAA2C;QAC3C,+CAA+C;QAC/C,+BAA+B;QAC/B,MAAM;QACN,0CAA0C;QAC1C,IAAI;QAEJ,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACO,WAAW,CAAC,MAAU;QAC5B,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACO,eAAe,CAAC,UAAc;QACpC,uCAAuC;QACvC,uBAAuB;QACvB,QAAQ;QACR,EAAE;QACF,wCAAwC;QACxC,iDAAiD;QACjD,wDAAwD;QACxD,uBAAuB;QACvB,QAAQ;QACR,IAAI;QAEJ,OAAO,KAAK,CAAC;IACjB,CAAC;IAES,SAAS,CAAC,IAAQ;QACxB,IAAI,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAEpD,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC9B,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAClB,OAAO,IAAI,CAAC;SACf;QAGD,IAAI,IAAI,KAAK,KAAK,EAAE;YAChB,MAAM,IAAI,+CAAsB,CAAC,kFAAkF,CAAC,CAAC;SACxH;QAED,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE;YAC1B,IAAI,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,IAAI,KAAK,GAAG,EAAE;gBACd,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;oBACnB,OAAO,IAAI,CAAC;iBACf;aACJ;iBAAM,IAAI,IAAI,KAAK,GAAG,EAAE;gBACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;oBACpB,OAAO,IAAI,CAAC;iBACf;aACJ;iBAAM;gBACH,YAAY;aACf;SACJ;QAGD,OAAO,KAAK,CAAC;IACjB,CAAC;CAGJ;AA3HD,gCA2HC"}
1
+ {"version":3,"file":"AccessRule.js","sourceRoot":"","sources":["../../filters/AccessRule.ts"],"names":[],"mappings":";;;AAQA,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC1B,iDAA4C;AAC5C,2EAAsE;AAGtE,MAAa,UAAW,SAAQ,qBAAS;IAwC9B,MAAM,CAAC,MAAU,EAAE,IAAY,EAAE,OAAe;QACnD,IACI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;eACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EACzB;YACE,OAAO,IAAI,CAAC,KAAK,CAAA;SACpB;QACD,oCAAoC;QACpC,mCAAmC;QACnC,yCAAyC;QACzC,2CAA2C;QAC3C,+CAA+C;QAC/C,+BAA+B;QAC/B,MAAM;QACN,0CAA0C;QAC1C,IAAI;QAEJ,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACO,WAAW,CAAC,MAAU;QAC5B,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACO,eAAe,CAAC,UAAc;QACpC,uCAAuC;QACvC,uBAAuB;QACvB,QAAQ;QACR,EAAE;QACF,wCAAwC;QACxC,iDAAiD;QACjD,wDAAwD;QACxD,uBAAuB;QACvB,QAAQ;QACR,IAAI;QAEJ,OAAO,KAAK,CAAC;IACjB,CAAC;IAES,SAAS,CAAC,IAAQ;QACxB,IAAI,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAEpD,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC9B,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAClB,OAAO,IAAI,CAAC;SACf;QAGD,IAAI,IAAI,KAAK,KAAK,EAAE;YAChB,MAAM,IAAI,+CAAsB,CAAC,kFAAkF,CAAC,CAAC;SACxH;QAED,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE;YAC1B,IAAI,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,IAAI,KAAK,GAAG,EAAE;gBACd,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;oBACnB,OAAO,IAAI,CAAC;iBACf;aACJ;iBAAM,IAAI,IAAI,KAAK,GAAG,EAAE;gBACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;oBACpB,OAAO,IAAI,CAAC;iBACf;aACJ;iBAAM;gBACH,YAAY;aACf;SACJ;QAGD,OAAO,KAAK,CAAC;IACjB,CAAC;CAGJ;AA3HD,gCA2HC"}
@@ -18,7 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.AuthMethod = void 0;
19
19
  const ActionFilter_1 = require("../../base/ActionFilter");
20
20
  const UnauthorizedHttpException_1 = require("../../base/UnauthorizedHttpException");
21
- const User_1 = require("../../web/User");
21
+ const WebUser_1 = require("../../web/WebUser");
22
22
  class AuthMethod extends ActionFilter_1.ActionFilter {
23
23
  constructor() {
24
24
  super(...arguments);
@@ -27,7 +27,7 @@ class AuthMethod extends ActionFilter_1.ActionFilter {
27
27
  beforeAction(action, request, response) {
28
28
  var _a;
29
29
  return __awaiter(this, void 0, void 0, function* () {
30
- let identity = yield this.authenticate((_a = this.user) !== null && _a !== void 0 ? _a : new User_1.User(), request, response);
30
+ let identity = yield this.authenticate((_a = this.user) !== null && _a !== void 0 ? _a : new WebUser_1.WebUser(), request, response);
31
31
  // @ts-ignore
32
32
  request.identity = identity;
33
33
  if (identity !== null) {
@@ -1 +1 @@
1
- {"version":3,"file":"AuthMethod.js","sourceRoot":"","sources":["../../../filters/auth/AuthMethod.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;AAEH,0DAAqD;AAErD,oFAA+E;AAC/E,yCAAoC;AAGpC,MAAsB,UAAW,SAAQ,2BAAY;IAArD;;QAkBW,aAAQ,GAAG,EAAE,CAAC;IAwDzB,CAAC;IAtDgB,YAAY,CAAC,MAAW,EAAE,OAAgB,EAAE,QAAkB;;;YACvE,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAClC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,WAAI,EAAE,EACvB,OAAO,EACP,QAAQ,CACX,CAAA;YAGD,aAAa;YACb,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAE5B,IAAI,QAAQ,KAAK,IAAI,EAAE;gBACnB,OAAO,IAAI,CAAC;aACf;YAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC;;KAChB;IAED,YAAY,CAAC,IAAU,EAAE,OAAgB,EAAE,QAAkB;IAE7D,CAAC;IAED,aAAa;IACb,SAAS,CAAC,QAAkB;IAC5B,CAAC;IAED,aAAa;IACb,aAAa,CAAC,QAAkB;QAC5B,MAAM,IAAI,qDAAyB,CAAC,iDAAiD,CAAC,CAAC;IAC3F,CAAC;IAED,cAAc,CAAC,OAAY,EAAE,OAAY;QACrC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;QACvF,IAAI,GAAG,EAAE;YACL,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;SACvB;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAED,YAAY,CAAC,UAAc,EAAE,OAAc;QACvC,IAAI,OAAO,EAAE;YACT,IAAI,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/B,OAAO,OAAO,CAAC;aAClB;iBAAM;gBACH,OAAO,IAAI,CAAA;aACd;SACJ;QAED,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AA1ED,gCA0EC"}
1
+ {"version":3,"file":"AuthMethod.js","sourceRoot":"","sources":["../../../filters/auth/AuthMethod.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;AAEH,0DAAqD;AAErD,oFAA+E;AAC/E,+CAA0C;AAG1C,MAAsB,UAAW,SAAQ,2BAAY;IAArD;;QAkBW,aAAQ,GAAG,EAAE,CAAC;IAwDzB,CAAC;IAtDgB,YAAY,CAAC,MAAW,EAAE,OAAgB,EAAE,QAAkB;;;YACvE,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAClC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,iBAAO,EAAE,EAC1B,OAAO,EACP,QAAQ,CACX,CAAA;YAGD,aAAa;YACb,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAE5B,IAAI,QAAQ,KAAK,IAAI,EAAE;gBACnB,OAAO,IAAI,CAAC;aACf;YAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC;;KAChB;IAED,YAAY,CAAC,IAAa,EAAE,OAAgB,EAAE,QAAkB;IAEhE,CAAC;IAED,aAAa;IACb,SAAS,CAAC,QAAkB;IAC5B,CAAC;IAED,aAAa;IACb,aAAa,CAAC,QAAkB;QAC5B,MAAM,IAAI,qDAAyB,CAAC,iDAAiD,CAAC,CAAC;IAC3F,CAAC;IAED,cAAc,CAAC,OAAY,EAAE,OAAY;QACrC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;QACvF,IAAI,GAAG,EAAE;YACL,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;SACvB;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAED,YAAY,CAAC,UAAc,EAAE,OAAc;QACvC,IAAI,OAAO,EAAE;YACT,IAAI,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/B,OAAO,OAAO,CAAC;aAClB;iBAAM;gBACH,OAAO,IAAI,CAAA;aACd;SACJ;QAED,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AA1ED,gCA0EC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpHeaderAuth.js","sourceRoot":"","sources":["../../../filters/auth/HttpHeaderAuth.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;AAEH,6CAAwC;AAExC,mEAA2C;AAG3C,MAAa,cAAe,SAAQ,uBAAU;IAA9C;;QACI;;WAEG;QACI,WAAM,GAAG,WAAW,CAAC;IAoChC,CAAC;IA1BS,YAAY,CAAC,IAAU,EAAE,OAAe,EAAE,QAAiB;;YAC7D,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;YACnG,IAAI,GAAG,EAAE;gBACL,IAAI,UAAU,GAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC1C,IAAI,CAAC,eAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBAC5B,IAAI,IAAI,CAAC,OAAO,EAAE;wBACd,YAAY;wBACZ,IAAI,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;wBAC5C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC/B,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;yBAC3B;6BAAM;4BACH,OAAO,IAAI,CAAC;yBACf;qBACJ;oBAED,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;oBAC3E,IAAI,QAAQ,KAAK,IAAI,EAAE;wBACnB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;wBACzB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;qBAChC;oBAED,OAAO,QAAQ,CAAC;iBACnB;aACJ;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AAxCD,wCAwCC"}
1
+ {"version":3,"file":"HttpHeaderAuth.js","sourceRoot":"","sources":["../../../filters/auth/HttpHeaderAuth.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;AAEH,6CAAwC;AAExC,mEAA2C;AAG3C,MAAa,cAAe,SAAQ,uBAAU;IAA9C;;QACI;;WAEG;QACI,WAAM,GAAG,WAAW,CAAC;IAoChC,CAAC;IA1BS,YAAY,CAAC,IAAa,EAAE,OAAe,EAAE,QAAiB;;YAChE,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;YACnG,IAAI,GAAG,EAAE;gBACL,IAAI,UAAU,GAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC1C,IAAI,CAAC,eAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBAC5B,IAAI,IAAI,CAAC,OAAO,EAAE;wBACd,YAAY;wBACZ,IAAI,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;wBAC5C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC/B,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;yBAC3B;6BAAM;4BACH,OAAO,IAAI,CAAC;yBACf;qBACJ;oBAED,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;oBAC3E,IAAI,QAAQ,KAAK,IAAI,EAAE;wBACnB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;wBACzB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;qBAChC;oBAED,OAAO,QAAQ,CAAC;iBACnB;aACJ;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AAxCD,wCAwCC"}
@@ -50,6 +50,7 @@ class JwtHttpBearerAuth extends HttpBearerAuth_1.HttpBearerAuth {
50
50
  if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
51
51
  return null;
52
52
  }
53
+ BaseChyz_1.default.debug("JSON Web Token.", autHeader);
53
54
  let identity = null;
54
55
  let token = null;
55
56
  token = JsonWebToken.decode(autHeader[1], { complete: true });
@@ -1 +1 @@
1
- {"version":3,"file":"JwtHttpBearerAuth.js","sourceRoot":"","sources":["../../../filters/auth/JwtHttpBearerAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,8DAAsC;AACtC,qDAAgD;AAChD,8EAAyE;AAKzE,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE7C,MAAa,iBAAkB,SAAQ,+BAAc;IAArD;;QACI;;;WAGG;QACI,QAAG,GAAG,KAAK,CAAA;QACX,SAAI,GAAO,IAAI,CAAC;IA2D3B,CAAC;IAzDG;;OAEG;IACI,IAAI;;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,MAAM,IAAI,+CAAsB,CAAC,2EAA2E,CAAC,CAAC;SACjH;QAED,IAAI,CAAC,IAAI,GAAG,MAAA,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,mCAAI,IAAI,CAAC;IACtD,CAAC;IAGY,YAAY,CAAC,IAAS,EAAE,OAAe,EAAE,QAAiB;;YAGnE,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAEjE,IAAI,SAAS,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE;gBACvF,OAAO,IAAI,CAAC;aACf;YAGD,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,GAAG,IAAI,CAAC;YAGjB,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;YAC3D,IAAI,CAAC,KAAK,EAAE;gBACR,kBAAQ,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC;gBAClF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACvB;YAED,IAAI,KAAK,KAAK,IAAI,EAAE;gBAChB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;oBACnB,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC3C;qBAAM;oBACH,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;iBAC9E;aACJ;YAED,IAAI,QAAQ,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAGzC,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;IAGD;;OAEG;IACI,IAAI,CAAC,QAAiB;QACzB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QACxB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;CAEJ;AAjED,8CAiEC"}
1
+ {"version":3,"file":"JwtHttpBearerAuth.js","sourceRoot":"","sources":["../../../filters/auth/JwtHttpBearerAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,8DAAsC;AACtC,qDAAgD;AAChD,8EAAyE;AAKzE,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE7C,MAAa,iBAAkB,SAAQ,+BAAc;IAArD;;QACI;;;WAGG;QACI,QAAG,GAAG,KAAK,CAAA;QACX,SAAI,GAAO,IAAI,CAAC;IA0D3B,CAAC;IAvDG;;OAEG;IACI,IAAI;;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,MAAM,IAAI,+CAAsB,CAAC,2EAA2E,CAAC,CAAC;SACjH;QAED,IAAI,CAAC,IAAI,GAAG,MAAA,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,mCAAI,IAAI,CAAC;IACtD,CAAC;IAGY,YAAY,CAAC,IAAY,EAAE,OAAe,EAAE,QAAiB;;YAGtE,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,SAAS,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE;gBACvF,OAAO,IAAI,CAAC;aACf;YAED,kBAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,GAAG,IAAI,CAAC;YAEjB,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;YAC3D,IAAI,CAAC,KAAK,EAAE;gBACR,kBAAQ,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC;gBAClF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACvB;YAED,IAAI,KAAK,KAAK,IAAI,EAAE;gBAChB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;oBACnB,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC3C;qBAAM;oBACH,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;iBAC9E;aACJ;YAED,IAAI,QAAQ,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAGzC,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;IAGD;;OAEG;IACI,IAAI,CAAC,QAAiB;QACzB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QACxB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;CAEJ;AAhED,8CAgEC"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.KeyCloakHttpBearerAuth = void 0;
16
+ /*
17
+ * Copyright (c) 2021. Chy Bilgisayar Bilisim
18
+ * Author: Cihan Ozturk
19
+ * E-mail: cihan@chy.com.tr
20
+ * Github:https://github.com/cihan53/
21
+ */
22
+ const BaseChyz_1 = __importDefault(require("../../BaseChyz"));
23
+ const HttpBearerAuth_1 = require("./HttpBearerAuth");
24
+ const InvalidConfigException_1 = require("../../base/InvalidConfigException");
25
+ const JsonWebToken = require("jsonwebtoken");
26
+ class KeyCloakHttpBearerAuth extends HttpBearerAuth_1.HttpBearerAuth {
27
+ constructor() {
28
+ super(...arguments);
29
+ /**
30
+ * @var string|array<string, mixed>|Jwt application component ID of the JWT handler, configuration array, or JWT handler object
31
+ * itself. By default it's assumes that component of ID "jwt" has been configured.
32
+ */
33
+ this.jwt = 'jwt';
34
+ this.auth = null;
35
+ this.keycloak = null;
36
+ }
37
+ /**
38
+ * @throws InvalidConfigException
39
+ */
40
+ init() {
41
+ var _a, _b;
42
+ super.init();
43
+ if (!this.pattern) {
44
+ throw new InvalidConfigException_1.InvalidConfigException('You must provide pattern to use to extract the HTTP authentication value!');
45
+ }
46
+ this.keycloak = (_a = BaseChyz_1.default.getMiddlewares("keycloak").keycloak) !== null && _a !== void 0 ? _a : null;
47
+ this.user = (_b = BaseChyz_1.default.getComponent("user")) !== null && _b !== void 0 ? _b : null;
48
+ this.auth = this.KeyCloakCheck;
49
+ }
50
+ KeyCloakCheck(token, request, response) {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ if (this.keycloak == null)
53
+ return false;
54
+ // return await this.keycloak.protect('realm:user')(request, response, () => true /*next*/)
55
+ return yield this.keycloak.protect()(request, response, () => true /*next*/);
56
+ });
57
+ }
58
+ authenticate(user, request, response) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ let identity = null;
61
+ let token = null;
62
+ let autHeader = this.getHeaderByKey(request.headers, this.header);
63
+ if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
64
+ return null;
65
+ }
66
+ token = JsonWebToken.decode(autHeader[1], { complete: true });
67
+ if (!token) {
68
+ BaseChyz_1.default.warning("Your request was made with invalid or expired JSON Web Token.");
69
+ this.fail(response);
70
+ }
71
+ if (token !== null) {
72
+ identity = yield this.KeyCloakCheck(autHeader[1], request, response);
73
+ BaseChyz_1.default.debug("KeyCloakCheck Result:", identity);
74
+ }
75
+ if (identity == null || identity == false)
76
+ this.fail(response);
77
+ return identity;
78
+ /* let autHeader = this.getHeaderByKey(request.headers, this.header)
79
+ if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
80
+ return null;
81
+ }
82
+
83
+ BaseChyz.debug("JSON Web Token.",autHeader);
84
+ let identity = null;
85
+ let token = null;
86
+
87
+ token = JsonWebToken.decode(autHeader[1], {complete: true})
88
+ if (!token) {
89
+ BaseChyz.warning("Your request was made with invalid or expired JSON Web Token.");
90
+ this.fail(response);
91
+ }
92
+
93
+ if (token !== null) {
94
+ if (this.auth != null) {
95
+ identity = await this.auth(autHeader[1])
96
+ } else {
97
+ identity = await user.loginByAccessToken(autHeader[1], "JwtHttpBearerAuth")
98
+ }
99
+ }
100
+
101
+ if (identity == null) this.fail(response)
102
+
103
+
104
+
105
+ return identity;*/
106
+ });
107
+ }
108
+ /**
109
+ * @throws UnauthorizedHttpException
110
+ */
111
+ fail(response) {
112
+ // this.challenge(response)
113
+ // this.handleFailure(response);
114
+ }
115
+ }
116
+ exports.KeyCloakHttpBearerAuth = KeyCloakHttpBearerAuth;
117
+ //# sourceMappingURL=KeyCloakHttpBearerAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeyCloakHttpBearerAuth.js","sourceRoot":"","sources":["../../../filters/auth/KeyCloakHttpBearerAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,8DAAsC;AACtC,qDAAgD;AAChD,8EAAyE;AAKzE,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE7C,MAAa,sBAAuB,SAAQ,+BAAc;IAA1D;;QACI;;;WAGG;QACI,QAAG,GAAG,KAAK,CAAA;QACX,SAAI,GAAQ,IAAI,CAAC;QACjB,aAAQ,GAAQ,IAAI,CAAC;IA4FhC,CAAC;IAzFG;;OAEG;IACI,IAAI;;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,MAAM,IAAI,+CAAsB,CAAC,2EAA2E,CAAC,CAAC;SACjH;QAED,IAAI,CAAC,QAAQ,GAAG,MAAA,kBAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,QAAQ,mCAAI,IAAI,CAAC;QACrE,IAAI,CAAC,IAAI,GAAG,MAAA,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,mCAAI,IAAI,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC;IAGnC,CAAC;IAEY,aAAa,CAAC,KAAa,EAAE,OAAgB,EAAE,QAAkB;;YAC1E,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI;gBAAE,OAAO,KAAK,CAAC;YACxC,2FAA2F;YAC3F,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjF,CAAC;KAAA;IAGY,YAAY,CAAC,IAAa,EAAE,OAAgB,EAAE,QAAkB;;YAGzE,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,GAAG,IAAI,CAAC;YAEjB,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,SAAS,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE;gBACvF,OAAO,IAAI,CAAC;aACf;YAED,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;YAC3D,IAAI,CAAC,KAAK,EAAE;gBACR,kBAAQ,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC;gBAClF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACvB;YAED,IAAI,KAAK,KAAK,IAAI,EAAE;gBAChB,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;gBACpE,kBAAQ,CAAC,KAAK,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAA;aACpD;YAED,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,IAAI,KAAK;gBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAE9D,OAAO,QAAQ,CAAC;YAEhB;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA2BmB;QACvB,CAAC;KAAA;IAGD;;OAEG;IACI,IAAI,CAAC,QAAkB;QAC1B,2BAA2B;QAC3B,gCAAgC;IACpC,CAAC;CAEJ;AAnGD,wDAmGC"}
package/dist/index.js ADDED
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ var __importDefault = (this && this.__importDefault) || function (mod) {
13
+ return (mod && mod.__esModule) ? mod : { "default": mod };
14
+ };
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.BaseChyz = exports.WebUser = void 0;
17
+ __exportStar(require("./base"), exports);
18
+ __exportStar(require("./filters"), exports);
19
+ __exportStar(require("./filters/auth"), exports);
20
+ __exportStar(require("./decorator"), exports);
21
+ __exportStar(require("./requiments/Utils"), exports);
22
+ var WebUser_1 = require("./web/WebUser");
23
+ Object.defineProperty(exports, "WebUser", { enumerable: true, get: function () { return WebUser_1.WebUser; } });
24
+ const BaseChyz_1 = __importDefault(require("./BaseChyz"));
25
+ exports.BaseChyz = BaseChyz_1.default;
26
+ const Chyz = new BaseChyz_1.default();
27
+ exports.default = Chyz;
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,yCAAuB;AACvB,4CAA0B;AAC1B,iDAA+B;AAC/B,8CAA4B;AAC5B,qDAAmC;AAEnC,yCAAsC;AAA9B,kGAAA,OAAO,OAAA;AAEf,0DAAkC;AAC1B,mBADD,kBAAQ,CACC;AAEhB,MAAM,IAAI,GAAG,IAAI,kBAAQ,EAAE,CAAC;AAC5B,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "chyz",
3
+ "version": "1.0.13-rc.3",
4
+ "description": "Nodejs MicroServis Framework",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "dev": "nodemon index.ts",
8
+ "debug": "ts-node index.ts",
9
+ "build": "rmdir /S /Q .\\dist && npx tsc && xcopy .\\log .\\dist\\log /e /i /h /Y && copy .\\package.json .\\dist\\package.json && copy .\\README.md .\\dist\\README.md ",
10
+ "test": "echo \"Error: no test specified\" && exit 1",
11
+ "postversion": "git push && git push --tags"
12
+ },
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git+https://github.com/cihan53/Chy-Nodejs-Framework.git"
16
+ },
17
+ "author": "Cihan Ozturk",
18
+ "license": "MIT",
19
+ "bugs": {
20
+ "url": "https://github.com/cihan53/Chy-Nodejs-Framework/issues"
21
+ },
22
+ "homepage": "https://github.com/cihan53/Chy-Nodejs-Framework#readme",
23
+ "dependencies": {
24
+ "axios": "^0.23.0",
25
+ "babel-plugin-transform-decorators-legacy": "^1.3.5",
26
+ "body-parser": "^1.19.0",
27
+ "dotenv-flow": "^3.2.0",
28
+ "express": "^4.17.1",
29
+ "express-session": "^1.17.2",
30
+ "glob": "^7.1.7",
31
+ "ip": "^1.1.5",
32
+ "jsonwebtoken": "^8.5.1",
33
+ "lodash": "^4.17.21",
34
+ "log4js": "^6.3.0",
35
+ "method-override": "^3.0.0",
36
+ "passport": "^0.4.1",
37
+ "pg": "^8.7.1",
38
+ "pg-hstore": "^2.3.4",
39
+ "reflect-metadata": "^0.1.13",
40
+ "sequelize": "^6.6.5"
41
+ },
42
+ "devDependencies": {
43
+ "@types/express": "^4.17.13",
44
+ "@types/node": "^16.6.1",
45
+ "@types/validator": "^13.6.3",
46
+ "nodemon": "^2.0.12",
47
+ "ts-node": "^10.2.0",
48
+ "typescript": "^4.3.5"
49
+ },
50
+ "keywords": [
51
+ "Framework",
52
+ "RespAPI",
53
+ "microservice"
54
+ ]
55
+ }
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.User = void 0;
15
+ exports.WebUser = void 0;
16
16
  /*
17
17
  * Copyright (c) 2021. Chy Bilgisayar Bilisim
18
18
  * Author: Cihan Ozturk
@@ -23,7 +23,7 @@ const BaseChyz_1 = __importDefault(require("../BaseChyz"));
23
23
  const Component_1 = require("../base/Component");
24
24
  const ForbiddenHttpException_1 = require("../base/ForbiddenHttpException");
25
25
  const InvalidConfigException_1 = require("../base/InvalidConfigException");
26
- class User extends Component_1.Component {
26
+ class WebUser extends Component_1.Component {
27
27
  get identity() {
28
28
  return this._identity;
29
29
  }
@@ -61,9 +61,14 @@ class User extends Component_1.Component {
61
61
  loginByAccessToken(token, type = null) {
62
62
  return __awaiter(this, void 0, void 0, function* () {
63
63
  let $class = this.identityClass;
64
- this.identity = yield $class.findIdentityByAccessToken(token, type);
65
- if (this.identity && this.login(this.identity)) {
66
- return this.identity;
64
+ if ($class.findIdentityByAccessToken) {
65
+ this.identity = yield $class.findIdentityByAccessToken(token, type);
66
+ if (this.identity && this.login(this.identity)) {
67
+ return this.identity;
68
+ }
69
+ }
70
+ else {
71
+ BaseChyz_1.default.error("WebUser::findIdentityByAccessToken undefined");
67
72
  }
68
73
  return null;
69
74
  });
@@ -79,5 +84,5 @@ class User extends Component_1.Component {
79
84
  afterLogin() {
80
85
  }
81
86
  }
82
- exports.User = User;
83
- //# sourceMappingURL=User.js.map
87
+ exports.WebUser = WebUser;
88
+ //# sourceMappingURL=WebUser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebUser.js","sourceRoot":"","sources":["../../web/WebUser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,2DAAmC;AACnC,iDAA4C;AAC5C,2EAAsE;AACtE,2EAAsE;AAGtE,MAAa,OAAQ,SAAQ,qBAAS;IASlC,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK;QACd,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC3B,CAAC;IAEM,IAAI;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,+CAAsB,CAAC,kCAAkC,CAAC,CAAC;SACxE;QAGD,IAAI,CAAC,aAAa,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;IAElD,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC;IACvC,CAAC;IAEM,WAAW,CAAC,SAAS,GAAG,IAAI;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAEM,aAAa;QAEhB,MAAM,IAAI,+CAAsB,CAAC,kBAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACnE,CAAC;IAGD;;;;OAIG;IACO,mBAAmB;IAE7B,CAAC;IAED;;;;OAIG;IACU,kBAAkB,CAAC,KAAU,EAAE,OAAY,IAAI;;YAExD,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;YAChC,IAAI,MAAM,CAAC,yBAAyB,EAAE;gBAClC,IAAI,CAAC,QAAQ,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;gBACnE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC;iBACxB;aACJ;iBAAI;gBACD,kBAAQ,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAA;aACjE;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEM,KAAK,CAAC,QAA2B,EAAE,QAAQ,GAAG,CAAC;QAElD,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE;SAEhD;QACD,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAA;IAC7B,CAAC;IAEM,WAAW,CAAC,QAAa,EAAE,WAAoB,EAAE,QAAgB;QAEpE,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,UAAU;IAEjB,CAAC;CACJ;AAvFD,0BAuFC"}
@@ -8,7 +8,7 @@ import BaseChyz from "../BaseChyz";
8
8
  import {ForbiddenHttpException} from "../base/ForbiddenHttpException";
9
9
  import {ActionFilter} from "../base/ActionFilter";
10
10
  import {AccessRule} from "./AccessRule";
11
- import {User} from "../web/User";
11
+ import {WebUser} from "../web/WebUser";
12
12
  import Utils from "../requiments/Utils";
13
13
  import {NextFunction, Request, Response} from "express";
14
14
 
@@ -24,7 +24,7 @@ export class AccessControl extends ActionFilter {
24
24
  super.init()
25
25
 
26
26
  if (this.user == undefined) {
27
- this.user = Utils.cloneDeep(BaseChyz.getComponent("user")) ?? new User();
27
+ this.user = Utils.cloneDeep(BaseChyz.getComponent("user")) ?? new WebUser();
28
28
  }
29
29
 
30
30
  this.rules.forEach((rule:any, index:number) => {
@@ -55,7 +55,7 @@ export class AccessControl extends ActionFilter {
55
55
  return false;
56
56
  }
57
57
 
58
- public denyAccess(user: User) {
58
+ public denyAccess(user: WebUser) {
59
59
  if (user != undefined && user.getIsGuest()) {
60
60
  user.loginRequired();
61
61
  } else throw new ForbiddenHttpException(BaseChyz.t('You are not allowed to perform this action.'));
@@ -4,7 +4,7 @@
4
4
  * E-mail: cihan@chy.com.tr
5
5
  * Github:https://github.com/cihan53/
6
6
  */
7
- import {User} from "../web/User";
7
+ import {WebUser} from "../web/WebUser";
8
8
 
9
9
  var _ = require('lodash');
10
10
  import {Component} from "../base/Component";
@@ -51,7 +51,7 @@ export class AccessRule extends Component {
51
51
  public ips:any;
52
52
 
53
53
 
54
- public allows(action:any, user:User, request:Request) {
54
+ public allows(action:any, user:WebUser, request:Request) {
55
55
  if (
56
56
  this.matchAction(action)
57
57
  && this.matchRole(user)
@@ -8,7 +8,7 @@
8
8
  import {ActionFilter} from "../../base/ActionFilter";
9
9
  import {AuthInterface} from "./AuthInterface";
10
10
  import {UnauthorizedHttpException} from "../../base/UnauthorizedHttpException";
11
- import {User} from "../../web/User";
11
+ import {WebUser} from "../../web/WebUser";
12
12
  import {Request, Response} from "express";
13
13
 
14
14
  export abstract class AuthMethod extends ActionFilter implements AuthInterface {
@@ -16,7 +16,7 @@ export abstract class AuthMethod extends ActionFilter implements AuthInterface {
16
16
  /**
17
17
  * @var User the user object representing the user authentication status. If not set, the `user` application component will be used.
18
18
  */
19
- public user: User | undefined;
19
+ public user: WebUser | undefined;
20
20
 
21
21
  /**
22
22
  * @var Request the current request. If not set, the `request` application component will be used.
@@ -33,7 +33,7 @@ export abstract class AuthMethod extends ActionFilter implements AuthInterface {
33
33
 
34
34
  public async beforeAction(action: any, request: Request, response: Response) {
35
35
  let identity = await this.authenticate(
36
- this.user ?? new User(),
36
+ this.user ?? new WebUser(),
37
37
  request,
38
38
  response
39
39
  )
@@ -51,7 +51,7 @@ export abstract class AuthMethod extends ActionFilter implements AuthInterface {
51
51
  return false;
52
52
  }
53
53
 
54
- authenticate(user: User, request: Request, response: Response) {
54
+ authenticate(user: WebUser, request: Request, response: Response) {
55
55
 
56
56
  }
57
57
 
@@ -6,7 +6,7 @@
6
6
  */
7
7
 
8
8
  import {AuthMethod} from "./AuthMethod";
9
- import {User} from "../../web/User";
9
+ import {WebUser} from "../../web/WebUser";
10
10
  import Utils from "../../requiments/Utils";
11
11
  import {Request, Response} from "express";
12
12
 
@@ -24,7 +24,7 @@ export class HttpHeaderAuth extends AuthMethod {
24
24
  public pattern!: string;
25
25
 
26
26
 
27
- async authenticate(user: User, request:Request, response:Response) {
27
+ async authenticate(user: WebUser, request:Request, response:Response) {
28
28
  let key = Object.keys(request.headers).find(key => key.toLowerCase() === this.header.toLowerCase())
29
29
  if (key) {
30
30
  let authHeader:any = request.headers[key];
@@ -9,7 +9,7 @@ import {HttpBearerAuth} from "./HttpBearerAuth";
9
9
  import {InvalidConfigException} from "../../base/InvalidConfigException";
10
10
  import {UnauthorizedHttpException} from "../../base/UnauthorizedHttpException";
11
11
  import {Response,Request} from "express";
12
- import {User} from "../../web/User";
12
+ import {WebUser} from "../../web/WebUser";
13
13
 
14
14
  const JsonWebToken = require("jsonwebtoken");
15
15
 
@@ -21,6 +21,7 @@ export class JwtHttpBearerAuth extends HttpBearerAuth {
21
21
  public jwt = 'jwt'
22
22
  public auth:any = null;
23
23
 
24
+
24
25
  /**
25
26
  * @throws InvalidConfigException
26
27
  */
@@ -35,20 +36,18 @@ export class JwtHttpBearerAuth extends HttpBearerAuth {
35
36
  }
36
37
 
37
38
 
38
- public async authenticate(user:User, request:Request, response:Response) // BC signature
39
+ public async authenticate(user:WebUser, request:Request, response:Response) // BC signature
39
40
  {
40
41
 
41
42
  let autHeader = this.getHeaderByKey(request.headers, this.header)
42
-
43
43
  if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
44
44
  return null;
45
45
  }
46
46
 
47
-
47
+ BaseChyz.debug("JSON Web Token.",autHeader);
48
48
  let identity = null;
49
49
  let token = null;
50
50
 
51
-
52
51
  token = JsonWebToken.decode(autHeader[1], {complete: true})
53
52
  if (!token) {
54
53
  BaseChyz.warning("Your request was made with invalid or expired JSON Web Token.");