@authup/server-core 1.0.0-beta.3 → 1.0.0-beta.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.
Files changed (206) hide show
  1. package/LICENSE +201 -21
  2. package/README.md +1 -1
  3. package/dist/commands/setup.js +2 -2
  4. package/dist/commands/setup.js.map +1 -1
  5. package/dist/commands/start.d.ts.map +1 -1
  6. package/dist/commands/start.js +4 -5
  7. package/dist/commands/start.js.map +1 -1
  8. package/dist/config/build.d.ts +1 -1
  9. package/dist/config/build.d.ts.map +1 -1
  10. package/dist/config/build.js +14 -6
  11. package/dist/config/build.js.map +1 -1
  12. package/dist/config/constants.d.ts +13 -6
  13. package/dist/config/constants.d.ts.map +1 -1
  14. package/dist/config/constants.js +13 -6
  15. package/dist/config/constants.js.map +1 -1
  16. package/dist/config/index.d.ts +1 -1
  17. package/dist/config/index.d.ts.map +1 -1
  18. package/dist/config/index.js +1 -1
  19. package/dist/config/index.js.map +1 -1
  20. package/dist/config/module.d.ts +1 -1
  21. package/dist/config/module.d.ts.map +1 -1
  22. package/dist/config/parse.d.ts +1 -1
  23. package/dist/config/parse.d.ts.map +1 -1
  24. package/dist/config/setup.d.ts +1 -1
  25. package/dist/config/setup.d.ts.map +1 -1
  26. package/dist/config/{type.d.ts → types.d.ts} +31 -11
  27. package/dist/config/types.d.ts.map +1 -0
  28. package/dist/config/{type.js → types.js} +1 -1
  29. package/dist/config/types.js.map +1 -0
  30. package/dist/config/utils/env.d.ts +1 -1
  31. package/dist/config/utils/env.d.ts.map +1 -1
  32. package/dist/config/utils/env.js +99 -40
  33. package/dist/config/utils/env.js.map +1 -1
  34. package/dist/core/index.d.ts +1 -0
  35. package/dist/core/index.d.ts.map +1 -1
  36. package/dist/core/index.js +1 -0
  37. package/dist/core/index.js.map +1 -1
  38. package/dist/core/ldap/index.d.ts +3 -0
  39. package/dist/core/ldap/index.d.ts.map +1 -0
  40. package/dist/core/ldap/index.js +25 -0
  41. package/dist/core/ldap/index.js.map +1 -0
  42. package/dist/core/ldap/module.d.ts +19 -0
  43. package/dist/core/ldap/module.d.ts.map +1 -0
  44. package/dist/core/ldap/module.js +192 -0
  45. package/dist/core/ldap/module.js.map +1 -0
  46. package/dist/core/ldap/types.d.ts +10 -0
  47. package/dist/core/ldap/types.d.ts.map +1 -0
  48. package/dist/core/ldap/types.js +9 -0
  49. package/dist/core/ldap/types.js.map +1 -0
  50. package/dist/core/logger/module.js +2 -2
  51. package/dist/core/logger/module.js.map +1 -1
  52. package/dist/database/seeds/module.d.ts.map +1 -1
  53. package/dist/database/seeds/module.js +17 -14
  54. package/dist/database/seeds/module.js.map +1 -1
  55. package/dist/domains/client/repository.d.ts +4 -3
  56. package/dist/domains/client/repository.d.ts.map +1 -1
  57. package/dist/domains/client/repository.js +28 -16
  58. package/dist/domains/client/repository.js.map +1 -1
  59. package/dist/domains/identity-provider/flow/core/index.d.ts +1 -0
  60. package/dist/domains/identity-provider/flow/core/index.d.ts.map +1 -1
  61. package/dist/domains/identity-provider/flow/core/index.js +1 -0
  62. package/dist/domains/identity-provider/flow/core/index.js.map +1 -1
  63. package/dist/domains/identity-provider/flow/core/ldap.d.ts +14 -0
  64. package/dist/domains/identity-provider/flow/core/ldap.d.ts.map +1 -0
  65. package/dist/domains/identity-provider/flow/core/ldap.js +150 -0
  66. package/dist/domains/identity-provider/flow/core/ldap.js.map +1 -0
  67. package/dist/domains/identity-provider/flow/types.d.ts +7 -3
  68. package/dist/domains/identity-provider/flow/types.d.ts.map +1 -1
  69. package/dist/domains/identity-provider/protocol/ldap/extract.d.ts.map +1 -1
  70. package/dist/domains/identity-provider/protocol/ldap/extract.js +31 -2
  71. package/dist/domains/identity-provider/protocol/ldap/extract.js.map +1 -1
  72. package/dist/domains/identity-provider/protocol/ldap/validation.d.ts +5 -1
  73. package/dist/domains/identity-provider/protocol/ldap/validation.d.ts.map +1 -1
  74. package/dist/domains/identity-provider/protocol/ldap/validation.js +39 -4
  75. package/dist/domains/identity-provider/protocol/ldap/validation.js.map +1 -1
  76. package/dist/domains/identity-provider/protocol/oauth2/validation.d.ts +2 -2
  77. package/dist/domains/identity-provider/protocol/oauth2/validation.d.ts.map +1 -1
  78. package/dist/domains/identity-provider/protocol/oauth2/validation.js +6 -7
  79. package/dist/domains/identity-provider/protocol/oauth2/validation.js.map +1 -1
  80. package/dist/domains/identity-provider-account/utils.d.ts +1 -1
  81. package/dist/domains/identity-provider-account/utils.d.ts.map +1 -1
  82. package/dist/domains/identity-provider-account/utils.js +43 -14
  83. package/dist/domains/identity-provider-account/utils.js.map +1 -1
  84. package/dist/domains/identity-provider-attribute/entity.d.ts.map +1 -1
  85. package/dist/domains/identity-provider-attribute/entity.js +13 -1
  86. package/dist/domains/identity-provider-attribute/entity.js.map +1 -1
  87. package/dist/domains/robot/repository.d.ts +8 -6
  88. package/dist/domains/robot/repository.d.ts.map +1 -1
  89. package/dist/domains/robot/repository.js +30 -16
  90. package/dist/domains/robot/repository.js.map +1 -1
  91. package/dist/domains/robot/vault.js +3 -3
  92. package/dist/domains/robot/vault.js.map +1 -1
  93. package/dist/domains/robot-permission/entity.d.ts +2 -2
  94. package/dist/domains/robot-permission/entity.d.ts.map +1 -1
  95. package/dist/domains/robot-permission/entity.js +15 -2
  96. package/dist/domains/robot-permission/entity.js.map +1 -1
  97. package/dist/domains/role/repository.d.ts +3 -3
  98. package/dist/domains/role/repository.d.ts.map +1 -1
  99. package/dist/domains/role/repository.js +1 -1
  100. package/dist/domains/role/repository.js.map +1 -1
  101. package/dist/domains/role-attribute/entity.d.ts.map +1 -1
  102. package/dist/domains/role-attribute/entity.js +13 -1
  103. package/dist/domains/role-attribute/entity.js.map +1 -1
  104. package/dist/domains/role-permission/entity.d.ts +2 -2
  105. package/dist/domains/role-permission/entity.d.ts.map +1 -1
  106. package/dist/domains/role-permission/entity.js +15 -2
  107. package/dist/domains/role-permission/entity.js.map +1 -1
  108. package/dist/domains/user/repository.d.ts +7 -6
  109. package/dist/domains/user/repository.d.ts.map +1 -1
  110. package/dist/domains/user/repository.js +17 -9
  111. package/dist/domains/user/repository.js.map +1 -1
  112. package/dist/domains/user-attribute/entity.d.ts.map +1 -1
  113. package/dist/domains/user-attribute/entity.js +13 -1
  114. package/dist/domains/user-attribute/entity.js.map +1 -1
  115. package/dist/domains/user-permission/entity.d.ts +2 -2
  116. package/dist/domains/user-permission/entity.d.ts.map +1 -1
  117. package/dist/domains/user-permission/entity.js +15 -2
  118. package/dist/domains/user-permission/entity.js.map +1 -1
  119. package/dist/domains/utils/attribute.js +1 -1
  120. package/dist/domains/utils/attribute.js.map +1 -1
  121. package/dist/http/controllers/identity-provider/handlers/custom.js +3 -3
  122. package/dist/http/controllers/identity-provider/handlers/custom.js.map +1 -1
  123. package/dist/http/controllers/identity-provider/handlers/read.js +1 -1
  124. package/dist/http/controllers/identity-provider/handlers/read.js.map +1 -1
  125. package/dist/http/controllers/identity-provider/utils/validation.d.ts.map +1 -1
  126. package/dist/http/controllers/identity-provider/utils/validation.js +4 -0
  127. package/dist/http/controllers/identity-provider/utils/validation.js.map +1 -1
  128. package/dist/http/controllers/permission/utils/validation.d.ts.map +1 -1
  129. package/dist/http/controllers/permission/utils/validation.js +0 -1
  130. package/dist/http/controllers/permission/utils/validation.js.map +1 -1
  131. package/dist/http/controllers/robot/handlers/delete.d.ts.map +1 -1
  132. package/dist/http/controllers/robot/handlers/delete.js +3 -1
  133. package/dist/http/controllers/robot/handlers/delete.js.map +1 -1
  134. package/dist/http/controllers/robot/handlers/integrity.d.ts.map +1 -1
  135. package/dist/http/controllers/robot/handlers/integrity.js +24 -15
  136. package/dist/http/controllers/robot/handlers/integrity.js.map +1 -1
  137. package/dist/http/controllers/robot/handlers/update.d.ts.map +1 -1
  138. package/dist/http/controllers/robot/handlers/update.js +4 -2
  139. package/dist/http/controllers/robot/handlers/update.js.map +1 -1
  140. package/dist/http/controllers/robot-permission/handlers/delete.js +1 -1
  141. package/dist/http/controllers/robot-permission/handlers/delete.js.map +1 -1
  142. package/dist/http/controllers/robot-permission/utils/validation.d.ts.map +1 -1
  143. package/dist/http/controllers/robot-permission/utils/validation.js +9 -4
  144. package/dist/http/controllers/robot-permission/utils/validation.js.map +1 -1
  145. package/dist/http/controllers/role/handlers/delete.js +1 -1
  146. package/dist/http/controllers/role/handlers/delete.js.map +1 -1
  147. package/dist/http/controllers/role/handlers/update.js +1 -1
  148. package/dist/http/controllers/role/handlers/update.js.map +1 -1
  149. package/dist/http/controllers/role/utils/validaiton.js +4 -4
  150. package/dist/http/controllers/role/utils/validaiton.js.map +1 -1
  151. package/dist/http/controllers/role-attribute/handlers/update.js +6 -6
  152. package/dist/http/controllers/role-attribute/handlers/update.js.map +1 -1
  153. package/dist/http/controllers/role-permission/handlers/delete.js +1 -1
  154. package/dist/http/controllers/role-permission/handlers/delete.js.map +1 -1
  155. package/dist/http/controllers/role-permission/utils/validation.d.ts.map +1 -1
  156. package/dist/http/controllers/role-permission/utils/validation.js +8 -3
  157. package/dist/http/controllers/role-permission/utils/validation.js.map +1 -1
  158. package/dist/http/controllers/root/authorize/handlers/run.js +1 -1
  159. package/dist/http/controllers/root/authorize/handlers/run.js.map +1 -1
  160. package/dist/http/controllers/root/status/module.js +2 -2
  161. package/dist/http/controllers/root/status/module.js.map +1 -1
  162. package/dist/http/controllers/root/token/handlers/create.js +2 -2
  163. package/dist/http/controllers/root/token/handlers/create.js.map +1 -1
  164. package/dist/http/controllers/user/handlers/update.js +1 -1
  165. package/dist/http/controllers/user-permission/handlers/delete.js +1 -1
  166. package/dist/http/controllers/user-permission/handlers/delete.js.map +1 -1
  167. package/dist/http/controllers/user-permission/utils/validation.d.ts.map +1 -1
  168. package/dist/http/controllers/user-permission/utils/validation.js +7 -2
  169. package/dist/http/controllers/user-permission/utils/validation.js.map +1 -1
  170. package/dist/http/middleware/built-in/auth/module.d.ts.map +1 -1
  171. package/dist/http/middleware/built-in/auth/module.js +8 -3
  172. package/dist/http/middleware/built-in/auth/module.js.map +1 -1
  173. package/dist/http/middleware/built-in/auth/verify.d.ts.map +1 -1
  174. package/dist/http/middleware/built-in/auth/verify.js +30 -30
  175. package/dist/http/middleware/built-in/auth/verify.js.map +1 -1
  176. package/dist/http/middleware/built-in/rate-limit.d.ts.map +1 -1
  177. package/dist/http/middleware/built-in/rate-limit.js +3 -1
  178. package/dist/http/middleware/built-in/rate-limit.js.map +1 -1
  179. package/dist/http/oauth2/grant-types/abstract.js +1 -1
  180. package/dist/http/oauth2/grant-types/abstract.js.map +1 -1
  181. package/dist/http/oauth2/grant-types/authorize.js +2 -2
  182. package/dist/http/oauth2/grant-types/authorize.js.map +1 -1
  183. package/dist/http/oauth2/grant-types/client-credentials.js +2 -2
  184. package/dist/http/oauth2/grant-types/client-credentials.js.map +1 -1
  185. package/dist/http/oauth2/grant-types/internal.js +2 -2
  186. package/dist/http/oauth2/grant-types/internal.js.map +1 -1
  187. package/dist/http/oauth2/grant-types/password.d.ts +2 -1
  188. package/dist/http/oauth2/grant-types/password.d.ts.map +1 -1
  189. package/dist/http/oauth2/grant-types/password.js +59 -6
  190. package/dist/http/oauth2/grant-types/password.js.map +1 -1
  191. package/dist/http/oauth2/grant-types/refresh-token.js +2 -2
  192. package/dist/http/oauth2/grant-types/refresh-token.js.map +1 -1
  193. package/dist/http/oauth2/grant-types/robot-credentials.js +2 -2
  194. package/dist/http/oauth2/grant-types/robot-credentials.js.map +1 -1
  195. package/dist/http/oauth2/token/permissions.d.ts +2 -2
  196. package/dist/http/oauth2/token/permissions.d.ts.map +1 -1
  197. package/dist/http/utils/owner.d.ts.map +1 -1
  198. package/dist/http/utils/owner.js +2 -3
  199. package/dist/http/utils/owner.js.map +1 -1
  200. package/dist/http/validation/utils.d.ts +2 -0
  201. package/dist/http/validation/utils.d.ts.map +1 -1
  202. package/dist/http/validation/utils.js +15 -2
  203. package/dist/http/validation/utils.js.map +1 -1
  204. package/package.json +14 -10
  205. package/dist/config/type.d.ts.map +0 -1
  206. package/dist/config/type.js.map +0 -1
@@ -93,21 +93,24 @@ class DatabaseSeeder {
93
93
  */
94
94
  const userRepository = new domains_1.UserRepository(dataSource);
95
95
  let user = await userRepository.findOneBy({
96
- name: this.getOption('adminUsername'),
96
+ name: this.getOption('userAdminName'),
97
97
  });
98
+ const userPassword = this.getOption('userAdminPassword');
98
99
  if (!user) {
99
100
  user = userRepository.create({
100
- name: this.getOption('adminUsername'),
101
- password: await (0, server_kit_1.hash)(this.getOption('adminPassword')),
101
+ name: this.getOption('userAdminName'),
102
+ password: await (0, server_kit_1.hash)(userPassword),
102
103
  email: 'peter.placzek1996@gmail.com',
103
104
  realm_id: realm.id,
104
- active: true,
105
+ active: this.getOption('userAdminEnabled'),
105
106
  });
106
107
  response.user = user;
107
108
  }
108
- else if (this.getOption('adminPasswordReset')) {
109
- user.password = await (0, server_kit_1.hash)(this.getOption('adminPassword'));
110
- user.active = true;
109
+ else {
110
+ if (this.getOption('userAdminPasswordReset')) {
111
+ user.password = await (0, server_kit_1.hash)(userPassword);
112
+ }
113
+ user.active = this.getOption('userAdminEnabled');
111
114
  }
112
115
  await userRepository.save(user);
113
116
  // -------------------------------------------------
@@ -192,28 +195,28 @@ class DatabaseSeeder {
192
195
  */
193
196
  const robotRepository = dataSource.getRepository(domains_1.RobotEntity);
194
197
  let robot = await robotRepository.findOneBy({
195
- name: core_1.ROBOT_SYSTEM_NAME,
198
+ name: this.getOption('robotAdminName'),
196
199
  realm_id: realm.id,
197
200
  });
198
- const secret = this.getOption('robotSecret') || (0, core_1.createNanoID)(64);
201
+ const secret = this.getOption('robotAdminSecret') || (0, core_1.createNanoID)(64);
199
202
  if (!robot) {
200
203
  robot = robotRepository.create({
201
- name: core_1.ROBOT_SYSTEM_NAME,
204
+ name: this.getOption('robotAdminName'),
202
205
  realm_id: realm.id,
203
206
  secret: await (0, server_kit_1.hash)(secret),
204
- active: this.getOption('robotEnabled'),
207
+ active: this.getOption('robotAdminEnabled'),
205
208
  });
206
209
  await robotRepository.save(robot);
207
210
  robot.secret = secret;
208
211
  response.robot = robot;
209
212
  }
210
213
  else {
211
- if (this.getOption('robotSecretReset')) {
214
+ if (this.getOption('robotAdminSecretReset')) {
212
215
  robot.secret = await (0, server_kit_1.hash)(secret);
213
216
  }
214
- robot.active = this.getOption('robotEnabled');
217
+ robot.active = this.getOption('robotAdminEnabled');
215
218
  await robotRepository.save(robot);
216
- if (this.getOption('robotSecretReset')) {
219
+ if (this.getOption('robotAdminSecretReset')) {
217
220
  robot.secret = secret;
218
221
  response.robot = robot;
219
222
  }
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/database/seeds/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/database/seeds/module.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
1
  import type { DataSource, EntityManager } from 'typeorm';
2
2
  import { Repository } from 'typeorm';
3
3
  import { ClientEntity } from './entity';
4
- export declare class OAuth2ClientRepository extends Repository<ClientEntity> {
4
+ export declare class ClientRepository extends Repository<ClientEntity> {
5
5
  constructor(instance: DataSource | EntityManager);
6
6
  /**
7
7
  * Verify a client by id and secret.
8
8
  *
9
- * @param id
9
+ * @param idOrName
10
10
  * @param secret
11
+ * @param realmId
11
12
  */
12
- verifyCredentials(id: string, secret: string): Promise<ClientEntity | undefined>;
13
+ verifyCredentials(idOrName: string, secret: string, realmId?: string): Promise<ClientEntity | undefined>;
13
14
  }
14
15
  //# sourceMappingURL=repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../src/domains/client/repository.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAmB,UAAU,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,qBAAa,sBAAuB,SAAQ,UAAU,CAAC,YAAY,CAAC;gBACpD,QAAQ,EAAE,UAAU,GAAG,aAAa;IAIhD;;;;;OAKG;IACG,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAI,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CAoB1F"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../src/domains/client/repository.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAmB,UAAU,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,qBAAa,gBAAiB,SAAQ,UAAU,CAAC,YAAY,CAAC;gBAC9C,QAAQ,EAAE,UAAU,GAAG,aAAa;IAIhD;;;;;;OAMG;IACG,iBAAiB,CACnB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CA8BxC"}
@@ -6,34 +6,46 @@
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.OAuth2ClientRepository = void 0;
9
+ exports.ClientRepository = void 0;
10
+ const core_1 = require("@authup/core");
10
11
  const typeorm_1 = require("typeorm");
11
12
  const entity_1 = require("./entity");
12
- class OAuth2ClientRepository extends typeorm_1.Repository {
13
+ class ClientRepository extends typeorm_1.Repository {
13
14
  constructor(instance) {
14
15
  super(entity_1.ClientEntity, typeorm_1.InstanceChecker.isDataSource(instance) ? instance.manager : instance);
15
16
  }
16
17
  /**
17
18
  * Verify a client by id and secret.
18
19
  *
19
- * @param id
20
+ * @param idOrName
20
21
  * @param secret
22
+ * @param realmId
21
23
  */
22
- async verifyCredentials(id, secret) {
23
- const entity = await this.createQueryBuilder('client')
24
- .addSelect('client.secret')
25
- .where('client.id = :id', { id })
26
- .leftJoinAndSelect('client.realm', 'realm')
27
- .getOne();
28
- if (!entity ||
29
- !entity.secret) {
30
- return undefined;
24
+ async verifyCredentials(idOrName, secret, realmId) {
25
+ const query = this.createQueryBuilder('client')
26
+ .leftJoinAndSelect('client.realm', 'realm');
27
+ if ((0, core_1.isUUID)(idOrName)) {
28
+ query.where('client.id = :id', { id: idOrName });
29
+ }
30
+ else {
31
+ query.where('client.name LIKE :name', { name: idOrName });
32
+ if (realmId) {
33
+ query.andWhere('client.realm_id = :realmId', { realmId });
34
+ }
31
35
  }
32
- if (secret !== entity.secret) {
33
- return undefined;
36
+ const entities = await query
37
+ .addSelect('client.secret')
38
+ .getMany();
39
+ for (let i = 0; i < entities.length; i++) {
40
+ if (!entities[i].secret) {
41
+ continue;
42
+ }
43
+ if (secret === entities[i].secret) {
44
+ return entities[i];
45
+ }
34
46
  }
35
- return entity;
47
+ return undefined;
36
48
  }
37
49
  }
38
- exports.OAuth2ClientRepository = OAuth2ClientRepository;
50
+ exports.ClientRepository = ClientRepository;
39
51
  //# sourceMappingURL=repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../src/domains/client/repository.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,qCAAsD;AACtD,qCAAwC;AAExC,MAAa,sBAAuB,SAAQ,oBAAwB;IAChE,YAAY,QAAoC;QAC5C,KAAK,CAAC,qBAAY,EAAE,yBAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC9F,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,MAAc;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;aACjD,SAAS,CAAC,eAAe,CAAC;aAC1B,KAAK,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,CAAC;aAChC,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC;aAC1C,MAAM,EAAE,CAAC;QAEd,IACI,CAAC,MAAM;YACP,CAAC,MAAM,CAAC,MAAM,EAChB,CAAC;YACC,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AA/BD,wDA+BC"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../src/domains/client/repository.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uCAAsC;AAEtC,qCAAsD;AACtD,qCAAwC;AAExC,MAAa,gBAAiB,SAAQ,oBAAwB;IAC1D,YAAY,QAAoC;QAC5C,KAAK,CAAC,qBAAY,EAAE,yBAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC9F,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CACnB,QAAgB,EAChB,MAAc,EACd,OAAgB;QAEhB,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;aAC1C,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAEhD,IAAI,IAAA,aAAM,EAAC,QAAQ,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE1D,IAAI,OAAO,EAAE,CAAC;gBACV,KAAK,CAAC,QAAQ,CAAC,4BAA4B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9D,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK;aACvB,SAAS,CAAC,eAAe,CAAC;aAC1B,OAAO,EAAE,CAAC;QAEf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBACtB,SAAS;YACb,CAAC;YAED,IAAI,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAChC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;AA9CD,4CA8CC"}
@@ -1,3 +1,4 @@
1
+ export * from './ldap';
1
2
  export * from './oauth2';
2
3
  export * from './openid';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/flow/core/index.ts"],"names":[],"mappings":"AAOA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/flow/core/index.ts"],"names":[],"mappings":"AAOA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
@@ -20,6 +20,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
20
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
+ __exportStar(require("./ldap"), exports);
23
24
  __exportStar(require("./oauth2"), exports);
24
25
  __exportStar(require("./openid"), exports);
25
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/flow/core/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,2CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/flow/core/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,yCAAuB;AACvB,2CAAyB;AACzB,2CAAyB"}
@@ -0,0 +1,14 @@
1
+ import { LdapClient } from '../../../../core';
2
+ import type { ILdapIdentityProviderFlow, IdentityProviderFlowIdentity, LdapIdentityProviderFlowOptions } from '../types';
3
+ export declare class LdapIdentityProviderFlow implements ILdapIdentityProviderFlow {
4
+ protected options: LdapIdentityProviderFlowOptions;
5
+ protected client: LdapClient;
6
+ constructor(options: LdapIdentityProviderFlowOptions);
7
+ getIdentityForCredentials(user: string, password: string): Promise<IdentityProviderFlowIdentity>;
8
+ getIdentity(input: string): Promise<IdentityProviderFlowIdentity>;
9
+ bind(user?: string, password?: string): Promise<void>;
10
+ unbind(): Promise<void>;
11
+ findUser(input: string): Promise<Record<string, any> | undefined>;
12
+ findUserGroups(user: Record<string, any>): Promise<string[]>;
13
+ }
14
+ //# sourceMappingURL=ldap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ldap.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/flow/core/ldap.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,+BAA+B,EAAE,MAAM,UAAU,CAAC;AAEzH,qBAAa,wBAAyB,YAAW,yBAAyB;IACtE,SAAS,CAAC,OAAO,EAAG,+BAA+B,CAAC;IAEpD,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC;gBAEjB,OAAO,EAAE,+BAA+B;IAc9C,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,4BAA4B,CAAC;IAQjG,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAmB1D,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAI,OAAO,CAAC,IAAI,CAAC;IAa7D,MAAM,IAAK,OAAO,CAAC,IAAI,CAAC;IAIjB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;IA0ClE,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAuD7E"}
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2024.
4
+ * Author Peter Placzek (tada5hi)
5
+ * For the full copyright and license information,
6
+ * view the LICENSE file that was distributed with this source code.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.LdapIdentityProviderFlow = void 0;
10
+ const core_1 = require("@authup/core");
11
+ const ldapjs_1 = require("ldapjs");
12
+ const core_2 = require("../../../../core");
13
+ class LdapIdentityProviderFlow {
14
+ constructor(options) {
15
+ this.options = options;
16
+ this.client = new core_2.LdapClient({
17
+ url: options.url,
18
+ tls: options.tls,
19
+ startTLS: options.start_tls,
20
+ baseDn: options.base_dn,
21
+ user: options.user,
22
+ password: options.password,
23
+ userNameAttribute: options.user_name_attribute,
24
+ });
25
+ }
26
+ async getIdentityForCredentials(user, password) {
27
+ const identity = await this.getIdentity(user);
28
+ await this.bind(identity.id, password);
29
+ return identity;
30
+ }
31
+ async getIdentity(input) {
32
+ await this.bind();
33
+ const user = await this.findUser(input);
34
+ const identity = {
35
+ id: user.dn,
36
+ name: user[this.options.user_name_attribute || 'cn'] || user.dn,
37
+ email: user[this.options.user_mail_attribute || 'mail'],
38
+ };
39
+ try {
40
+ identity.roles = await this.findUserGroups(user);
41
+ }
42
+ catch (e) {
43
+ // todo: log event
44
+ }
45
+ return identity;
46
+ }
47
+ async bind(user, password) {
48
+ if (!user) {
49
+ return this.client.bind();
50
+ }
51
+ if (!this.client.isDn(user)) {
52
+ const nameAttribute = this.options.user_name_attribute || 'cn';
53
+ user = `${nameAttribute}=${user},${this.client.resolveDn(this.options.user_base_dn, this.options.base_dn)}`;
54
+ }
55
+ return this.client.bind(user, password);
56
+ }
57
+ async unbind() {
58
+ return this.client.unbind();
59
+ }
60
+ async findUser(input) {
61
+ let filter;
62
+ if (this.options.user_filter) {
63
+ filter = (0, core_1.template)(this.options.user_filter, {
64
+ input,
65
+ name_attribute: this.options.user_name_attribute || 'cn',
66
+ mail_attribute: this.options.user_mail_attribute || 'mail',
67
+ display_name_attribute: this.options.user_display_name_attribute || 'cn',
68
+ });
69
+ }
70
+ else if (this.options.user_name_attribute) {
71
+ filter = new ldapjs_1.EqualityFilter({
72
+ attribute: this.options.user_name_attribute,
73
+ value: input,
74
+ });
75
+ }
76
+ else {
77
+ filter = new ldapjs_1.OrFilter({
78
+ filters: [
79
+ new ldapjs_1.EqualityFilter({
80
+ attribute: 'cn',
81
+ value: input,
82
+ }),
83
+ new ldapjs_1.EqualityFilter({
84
+ attribute: 'sAMAccountName',
85
+ value: input,
86
+ }),
87
+ ],
88
+ });
89
+ }
90
+ const entities = await this.client.search({
91
+ filter,
92
+ scope: 'sub',
93
+ }, this.client.resolveDn(this.options.user_base_dn, this.options.base_dn));
94
+ if (entities.length === 0) {
95
+ return undefined;
96
+ }
97
+ return entities[0];
98
+ }
99
+ async findUserGroups(user) {
100
+ const nameAttribute = this.options.group_name_attribute || 'cn';
101
+ const memberAttribute = this.options.group_member_attribute || 'member';
102
+ let filter;
103
+ if (this.options.group_filter) {
104
+ filter = (0, core_1.template)(this.options.group_filter, {
105
+ ...user,
106
+ name_attribute: nameAttribute,
107
+ member_attribute: memberAttribute,
108
+ });
109
+ }
110
+ else {
111
+ filter = new ldapjs_1.AndFilter({
112
+ filters: [
113
+ new ldapjs_1.EqualityFilter({
114
+ attribute: 'objectClass',
115
+ value: this.options.group_class || 'group',
116
+ }),
117
+ new ldapjs_1.EqualityFilter({
118
+ attribute: memberAttribute,
119
+ value: user[this.options.group_member_user_attribute || 'dn'],
120
+ }),
121
+ ],
122
+ });
123
+ }
124
+ const entities = await this.client.search({
125
+ filter,
126
+ scope: 'sub',
127
+ }, this.client.resolveDn(this.options.group_base_dn, this.options.base_dn));
128
+ if (entities.length === 0) {
129
+ return [];
130
+ }
131
+ const attributeKey = this.options.group_name_attribute || 'cn';
132
+ const names = [];
133
+ for (let i = 0; i < entities.length; i++) {
134
+ const attribute = entities[i][attributeKey];
135
+ if (typeof attribute === 'undefined') {
136
+ continue;
137
+ }
138
+ if (typeof attribute === 'string') {
139
+ names.push(attribute);
140
+ continue;
141
+ }
142
+ if (Array.isArray(attribute)) {
143
+ names.push(...attribute.filter((el) => typeof el === 'string'));
144
+ }
145
+ }
146
+ return names;
147
+ }
148
+ }
149
+ exports.LdapIdentityProviderFlow = LdapIdentityProviderFlow;
150
+ //# sourceMappingURL=ldap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ldap.js","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/flow/core/ldap.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,17 @@
1
- import type { IdentityProvider, OAuth2IdentityProviderBase } from '@authup/core';
1
+ import type { IdentityProvider, LdapIdentityProvider, OAuth2IdentityProviderBase } from '@authup/core';
2
2
  import type { Request } from 'routup';
3
3
  export type IdentityProviderFlowIdentity = {
4
- id: string | number;
4
+ id: string;
5
5
  name: string | string[];
6
- email?: string;
6
+ email?: string | string[];
7
7
  roles?: string[];
8
8
  first_name?: string;
9
9
  last_name?: string;
10
10
  };
11
+ export type LdapIdentityProviderFlowOptions = Omit<LdapIdentityProvider, keyof IdentityProvider>;
12
+ export interface ILdapIdentityProviderFlow {
13
+ getIdentity(user: string, password: string): Promise<IdentityProviderFlowIdentity>;
14
+ }
11
15
  export type OAuth2IdentityProviderFlowOptions = IdentityProvider & Partial<OAuth2IdentityProviderBase>;
12
16
  export interface IOAuth2IdentityProviderFlow {
13
17
  buildAuthorizeURL(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/domains/identity-provider/flow/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,MAAM,MAAM,4BAA4B,GAAG;IACvC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,gBAAgB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAEvG,MAAM,WAAW,2BAA2B;IACxC,iBAAiB,IAAK,MAAM,CAAC;IAC7B,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAI,OAAO,CAAC,4BAA4B,CAAC,CAAC;CACnF"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/domains/identity-provider/flow/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AACvG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,MAAM,MAAM,4BAA4B,GAAG;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG,IAAI,CAAC,oBAAoB,EAAE,MAAM,gBAAgB,CAAC,CAAC;AACjG,MAAM,WAAW,yBAAyB;IACtC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAI,OAAO,CAAC,4BAA4B,CAAC,CAAC;CACvF;AAED,MAAM,MAAM,iCAAiC,GAAG,gBAAgB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAEvG,MAAM,WAAW,2BAA2B;IACxC,iBAAiB,IAAK,MAAM,CAAC;IAC7B,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAI,OAAO,CAAC,4BAA4B,CAAC,CAAC;CACnF"}
@@ -1 +1 @@
1
- {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/extract.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD,wBAAgB,6CAA6C,CACzD,KAAK,EAAE,OAAO,GACd,OAAO,CAAC,oBAAoB,CAAC,CAMhC"}
1
+ {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/extract.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD,wBAAgB,6CAA6C,CACzD,KAAK,EAAE,OAAO,GACd,OAAO,CAAC,oBAAoB,CAAC,CAsChC"}
@@ -7,11 +7,40 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.extractLdapIdentityProviderProtocolAttributes = void 0;
10
+ const core_1 = require("@authup/core");
10
11
  function extractLdapIdentityProviderProtocolAttributes(input) {
11
- if (typeof input !== 'object' || input === null) {
12
+ if (!(0, core_1.isObject)(input)) {
12
13
  return {};
13
14
  }
14
- return {};
15
+ const attributes = [
16
+ 'url',
17
+ 'timeout',
18
+ 'start_tls',
19
+ 'tls',
20
+ 'base_dn',
21
+ 'user',
22
+ 'password',
23
+ 'user_base_dn',
24
+ 'user_filter',
25
+ 'user_name_attribute',
26
+ 'user_mail_attribute',
27
+ 'user_display_name_attribute',
28
+ 'group_base_dn',
29
+ 'group_filter',
30
+ 'group_name_attribute',
31
+ 'group_class',
32
+ 'group_member_attribute',
33
+ 'group_member_user_attribute',
34
+ ];
35
+ const output = {};
36
+ for (let i = 0; i < attributes.length; i++) {
37
+ const attribute = attributes[i];
38
+ if (!(0, core_1.hasOwnProperty)(input, attribute)) {
39
+ continue;
40
+ }
41
+ output[attributes[i]] = input[attribute];
42
+ }
43
+ return output;
15
44
  }
16
45
  exports.extractLdapIdentityProviderProtocolAttributes = extractLdapIdentityProviderProtocolAttributes;
17
46
  //# sourceMappingURL=extract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/extract.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,SAAgB,6CAA6C,CACzD,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AARD,sGAQC"}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/extract.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uCAAwD;AAGxD,SAAgB,6CAA6C,CACzD,KAAc;IAEd,IAAI,CAAC,IAAA,eAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAoC;QAChD,KAAK;QACL,SAAS;QACT,WAAW;QACX,KAAK;QACL,SAAS;QACT,MAAM;QACN,UAAU;QACV,cAAc;QACd,aAAa;QACb,qBAAqB;QACrB,qBAAqB;QACrB,6BAA6B;QAC7B,eAAe;QACf,cAAc;QACd,sBAAsB;QACtB,aAAa;QACb,wBAAwB;QACxB,6BAA6B;KAChC,CAAC;IAEF,MAAM,MAAM,GAAmC,EAAE,CAAC;IAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,IAAA,qBAAc,EAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;YACpC,SAAS;QACb,CAAC;QAED,MAAM,CAAC,UAAU,CAAC,CAAC,CAAW,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAxCD,sGAwCC"}
@@ -1,4 +1,8 @@
1
1
  import type { LdapIdentityProvider } from '@authup/core';
2
2
  import type { Request } from 'routup';
3
- export declare function validateLdapIdentityProviderProtocol(req: Request): LdapIdentityProvider;
3
+ /**
4
+ * @throws ZodError
5
+ * @param req
6
+ */
7
+ export declare function validateLdapIdentityProviderProtocol(req: Request): Partial<LdapIdentityProvider>;
4
8
  //# sourceMappingURL=validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/validation.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,wBAAgB,oCAAoC,CAEhD,GAAG,EAAE,OAAO,GACZ,oBAAoB,CAEvB"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/validation.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AA0BtC;;;GAGG;AACH,wBAAgB,oCAAoC,CAChD,GAAG,EAAE,OAAO,GACZ,OAAO,CAAC,oBAAoB,CAAC,CAShC"}
@@ -5,12 +5,47 @@
5
5
  * For the full copyright and license information,
6
6
  * view the LICENSE file that was distributed with this source code.
7
7
  */
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
8
11
  Object.defineProperty(exports, "__esModule", { value: true });
9
12
  exports.validateLdapIdentityProviderProtocol = void 0;
10
- function validateLdapIdentityProviderProtocol(
11
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
12
- req) {
13
- throw new Error('Not implemented');
13
+ const body_1 = require("@routup/basic/body");
14
+ const zod_1 = __importDefault(require("zod"));
15
+ const extract_1 = require("./extract");
16
+ const schema = zod_1.default.object({
17
+ url: zod_1.default.string().url(),
18
+ timeout: zod_1.default.number().min(0).optional().nullable(),
19
+ start_tls: zod_1.default.boolean().optional().nullable(),
20
+ tls: zod_1.default.any().optional().nullable(),
21
+ base_dn: zod_1.default.string().min(3).max(2000).optional()
22
+ .nullable(),
23
+ user: zod_1.default.string().min(3),
24
+ password: zod_1.default.string().min(3),
25
+ user_base_dn: zod_1.default.string().optional().nullable(),
26
+ user_filter: zod_1.default.string().optional().nullable(),
27
+ username_attribute: zod_1.default.string().optional().nullable(),
28
+ mail_attribute: zod_1.default.string().optional().nullable(),
29
+ display_name_attribute: zod_1.default.string().optional().nullable(),
30
+ group_base_dn: zod_1.default.string().optional().nullable(),
31
+ group_filter: zod_1.default.string().optional().nullable(),
32
+ group_name_attribute: zod_1.default.string().optional().nullable(),
33
+ group_class: zod_1.default.string().optional().nullable(),
34
+ group_member_attribute: zod_1.default.string().optional().nullable(),
35
+ group_member_user_attribute: zod_1.default.string().optional().nullable(),
36
+ });
37
+ /**
38
+ * @throws ZodError
39
+ * @param req
40
+ */
41
+ function validateLdapIdentityProviderProtocol(req) {
42
+ const body = (0, body_1.useRequestBody)(req);
43
+ const attributes = (0, extract_1.extractLdapIdentityProviderProtocolAttributes)(body);
44
+ const result = schema.safeParse(attributes);
45
+ if (result.success === false) {
46
+ throw result.error;
47
+ }
48
+ return result.data;
14
49
  }
15
50
  exports.validateLdapIdentityProviderProtocol = validateLdapIdentityProviderProtocol;
16
51
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/validation.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAKH,SAAgB,oCAAoC;AAChD,6DAA6D;AAC7D,GAAY;IAEZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;AACvC,CAAC;AALD,oFAKC"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/ldap/validation.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAGH,6CAAoD;AAEpD,8CAAsB;AACtB,uCAA0E;AAE1E,MAAM,MAAM,GAAG,aAAG,CAAC,MAAM,CAAC;IACtB,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACvB,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,SAAS,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9C,GAAG,EAAE,aAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACpC,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;SAC5C,QAAQ,EAAE;IACf,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAChD,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,kBAAkB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACtD,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,sBAAsB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1D,aAAa,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,YAAY,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAChD,oBAAoB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACxD,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,sBAAsB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1D,2BAA2B,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAClE,CAAC,CAAC;AAEH;;;GAGG;AACH,SAAgB,oCAAoC,CAChD,GAAY;IAEZ,MAAM,IAAI,GAAG,IAAA,qBAAc,EAAC,GAAG,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,IAAA,uDAA6C,EAAC,IAAI,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QAC3B,MAAM,MAAM,CAAC,KAAK,CAAC;IACvB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACvB,CAAC;AAXD,oFAWC"}
@@ -1,4 +1,4 @@
1
- import type { IdentityProviderPreset } from '@authup/core';
1
+ import type { IdentityProviderPreset, OAuth2IdentityProvider } from '@authup/core';
2
2
  import type { Request } from 'routup';
3
- export declare function validateOAuth2IdentityProviderProtocol(req: Request, protocolConfig: `${IdentityProviderPreset}`): Partial<import("@authup/core").OAuth2IdentityProviderBase>;
3
+ export declare function validateOAuth2IdentityProviderProtocol(req: Request, protocolConfig: `${IdentityProviderPreset}`): Partial<OAuth2IdentityProvider>;
4
4
  //# sourceMappingURL=validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/oauth2/validation.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAuBtC,wBAAgB,sCAAsC,CAClD,GAAG,EAAE,OAAO,EACZ,cAAc,EAAE,GAAG,sBAAsB,EAAE,8DAmB9C"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../../src/domains/identity-provider/protocol/oauth2/validation.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAuBtC,wBAAgB,sCAAsC,CAClD,GAAG,EAAE,OAAO,EACZ,cAAc,EAAE,GAAG,sBAAsB,EAAE,GAC3C,OAAO,CAAC,sBAAsB,CAAC,CAoBlC"}
@@ -33,18 +33,17 @@ function validateOAuth2IdentityProviderProtocol(req, protocolConfig) {
33
33
  const body = (0, body_1.useRequestBody)(req);
34
34
  const attributes = (0, extract_1.extractOAuth2IdentityProviderProtocolAttributes)(body);
35
35
  if (protocolConfig) {
36
- const result = protocolSchema.safeParse(body);
36
+ const result = protocolSchema.safeParse(attributes);
37
37
  if (result.success === false) {
38
38
  throw result.error;
39
39
  }
40
+ return result.data;
40
41
  }
41
- else {
42
- const result = schema.safeParse(body);
43
- if (result.success === false) {
44
- throw result.error;
45
- }
42
+ const result = schema.safeParse(attributes);
43
+ if (result.success === false) {
44
+ throw result.error;
46
45
  }
47
- return attributes;
46
+ return result.data;
48
47
  }
49
48
  exports.validateOAuth2IdentityProviderProtocol = validateOAuth2IdentityProviderProtocol;
50
49
  //# sourceMappingURL=validation.js.map