@tomei/sso 0.61.0 → 0.61.1
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/dist/__tests__/unit/components/group-privilege/group-privilege.test.d.ts +1 -0
- package/dist/__tests__/unit/components/group-privilege/group-privilege.test.js +71 -0
- package/dist/__tests__/unit/components/group-privilege/group-privilege.test.js.map +1 -0
- package/dist/__tests__/unit/components/login-user/login-user.spec.d.ts +0 -0
- package/dist/__tests__/unit/components/login-user/login-user.spec.js +6 -0
- package/dist/__tests__/unit/components/login-user/login-user.spec.js.map +1 -0
- package/dist/src/components/login-history/login-history.d.ts +23 -0
- package/dist/src/components/login-history/login-history.js +88 -0
- package/dist/src/components/login-history/login-history.js.map +1 -0
- package/dist/src/components/login-user/user.js +3 -2
- package/dist/src/components/login-user/user.js.map +1 -1
- package/dist/src/interfaces/login-history-search-attr.interface.d.ts +8 -0
- package/dist/src/interfaces/login-history-search-attr.interface.js +3 -0
- package/dist/src/interfaces/login-history-search-attr.interface.js.map +1 -0
- package/dist/src/interfaces/login-history.interface.d.ts +11 -0
- package/dist/src/interfaces/login-history.interface.js +3 -0
- package/dist/src/interfaces/login-history.interface.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/components/api-key/api-key.repository.ts +15 -15
- package/src/components/api-key/api-key.ts +448 -448
- package/src/components/api-key/index.ts +4 -4
- package/src/components/building/building.repository.ts +27 -27
- package/src/components/building/index.ts +2 -2
- package/src/components/group/group.repository.ts +26 -26
- package/src/components/group/group.ts +2284 -2284
- package/src/components/group/index.ts +3 -3
- package/src/components/group-object-privilege/group-object-privilege.repository.ts +25 -25
- package/src/components/group-object-privilege/group-object-privilege.ts +278 -278
- package/src/components/group-object-privilege/index.ts +2 -2
- package/src/components/group-privilege/group-privilege.repository.ts +29 -29
- package/src/components/group-privilege/group-privilege.ts +84 -84
- package/src/components/group-privilege/index.ts +2 -2
- package/src/components/group-reporting-user/group-reporting-user.repository.ts +23 -23
- package/src/components/group-reporting-user/group-reporting-user.ts +506 -506
- package/src/components/group-reporting-user/index.ts +3 -3
- package/src/components/group-system-access/group-system-access.repository.ts +43 -43
- package/src/components/group-system-access/group-system-access.ts +90 -90
- package/src/components/group-system-access/index.ts +2 -2
- package/src/components/index.ts +20 -20
- package/src/components/login-user/index.ts +5 -5
- package/src/components/login-user/interfaces/check-user-info-duplicated.interface.ts +7 -7
- package/src/components/login-user/interfaces/index.ts +1 -1
- package/src/components/login-user/interfaces/system-access.interface.ts +13 -13
- package/src/components/login-user/interfaces/user-info.interface.ts +34 -34
- package/src/components/login-user/login-user.ts +362 -362
- package/src/components/login-user/user.repository.ts +11 -11
- package/src/components/login-user/user.ts +3 -2
- package/src/components/password-hash/index.ts +2 -2
- package/src/components/password-hash/interfaces/index.ts +1 -1
- package/src/components/password-hash/interfaces/password-hash-service.interface.ts +4 -4
- package/src/components/password-hash/password-hash.service.ts +14 -14
- package/src/components/staff/index.ts +2 -2
- package/src/components/staff/staff.repository.ts +27 -27
- package/src/components/system/index.ts +3 -3
- package/src/components/system/system.repository.ts +11 -11
- package/src/components/system/system.ts +456 -456
- package/src/components/system-privilege/index.ts +4 -4
- package/src/components/system-privilege/system-privilege.repository.ts +18 -18
- package/src/components/system-privilege/system-privilege.ts +541 -541
- package/src/components/user-group/index.ts +2 -2
- package/src/components/user-group/user-group.repository.ts +19 -19
- package/src/components/user-group/user-group.ts +764 -764
- package/src/components/user-object-privilege/index.ts +2 -2
- package/src/components/user-object-privilege/user-object-privilege.repository.ts +11 -11
- package/src/components/user-object-privilege/user-object-privilege.ts +79 -79
- package/src/components/user-password-history/index.ts +2 -2
- package/src/components/user-password-history/user-password-history.repository.ts +39 -39
- package/src/components/user-password-history/user-password-history.ts +187 -187
- package/src/components/user-privilege/index.ts +2 -2
- package/src/components/user-privilege/user-privilege.repository.ts +25 -25
- package/src/components/user-privilege/user-privilege.ts +662 -662
- package/src/components/user-reporting-hierarchy/index.ts +2 -2
- package/src/components/user-reporting-hierarchy/user-reporting-hierarchy.repository.ts +30 -30
- package/src/components/user-reporting-hierarchy/user-reporting-hierarchy.ts +505 -505
- package/src/components/user-system-access/index.ts +2 -2
- package/src/components/user-system-access/user-system-access.repository.ts +41 -41
- package/src/database.ts +15 -15
- package/src/enum/api-key.enum.ts +5 -5
- package/src/enum/building-type.enum.ts +6 -6
- package/src/enum/group-type.enum.ts +8 -8
- package/src/enum/index.ts +6 -6
- package/src/enum/login-status.enum.ts +4 -4
- package/src/enum/object-status.enum.ts +4 -4
- package/src/enum/user-status.enum.ts +7 -7
- package/src/enum/yn.enum.ts +4 -4
- package/src/index.ts +8 -8
- package/src/interfaces/api-key-attr.interface.ts +16 -16
- package/src/interfaces/group-object-privilege.interface.ts +14 -14
- package/src/interfaces/group-privilege.interface.ts +10 -10
- package/src/interfaces/group-reporting-user.interface.ts +11 -11
- package/src/interfaces/group-search-attr.interface.ts +9 -9
- package/src/interfaces/group-system-access.interface.ts +10 -10
- package/src/interfaces/group.interface.ts +17 -17
- package/src/interfaces/index.ts +13 -13
- package/src/interfaces/system-login.interface.ts +6 -6
- package/src/interfaces/system-privilege-search.interface.ts +5 -5
- package/src/interfaces/system-privilege.interface.ts +11 -11
- package/src/interfaces/system-search-attr.interface.ts +5 -5
- package/src/interfaces/system.interface.ts +15 -15
- package/src/interfaces/user-group.interface.ts +12 -12
- package/src/interfaces/user-object-privilege.interface.ts +14 -14
- package/src/interfaces/user-password-history.interface.ts +6 -6
- package/src/interfaces/user-privilege.interface.ts +10 -10
- package/src/interfaces/user-reporting-hierarchy.interface.ts +11 -11
- package/src/interfaces/user-session.interface.ts +5 -5
- package/src/interfaces/user-system-access.interface.ts +10 -10
- package/src/models/api-key-entity.ts +101 -101
- package/src/models/building.entity.ts +103 -103
- package/src/models/group-object-privilege.entity.ts +91 -91
- package/src/models/group-privilege.entity.ts +78 -78
- package/src/models/group-reporting-user.entity.ts +95 -95
- package/src/models/group-system-access.entity.ts +81 -81
- package/src/models/group.entity.ts +127 -127
- package/src/models/staff.entity.ts +91 -91
- package/src/models/system-privilege.entity.ts +90 -90
- package/src/models/system.entity.ts +113 -113
- package/src/models/user-group.entity.ts +91 -91
- package/src/models/user-object-privilege.entity.ts +90 -90
- package/src/models/user-password-history.ts +51 -51
- package/src/models/user-privilege.entity.ts +78 -78
- package/src/models/user-reporting-hierarchy.entity.ts +102 -102
- package/src/models/user-system-access.entity.ts +87 -87
- package/src/models/user.entity.ts +193 -193
- package/src/redis-client/__mocks__/jest-initial-setup.ts +2 -2
- package/src/redis-client/__mocks__/redis-mock.ts +28 -28
- package/src/redis-client/index.ts +1 -1
- package/src/redis-client/redis.service.ts +75 -75
- package/src/session/index.ts +2 -2
- package/src/session/interfaces/index.ts +1 -1
- package/src/session/interfaces/session-service.interface.ts +26 -26
- package/src/session/session.service.ts +96 -96
- package/src/types/auth-context.ts +10 -10
- package/src/types/index.ts +1 -1
@@ -1,11 +1,11 @@
|
|
1
|
-
import User from '../../models/user.entity';
|
2
|
-
import { RepositoryBase, IRepositoryBase } from '@tomei/general';
|
3
|
-
|
4
|
-
export class UserRepository
|
5
|
-
extends RepositoryBase<User>
|
6
|
-
implements IRepositoryBase<User>
|
7
|
-
{
|
8
|
-
constructor() {
|
9
|
-
super(User);
|
10
|
-
}
|
11
|
-
}
|
1
|
+
import User from '../../models/user.entity';
|
2
|
+
import { RepositoryBase, IRepositoryBase } from '@tomei/general';
|
3
|
+
|
4
|
+
export class UserRepository
|
5
|
+
extends RepositoryBase<User>
|
6
|
+
implements IRepositoryBase<User>
|
7
|
+
{
|
8
|
+
constructor() {
|
9
|
+
super(User);
|
10
|
+
}
|
11
|
+
}
|
@@ -798,7 +798,7 @@ export class User extends UserBase {
|
|
798
798
|
dbTransaction,
|
799
799
|
});
|
800
800
|
|
801
|
-
for (const usergroup of userGroups) {
|
801
|
+
outer: for (const usergroup of userGroups) {
|
802
802
|
const group = usergroup.Group;
|
803
803
|
const groupSystemAccess = await User.getInheritedSystemAccess(
|
804
804
|
dbTransaction,
|
@@ -808,7 +808,7 @@ export class User extends UserBase {
|
|
808
808
|
for (const system of groupSystemAccess) {
|
809
809
|
if (system.SystemCode === systemCode) {
|
810
810
|
isUserHaveAccess = true;
|
811
|
-
break;
|
811
|
+
break outer;
|
812
812
|
}
|
813
813
|
}
|
814
814
|
}
|
@@ -818,6 +818,7 @@ export class User extends UserBase {
|
|
818
818
|
throw new Error("User don't have access to the system.");
|
819
819
|
}
|
820
820
|
} catch (error) {
|
821
|
+
console.error('Error checking system access:', error);
|
821
822
|
throw error;
|
822
823
|
}
|
823
824
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
export * from './interfaces';
|
2
|
-
export * from './password-hash.service';
|
1
|
+
export * from './interfaces';
|
2
|
+
export * from './password-hash.service';
|
@@ -1 +1 @@
|
|
1
|
-
export * from './password-hash-service.interface';
|
1
|
+
export * from './password-hash-service.interface';
|
@@ -1,4 +1,4 @@
|
|
1
|
-
export interface IPasswordHashService {
|
2
|
-
hashPassword(password: string): Promise<string>;
|
3
|
-
verify(password: string, hash: string): Promise<boolean>;
|
4
|
-
}
|
1
|
+
export interface IPasswordHashService {
|
2
|
+
hashPassword(password: string): Promise<string>;
|
3
|
+
verify(password: string, hash: string): Promise<boolean>;
|
4
|
+
}
|
@@ -1,14 +1,14 @@
|
|
1
|
-
import * as argon2 from 'argon2';
|
2
|
-
import { IPasswordHashService } from './interfaces/password-hash-service.interface';
|
3
|
-
|
4
|
-
export class PasswordHashService implements IPasswordHashService {
|
5
|
-
constructor() {}
|
6
|
-
|
7
|
-
async hashPassword(password: string): Promise<string> {
|
8
|
-
return await argon2.hash(password);
|
9
|
-
}
|
10
|
-
|
11
|
-
async verify(password: string, hash: string): Promise<boolean> {
|
12
|
-
return await argon2.verify(hash, password);
|
13
|
-
}
|
14
|
-
}
|
1
|
+
import * as argon2 from 'argon2';
|
2
|
+
import { IPasswordHashService } from './interfaces/password-hash-service.interface';
|
3
|
+
|
4
|
+
export class PasswordHashService implements IPasswordHashService {
|
5
|
+
constructor() {}
|
6
|
+
|
7
|
+
async hashPassword(password: string): Promise<string> {
|
8
|
+
return await argon2.hash(password);
|
9
|
+
}
|
10
|
+
|
11
|
+
async verify(password: string, hash: string): Promise<boolean> {
|
12
|
+
return await argon2.verify(hash, password);
|
13
|
+
}
|
14
|
+
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
//export all files inside this folder
|
2
|
-
export * from './staff.repository';
|
1
|
+
//export all files inside this folder
|
2
|
+
export * from './staff.repository';
|
@@ -1,27 +1,27 @@
|
|
1
|
-
import Staff from '../../models/staff.entity';
|
2
|
-
import { RepositoryBase, IRepositoryBase } from '@tomei/general';
|
3
|
-
|
4
|
-
export class StaffRepository
|
5
|
-
extends RepositoryBase<Staff>
|
6
|
-
implements IRepositoryBase<Staff>
|
7
|
-
{
|
8
|
-
constructor() {
|
9
|
-
super(Staff);
|
10
|
-
}
|
11
|
-
|
12
|
-
async findAndCountAll(options?: any) {
|
13
|
-
try {
|
14
|
-
let staffs: any;
|
15
|
-
if (options) {
|
16
|
-
staffs = await Staff.findAndCountAll(options);
|
17
|
-
} else {
|
18
|
-
staffs = await Staff.findAndCountAll();
|
19
|
-
}
|
20
|
-
return staffs;
|
21
|
-
} catch (error) {
|
22
|
-
throw new Error(
|
23
|
-
`An Error occured when retriving staffs: ${error.message}`,
|
24
|
-
);
|
25
|
-
}
|
26
|
-
}
|
27
|
-
}
|
1
|
+
import Staff from '../../models/staff.entity';
|
2
|
+
import { RepositoryBase, IRepositoryBase } from '@tomei/general';
|
3
|
+
|
4
|
+
export class StaffRepository
|
5
|
+
extends RepositoryBase<Staff>
|
6
|
+
implements IRepositoryBase<Staff>
|
7
|
+
{
|
8
|
+
constructor() {
|
9
|
+
super(Staff);
|
10
|
+
}
|
11
|
+
|
12
|
+
async findAndCountAll(options?: any) {
|
13
|
+
try {
|
14
|
+
let staffs: any;
|
15
|
+
if (options) {
|
16
|
+
staffs = await Staff.findAndCountAll(options);
|
17
|
+
} else {
|
18
|
+
staffs = await Staff.findAndCountAll();
|
19
|
+
}
|
20
|
+
return staffs;
|
21
|
+
} catch (error) {
|
22
|
+
throw new Error(
|
23
|
+
`An Error occured when retriving staffs: ${error.message}`,
|
24
|
+
);
|
25
|
+
}
|
26
|
+
}
|
27
|
+
}
|
@@ -1,3 +1,3 @@
|
|
1
|
-
//export all files inside this folder
|
2
|
-
export * from './system';
|
3
|
-
export * from './system.repository';
|
1
|
+
//export all files inside this folder
|
2
|
+
export * from './system';
|
3
|
+
export * from './system.repository';
|
@@ -1,11 +1,11 @@
|
|
1
|
-
import SystemModel from '../../models/system.entity';
|
2
|
-
import { RepositoryBase, IRepositoryBase } from '@tomei/general';
|
3
|
-
|
4
|
-
export class SystemRepository
|
5
|
-
extends RepositoryBase<SystemModel>
|
6
|
-
implements IRepositoryBase<SystemModel>
|
7
|
-
{
|
8
|
-
constructor() {
|
9
|
-
super(SystemModel);
|
10
|
-
}
|
11
|
-
}
|
1
|
+
import SystemModel from '../../models/system.entity';
|
2
|
+
import { RepositoryBase, IRepositoryBase } from '@tomei/general';
|
3
|
+
|
4
|
+
export class SystemRepository
|
5
|
+
extends RepositoryBase<SystemModel>
|
6
|
+
implements IRepositoryBase<SystemModel>
|
7
|
+
{
|
8
|
+
constructor() {
|
9
|
+
super(SystemModel);
|
10
|
+
}
|
11
|
+
}
|