@things-factory/auth-base 6.1.185 → 6.1.186
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-server/controllers/profile.d.ts +1 -0
- package/dist-server/router/auth-signin-router.js +9 -1
- package/dist-server/router/auth-signin-router.js.map +1 -1
- package/dist-server/service/appliance/appliance-mutation.js +4 -0
- package/dist-server/service/appliance/appliance-mutation.js.map +1 -1
- package/dist-server/service/appliance/appliance-query.js +2 -0
- package/dist-server/service/appliance/appliance-query.js.map +1 -1
- package/dist-server/service/application/application-mutation.js +5 -0
- package/dist-server/service/application/application-mutation.js.map +1 -1
- package/dist-server/service/application/application-query.js +2 -0
- package/dist-server/service/application/application-query.js.map +1 -1
- package/dist-server/service/auth-provider/auth-provider-mutation.d.ts +10 -0
- package/dist-server/service/auth-provider/auth-provider-mutation.js +147 -0
- package/dist-server/service/auth-provider/auth-provider-mutation.js.map +1 -0
- package/dist-server/service/auth-provider/auth-provider-parameter-spec.d.ts +9 -0
- package/dist-server/service/auth-provider/auth-provider-parameter-spec.js +33 -0
- package/dist-server/service/auth-provider/auth-provider-parameter-spec.js.map +1 -0
- package/dist-server/service/auth-provider/auth-provider-query.d.ts +12 -0
- package/dist-server/service/auth-provider/auth-provider-query.js +92 -0
- package/dist-server/service/auth-provider/auth-provider-query.js.map +1 -0
- package/dist-server/service/auth-provider/auth-provider-type.d.ts +27 -0
- package/dist-server/service/auth-provider/auth-provider-type.js +90 -0
- package/dist-server/service/auth-provider/auth-provider-type.js.map +1 -0
- package/dist-server/service/auth-provider/auth-provider.d.ts +53 -0
- package/dist-server/service/auth-provider/auth-provider.js +173 -0
- package/dist-server/service/auth-provider/auth-provider.js.map +1 -0
- package/dist-server/service/auth-provider/index.d.ts +6 -0
- package/dist-server/service/auth-provider/index.js +10 -0
- package/dist-server/service/auth-provider/index.js.map +1 -0
- package/dist-server/service/index.d.ts +4 -2
- package/dist-server/service/index.js +8 -0
- package/dist-server/service/index.js.map +1 -1
- package/dist-server/service/user/user.d.ts +2 -0
- package/dist-server/service/user/user.js +9 -0
- package/dist-server/service/user/user.js.map +1 -1
- package/dist-server/service/users-auth-providers/index.d.ts +4 -0
- package/dist-server/service/users-auth-providers/index.js +8 -0
- package/dist-server/service/users-auth-providers/index.js.map +1 -0
- package/dist-server/service/users-auth-providers/users-auth-providers.d.ts +15 -0
- package/dist-server/service/users-auth-providers/users-auth-providers.js +73 -0
- package/dist-server/service/users-auth-providers/users-auth-providers.js.map +1 -0
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
- package/server/router/auth-signin-router.ts +10 -1
- package/server/service/appliance/appliance-mutation.ts +5 -1
- package/server/service/appliance/appliance-query.ts +2 -0
- package/server/service/application/application-mutation.ts +6 -1
- package/server/service/application/application-query.ts +3 -1
- package/server/service/auth-provider/auth-provider-mutation.ts +159 -0
- package/server/service/auth-provider/auth-provider-parameter-spec.ts +21 -0
- package/server/service/auth-provider/auth-provider-query.ts +57 -0
- package/server/service/auth-provider/auth-provider-type.ts +65 -0
- package/server/service/auth-provider/auth-provider.ts +166 -0
- package/server/service/auth-provider/index.ts +7 -0
- package/server/service/index.ts +11 -0
- package/server/service/user/user.ts +10 -1
- package/server/service/users-auth-providers/index.ts +5 -0
- package/server/service/users-auth-providers/users-auth-providers.ts +71 -0
package/server/service/index.ts
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
/* IMPORT ENTITIES AND RESOLVERS */
|
|
2
|
+
import {
|
|
3
|
+
entities as UsersAuthProvidersEntities,
|
|
4
|
+
resolvers as UsersAuthProvidersResolvers
|
|
5
|
+
} from './users-auth-providers'
|
|
6
|
+
import { entities as AuthProviderEntities, resolvers as AuthProviderResolvers } from './auth-provider'
|
|
2
7
|
import { resolvers as AppbindingResolver } from './app-binding'
|
|
3
8
|
import { entities as ApplianceEntities, resolvers as ApplianceResolvers } from './appliance'
|
|
4
9
|
import { entities as ApplicationEntities, resolvers as ApplicationResolvers } from './application'
|
|
@@ -15,6 +20,8 @@ import { entities as UserEntities, resolvers as UserResolvers } from './user'
|
|
|
15
20
|
import { entities as VerificationTokenEntities } from './verification-token'
|
|
16
21
|
|
|
17
22
|
/* EXPORT ENTITY TYPES */
|
|
23
|
+
export * from './users-auth-providers/users-auth-providers'
|
|
24
|
+
export * from './auth-provider/auth-provider'
|
|
18
25
|
export * from './application/application'
|
|
19
26
|
export * from './appliance/appliance'
|
|
20
27
|
export * from './privilege/privilege'
|
|
@@ -41,6 +48,8 @@ export * from './user/user-types'
|
|
|
41
48
|
|
|
42
49
|
export const entities = [
|
|
43
50
|
/* ENTITIES */
|
|
51
|
+
...UsersAuthProvidersEntities,
|
|
52
|
+
...AuthProviderEntities,
|
|
44
53
|
...ApplicationEntities,
|
|
45
54
|
...ApplianceEntities,
|
|
46
55
|
...PrivilegeEntities,
|
|
@@ -61,6 +70,8 @@ export const schema = {
|
|
|
61
70
|
|
|
62
71
|
resolverClasses: [
|
|
63
72
|
/* RESOLVER CLASSES */
|
|
73
|
+
...UsersAuthProvidersResolvers,
|
|
74
|
+
...AuthProviderResolvers,
|
|
64
75
|
...ApplicationResolvers,
|
|
65
76
|
...ApplianceResolvers,
|
|
66
77
|
...PrivilegeResolvers,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import crypto from 'crypto'
|
|
2
2
|
import jwt from 'jsonwebtoken'
|
|
3
|
-
import { Field, ID, ObjectType } from 'type-graphql'
|
|
3
|
+
import { Directive, Field, ID, ObjectType } from 'type-graphql'
|
|
4
4
|
import {
|
|
5
5
|
Column,
|
|
6
6
|
CreateDateColumn,
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
JoinTable,
|
|
10
10
|
ManyToMany,
|
|
11
11
|
ManyToOne,
|
|
12
|
+
OneToMany,
|
|
12
13
|
PrimaryGeneratedColumn,
|
|
13
14
|
RelationId,
|
|
14
15
|
UpdateDateColumn
|
|
@@ -21,6 +22,7 @@ import { validatePasswordByRule } from '../../controllers/utils/password-rule'
|
|
|
21
22
|
import { AuthError } from '../../errors/auth-error'
|
|
22
23
|
import { SECRET } from '../../utils/get-secret'
|
|
23
24
|
import { Role } from '../role/role'
|
|
25
|
+
import { UsersAuthProviders } from '../users-auth-providers/users-auth-providers'
|
|
24
26
|
import { getDomainsWithPrivilege } from '../../utils/get-user-domains'
|
|
25
27
|
|
|
26
28
|
const ORMCONFIG = config.get('ormconfig', {})
|
|
@@ -63,6 +65,7 @@ export class User {
|
|
|
63
65
|
@Field()
|
|
64
66
|
email: string
|
|
65
67
|
|
|
68
|
+
@Directive('@privilege(category: "security", privilege: "query", domainOwnerGranted: true)')
|
|
66
69
|
@Column({
|
|
67
70
|
nullable: true,
|
|
68
71
|
type:
|
|
@@ -91,6 +94,7 @@ export class User {
|
|
|
91
94
|
@Field({ nullable: true })
|
|
92
95
|
reference: string
|
|
93
96
|
|
|
97
|
+
@Directive('@privilege(category: "security", privilege: "query", domainOwnerGranted: true)')
|
|
94
98
|
@Column({
|
|
95
99
|
nullable: true
|
|
96
100
|
})
|
|
@@ -100,6 +104,7 @@ export class User {
|
|
|
100
104
|
@Field({ nullable: true })
|
|
101
105
|
locale: string
|
|
102
106
|
|
|
107
|
+
@Directive('@privilege(category: "security", privilege: "query", domainOwnerGranted: true)')
|
|
103
108
|
@Column({ nullable: true })
|
|
104
109
|
@Field({ nullable: true })
|
|
105
110
|
ssoId: string
|
|
@@ -131,6 +136,10 @@ export class User {
|
|
|
131
136
|
@Field({ nullable: true })
|
|
132
137
|
owner: boolean /* should not be a column */
|
|
133
138
|
|
|
139
|
+
@OneToMany(() => UsersAuthProviders, usersAuthProviders => usersAuthProviders.user)
|
|
140
|
+
@Field(type => [UsersAuthProviders], { nullable: true })
|
|
141
|
+
usersAuthProviders: UsersAuthProviders[]
|
|
142
|
+
|
|
134
143
|
@ManyToOne(type => User, { nullable: true })
|
|
135
144
|
@Field({ nullable: true })
|
|
136
145
|
creator: User
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CreateDateColumn,
|
|
3
|
+
UpdateDateColumn,
|
|
4
|
+
DeleteDateColumn,
|
|
5
|
+
Entity,
|
|
6
|
+
Index,
|
|
7
|
+
Column,
|
|
8
|
+
RelationId,
|
|
9
|
+
ManyToOne,
|
|
10
|
+
PrimaryGeneratedColumn,
|
|
11
|
+
VersionColumn
|
|
12
|
+
} from 'typeorm'
|
|
13
|
+
import { ObjectType, Field, Int, ID, registerEnumType } from 'type-graphql'
|
|
14
|
+
|
|
15
|
+
import { Domain } from '@things-factory/shell'
|
|
16
|
+
import { User } from '../user/user'
|
|
17
|
+
import { AuthProvider } from '../auth-provider/auth-provider'
|
|
18
|
+
|
|
19
|
+
@Entity()
|
|
20
|
+
@Index(
|
|
21
|
+
'ix_users_auth_providers_0',
|
|
22
|
+
(usersAuthProviders: UsersAuthProviders) => [
|
|
23
|
+
usersAuthProviders.domain,
|
|
24
|
+
usersAuthProviders.user,
|
|
25
|
+
usersAuthProviders.authProvider
|
|
26
|
+
],
|
|
27
|
+
{ unique: true }
|
|
28
|
+
)
|
|
29
|
+
@ObjectType({ description: 'Entity for UsersAuthProviders' })
|
|
30
|
+
export class UsersAuthProviders {
|
|
31
|
+
@PrimaryGeneratedColumn('uuid')
|
|
32
|
+
@Field(type => ID)
|
|
33
|
+
readonly id: string
|
|
34
|
+
|
|
35
|
+
@ManyToOne(type => Domain)
|
|
36
|
+
@Field({ nullable: true })
|
|
37
|
+
domain?: Domain
|
|
38
|
+
|
|
39
|
+
@RelationId((usersAuthProviders: UsersAuthProviders) => usersAuthProviders.domain)
|
|
40
|
+
domainId?: string
|
|
41
|
+
|
|
42
|
+
@ManyToOne(() => User, user => user.usersAuthProviders, {
|
|
43
|
+
onDelete: 'CASCADE'
|
|
44
|
+
})
|
|
45
|
+
@Field(type => User, { nullable: true })
|
|
46
|
+
user: User
|
|
47
|
+
|
|
48
|
+
@RelationId((usersAuthProviders: UsersAuthProviders) => usersAuthProviders.user)
|
|
49
|
+
userId?: string
|
|
50
|
+
|
|
51
|
+
@ManyToOne(() => AuthProvider, authProvider => authProvider.usersAuthProviders, {
|
|
52
|
+
onDelete: 'CASCADE'
|
|
53
|
+
})
|
|
54
|
+
@Field(type => AuthProvider, { nullable: true })
|
|
55
|
+
authProvider: AuthProvider
|
|
56
|
+
|
|
57
|
+
@RelationId((usersAuthProviders: UsersAuthProviders) => usersAuthProviders.authProvider)
|
|
58
|
+
authProviderId?: string
|
|
59
|
+
|
|
60
|
+
@Column()
|
|
61
|
+
@Field({ nullable: true })
|
|
62
|
+
ssoId: string
|
|
63
|
+
|
|
64
|
+
@CreateDateColumn()
|
|
65
|
+
@Field({ nullable: true })
|
|
66
|
+
createdAt?: Date
|
|
67
|
+
|
|
68
|
+
@UpdateDateColumn()
|
|
69
|
+
@Field({ nullable: true })
|
|
70
|
+
updatedAt: Date
|
|
71
|
+
}
|