@furystack/security 2.0.2 → 2.0.5

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.
@@ -9,13 +9,7 @@ const errors_1 = require("./errors");
9
9
  const models_1 = require("./models");
10
10
  const password_complexity_error_1 = require("./errors/password-complexity-error");
11
11
  let PasswordAuthenticator = class PasswordAuthenticator {
12
- /**
13
- * @param injector The Injector instance
14
- * @param policyManager The Password Policy Manager instance
15
- */
16
- constructor(injector, policyManager) {
17
- this.injector = injector;
18
- this.policyManager = policyManager;
12
+ constructor() {
19
13
  this.getPasswordStore = () => this.injector.getInstance(core_1.StoreManager).getStoreFor(models_1.PasswordCredential, 'userName');
20
14
  this.getTokenStore = () => this.injector.getInstance(core_1.StoreManager).getStoreFor(models_1.PasswordResetToken, 'token');
21
15
  this.getHasher = () => this.injector.getInstance(this.policyManager.policy.hasher);
@@ -91,9 +85,16 @@ let PasswordAuthenticator = class PasswordAuthenticator {
91
85
  await store.add(newCredential);
92
86
  }
93
87
  };
88
+ tslib_1.__decorate([
89
+ (0, inject_1.Injected)(inject_1.Injector),
90
+ tslib_1.__metadata("design:type", inject_1.Injector)
91
+ ], PasswordAuthenticator.prototype, "injector", void 0);
92
+ tslib_1.__decorate([
93
+ (0, inject_1.Injected)(security_policy_manager_1.SecurityPolicyManager),
94
+ tslib_1.__metadata("design:type", security_policy_manager_1.SecurityPolicyManager)
95
+ ], PasswordAuthenticator.prototype, "policyManager", void 0);
94
96
  PasswordAuthenticator = tslib_1.__decorate([
95
- (0, inject_1.Injectable)({ lifetime: 'singleton' }),
96
- tslib_1.__metadata("design:paramtypes", [inject_1.Injector, security_policy_manager_1.SecurityPolicyManager])
97
+ (0, inject_1.Injectable)({ lifetime: 'singleton' })
97
98
  ], PasswordAuthenticator);
98
99
  exports.PasswordAuthenticator = PasswordAuthenticator;
99
100
  //# sourceMappingURL=password-authenticator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"password-authenticator.js","sourceRoot":"","sources":["../src/password-authenticator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"password-authenticator.js","sourceRoot":"","sources":["../src/password-authenticator.ts"],"names":[],"mappings":"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"}
@@ -5,12 +5,6 @@ const tslib_1 = require("tslib");
5
5
  const inject_1 = require("@furystack/inject");
6
6
  const security_policy_1 = require("./security-policy");
7
7
  let SecurityPolicyManager = class SecurityPolicyManager {
8
- /**
9
- * @param policy The related Password Policy object
10
- */
11
- constructor(policy) {
12
- this.policy = policy;
13
- }
14
8
  /**
15
9
  * @param password The Plain password string
16
10
  * @returns if the password matches the complexity rules
@@ -47,9 +41,12 @@ let SecurityPolicyManager = class SecurityPolicyManager {
47
41
  return now > tokenExpiration;
48
42
  }
49
43
  };
44
+ tslib_1.__decorate([
45
+ (0, inject_1.Injected)(security_policy_1.SecurityPolicy),
46
+ tslib_1.__metadata("design:type", security_policy_1.SecurityPolicy)
47
+ ], SecurityPolicyManager.prototype, "policy", void 0);
50
48
  SecurityPolicyManager = tslib_1.__decorate([
51
- (0, inject_1.Injectable)({ lifetime: 'singleton' }),
52
- tslib_1.__metadata("design:paramtypes", [security_policy_1.SecurityPolicy])
49
+ (0, inject_1.Injectable)({ lifetime: 'singleton' })
53
50
  ], SecurityPolicyManager);
54
51
  exports.SecurityPolicyManager = SecurityPolicyManager;
55
52
  //# sourceMappingURL=security-policy-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"security-policy-manager.js","sourceRoot":"","sources":["../src/security-policy-manager.ts"],"names":[],"mappings":";;;;AAAA,8CAA8C;AAE9C,uDAAkD;AAGlD,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IA2ChC;;OAEG;IACH,YAA4B,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IA7CtD;;;OAGG;IACI,KAAK,CAAC,4BAA4B,CAAC,QAAgB;QACxD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QACzG,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAA;QACxD,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,OAAO;gBACL,KAAK,EAAE,KAAc;gBACrB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAGnF;aACH,CAAA;SACF;QAED,OAAO;YACL,KAAK,EAAE,IAAa;SACrB,CAAA;IACH,CAAC;IAEM,kBAAkB,CAAC,UAA8B;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE;YACvC,OAAO,KAAK,CAAA;SACb;QACD,MAAM,oBAAoB,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAC9D,oBAAoB,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAA;QACjG,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,OAAO,GAAG,GAAG,oBAAoB,CAAA;IACnC,CAAC;IAEM,eAAe,CAAC,KAAyB;QAC9C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE;YAC5C,OAAO,KAAK,CAAA;SACb;QACD,MAAM,eAAe,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QACjD,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAA;QAClG,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,OAAO,GAAG,GAAG,eAAe,CAAA;IAC9B,CAAC;CAMF,CAAA;AA/CY,qBAAqB;IADjC,IAAA,mBAAU,EAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;6CA+CA,gCAAc;GA9CvC,qBAAqB,CA+CjC;AA/CY,sDAAqB"}
1
+ {"version":3,"file":"security-policy-manager.js","sourceRoot":"","sources":["../src/security-policy-manager.ts"],"names":[],"mappings":";;;;AAAA,8CAAwD;AAExD,uDAAkD;AAGlD,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IAChC;;;OAGG;IACI,KAAK,CAAC,4BAA4B,CAAC,QAAgB;QACxD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QACzG,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAA;QACxD,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,OAAO;gBACL,KAAK,EAAE,KAAc;gBACrB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAGnF;aACH,CAAA;SACF;QAED,OAAO;YACL,KAAK,EAAE,IAAa;SACrB,CAAA;IACH,CAAC;IAEM,kBAAkB,CAAC,UAA8B;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE;YACvC,OAAO,KAAK,CAAA;SACb;QACD,MAAM,oBAAoB,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAC9D,oBAAoB,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAA;QACjG,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,OAAO,GAAG,GAAG,oBAAoB,CAAA;IACnC,CAAC;IAEM,eAAe,CAAC,KAAyB;QAC9C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE;YAC5C,OAAO,KAAK,CAAA;SACb;QACD,MAAM,eAAe,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QACjD,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAA;QAClG,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,OAAO,GAAG,GAAG,eAAe,CAAA;IAC9B,CAAC;CAIF,CAAA;AADC;IADC,IAAA,iBAAQ,EAAC,gCAAc,CAAC;sCACA,gCAAc;qDAAA;AA5C5B,qBAAqB;IADjC,IAAA,mBAAU,EAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;GACzB,qBAAqB,CA6CjC;AA7CY,sDAAqB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@furystack/security",
3
- "version": "2.0.2",
3
+ "version": "2.0.5",
4
4
  "description": "Security, password management and authorization related stuff for FuryStack",
5
5
  "main": "dist/index.js",
6
6
  "typings": "./types/index.d.ts",
@@ -30,14 +30,14 @@
30
30
  "url": "https://github.com/furystack/furystack/issues"
31
31
  },
32
32
  "dependencies": {
33
- "@furystack/core": "^11.0.2",
34
- "@furystack/inject": "^6.0.2",
35
- "@furystack/utils": "^3.0.2",
33
+ "@furystack/core": "^11.0.5",
34
+ "@furystack/inject": "^7.0.1",
35
+ "@furystack/utils": "^3.0.5",
36
36
  "tslib": "^2.4.0"
37
37
  },
38
38
  "homepage": "https://github.com/furystack/furystack",
39
39
  "devDependencies": {
40
- "@types/jest": "^27.5.0",
41
- "@types/node": "^17.0.31"
40
+ "@types/jest": "^28.1.4",
41
+ "@types/node": "^18.0.1"
42
42
  }
43
43
  }
@@ -1,5 +1,5 @@
1
1
  import { StoreManager } from '@furystack/core'
2
- import { Injectable, Injector } from '@furystack/inject'
2
+ import { Injectable, Injected, Injector } from '@furystack/inject'
3
3
  import { SecurityPolicyManager } from './security-policy-manager'
4
4
  import { UnauthenticatedError } from './errors'
5
5
  import { PasswordCheckResult, PasswordCredential, PasswordResetToken } from './models'
@@ -93,9 +93,9 @@ export class PasswordAuthenticator {
93
93
  await store.add(newCredential)
94
94
  }
95
95
 
96
- /**
97
- * @param injector The Injector instance
98
- * @param policyManager The Password Policy Manager instance
99
- */
100
- constructor(private readonly injector: Injector, public policyManager: SecurityPolicyManager) {}
96
+ @Injected(Injector)
97
+ private readonly injector!: Injector
98
+
99
+ @Injected(SecurityPolicyManager)
100
+ public policyManager!: SecurityPolicyManager
101
101
  }
@@ -1,4 +1,4 @@
1
- import { Injectable } from '@furystack/inject'
1
+ import { Injectable, Injected } from '@furystack/inject'
2
2
  import { PasswordCredential, PasswordResetToken } from './models'
3
3
  import { SecurityPolicy } from './security-policy'
4
4
 
@@ -46,8 +46,6 @@ export class SecurityPolicyManager {
46
46
  return now > tokenExpiration
47
47
  }
48
48
 
49
- /**
50
- * @param policy The related Password Policy object
51
- */
52
- constructor(public readonly policy: SecurityPolicy) {}
49
+ @Injected(SecurityPolicy)
50
+ public readonly policy!: SecurityPolicy
53
51
  }
@@ -6,5 +6,5 @@ import { SecurityPolicy } from './security-policy';
6
6
  * @param injector The Injector instance
7
7
  * @param {Partial<SecurityPolicy>} policy The security policy to use
8
8
  */
9
- export declare const usePasswordPolicy: (injector: Injector, policy?: Partial<SecurityPolicy> | undefined) => void;
9
+ export declare const usePasswordPolicy: (injector: Injector, policy?: Partial<SecurityPolicy>) => void;
10
10
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAAc,QAAQ,uDAInD,CAAA"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAAc,QAAQ,WAAW,QAAQ,cAAc,CAAC,SAIrF,CAAA"}
@@ -1,9 +1,6 @@
1
- import { Injector } from '@furystack/inject';
2
1
  import { SecurityPolicyManager } from './security-policy-manager';
3
2
  import { PasswordCheckResult } from './models';
4
3
  export declare class PasswordAuthenticator {
5
- private readonly injector;
6
- policyManager: SecurityPolicyManager;
7
4
  private readonly getPasswordStore;
8
5
  private readonly getTokenStore;
9
6
  readonly getHasher: () => import("./password-hasher").PasswordHasher;
@@ -29,10 +26,7 @@ export declare class PasswordAuthenticator {
29
26
  * @param plainPassword The new password in plain string
30
27
  */
31
28
  resetPasswordForUser(resetToken: string, plainPassword: string): Promise<void>;
32
- /**
33
- * @param injector The Injector instance
34
- * @param policyManager The Password Policy Manager instance
35
- */
36
- constructor(injector: Injector, policyManager: SecurityPolicyManager);
29
+ private readonly injector;
30
+ policyManager: SecurityPolicyManager;
37
31
  }
38
32
  //# sourceMappingURL=password-authenticator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"password-authenticator.d.ts","sourceRoot":"","sources":["../src/password-authenticator.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAEjE,OAAO,EAAE,mBAAmB,EAA0C,MAAM,UAAU,CAAA;AAGtF,qBACa,qBAAqB;IA2FpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAmB,aAAa,EAAE,qBAAqB;IA1F5F,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CACoD;IAErF,OAAO,CAAC,QAAQ,CAAC,aAAa,CACoD;IAElF,SAAgB,SAAS,mDAAoE;IAE7F;;;;OAIG;IACU,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkBxG;;;;;;;OAOG;IACU,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB7G;;;;;OAKG;IACU,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB3F;;;OAGG;gBAC0B,QAAQ,EAAE,QAAQ,EAAS,aAAa,EAAE,qBAAqB;CAC7F"}
1
+ {"version":3,"file":"password-authenticator.d.ts","sourceRoot":"","sources":["../src/password-authenticator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AAEjE,OAAO,EAAE,mBAAmB,EAA0C,MAAM,UAAU,CAAA;AAGtF,qBACa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CACoD;IAErF,OAAO,CAAC,QAAQ,CAAC,aAAa,CACoD;IAElF,SAAgB,SAAS,mDAAoE;IAE7F;;;;OAIG;IACU,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkBxG;;;;;;;OAOG;IACU,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB7G;;;;;OAKG;IACU,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB3F,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IAG7B,aAAa,EAAG,qBAAqB,CAAA;CAC7C"}
@@ -1,7 +1,6 @@
1
1
  import { PasswordCredential, PasswordResetToken } from './models';
2
2
  import { SecurityPolicy } from './security-policy';
3
3
  export declare class SecurityPolicyManager {
4
- readonly policy: SecurityPolicy;
5
4
  /**
6
5
  * @param password The Plain password string
7
6
  * @returns if the password matches the complexity rules
@@ -18,9 +17,6 @@ export declare class SecurityPolicyManager {
18
17
  }>;
19
18
  hasPasswordExpired(credential: PasswordCredential): boolean;
20
19
  hasTokenExpired(token: PasswordResetToken): boolean;
21
- /**
22
- * @param policy The related Password Policy object
23
- */
24
- constructor(policy: SecurityPolicy);
20
+ readonly policy: SecurityPolicy;
25
21
  }
26
22
  //# sourceMappingURL=security-policy-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"security-policy-manager.d.ts","sourceRoot":"","sources":["../src/security-policy-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD,qBACa,qBAAqB;aA8CJ,MAAM,EAAE,cAAc;IA7ClD;;;OAGG;IACU,4BAA4B,CAAC,QAAQ,EAAE,MAAM;;;qBAOzC,MAAM;kBACT,MAAM;;;;;;IAUb,kBAAkB,CAAC,UAAU,EAAE,kBAAkB;IAUjD,eAAe,CAAC,KAAK,EAAE,kBAAkB;IAUhD;;OAEG;gBACyB,MAAM,EAAE,cAAc;CACnD"}
1
+ {"version":3,"file":"security-policy-manager.d.ts","sourceRoot":"","sources":["../src/security-policy-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD,qBACa,qBAAqB;IAChC;;;OAGG;IACU,4BAA4B,CAAC,QAAQ,EAAE,MAAM;;;qBAOzC,MAAM;kBACT,MAAM;;;;;;IAUb,kBAAkB,CAAC,UAAU,EAAE,kBAAkB;IAUjD,eAAe,CAAC,KAAK,EAAE,kBAAkB;IAUhD,SACgB,MAAM,EAAG,cAAc,CAAA;CACxC"}