@spinajs/rbac-http-admin 2.0.521 → 2.0.522

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Security.js","sourceRoot":"","sources":["../../../../src/controllers/Users/Security.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Security.js","sourceRoot":"","sources":["../../../../src/controllers/Users/Security.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { BaseController, Ok } from '@spinajs/http';
2
2
  import { IFilterRequest, OrderDTO, PaginationDTO } from '@spinajs/orm-http';
3
- import { PasswordProvider, User } from '@spinajs/rbac';
3
+ import { User } from '@spinajs/rbac';
4
4
  import { RoleGuard } from '../../interfaces.js';
5
5
  import '../../services/RoleGuard.js';
6
6
  export declare class CreateUserDto {
7
7
  Login: string;
8
8
  Email: string;
9
- Role: string;
9
+ Role: string | string[];
10
10
  Metadata?: {
11
11
  [key: string]: any;
12
12
  };
@@ -25,7 +25,7 @@ export declare class CreateUserDto {
25
25
  export declare class UpdateUserDto {
26
26
  Login?: string;
27
27
  Email?: string;
28
- Role?: string;
28
+ Role?: string | string[];
29
29
  constructor(data: Partial<UpdateUserDto>);
30
30
  }
31
31
  /**
@@ -35,7 +35,6 @@ export declare class UpdateUserDto {
35
35
  * @tags Admin Users
36
36
  */
37
37
  export declare class Users extends BaseController {
38
- protected PasswordProvider: PasswordProvider;
39
38
  protected RoleGuard: RoleGuard;
40
39
  /**
41
40
  * List users (admin)
@@ -95,29 +94,34 @@ export declare class Users extends BaseController {
95
94
  /**
96
95
  * Create user (admin)
97
96
  * Creates a new user account with a system-generated temporary password. The account is
98
- * created inactive and the temporary password is never returned issue a reset link with
99
- * `POST /users/security/password-reset-request/:user` and activate the account once the
100
- * user has set their own password.
97
+ * created inactive and the temporary password is never returned: a single-use password-reset
98
+ * link is mailed to the address instead, so the owner sets their own password and nothing
99
+ * has to travel back through an administrator. Activate the account once they have.
100
+ * `Role` takes one role name or a list of them; every entry is checked by the role guard, and
101
+ * one refused entry refuses the whole request.
101
102
  * @security cookieAuth
102
103
  * @returns {User} Created user account
103
- * @response 400 Validation error — missing required fields, invalid format, unknown role or a protected metadata key
104
+ * @response 400 Validation error — missing required fields, invalid format, an empty or unknown role, or a protected metadata key
104
105
  * @response 401 Unauthorized — valid session required
105
- * @response 403 Forbidden — createAny permission required, or the requested role grants more than the caller holds
106
- * @response 409 Login or email already in use
106
+ * @response 403 Forbidden — createAny permission required, or a requested role grants more than the caller holds
107
+ * @response 409 Login or email already in use, naming the clashing field in `parameter`
107
108
  */
108
109
  addUser(actor: User, data: CreateUserDto): Promise<Ok<import("@spinajs/orm").ModelDataWithRelationData<User>>>;
109
110
  /**
110
111
  * Update user (admin)
111
112
  * Partially updates a user account. All fields are optional — only provided fields are changed.
112
113
  * Metadata is NOT handled here; use the `/user/:uuid/metadata` routes.
114
+ * `Role` takes one role name or a list of them and REPLACES the account's whole role list, so
115
+ * an entry left out is revoked and goes through the revoke half of the role guard. An empty
116
+ * list is refused rather than applied.
113
117
  * @security cookieAuth
114
118
  * @param user User UUID path parameter
115
119
  * @response 200 User updated successfully
116
- * @response 400 Validation error — invalid field format or unknown role
120
+ * @response 400 Validation error — invalid field format, an empty role list or an unknown role
117
121
  * @response 401 Unauthorized — valid session required
118
122
  * @response 403 Forbidden — updateAny permission required, or the role change is refused by the role guard
123
+ * @response 409 Login or email already in use by another account, naming the clashing field in `parameter`
119
124
  * @response 404 User not found
120
- * @response 409 Login or email already in use by another account
121
125
  */
122
126
  updateUser(actor: User, user: User, data: UpdateUserDto): Promise<Ok<any>>;
123
127
  /**
@@ -147,29 +151,28 @@ export declare class Users extends BaseController {
147
151
  */
148
152
  restoreUser(uuid: string): Promise<Ok<any>>;
149
153
  /**
150
- * The requested sort column, or the default. Rejects anything outside
151
- * {@link SORTABLE_COLUMNS}.
152
- */
153
- protected sortColumn(order?: OrderDTO): string;
154
- /**
155
- * Refuses metadata keys that decide account access.
154
+ * Runs `work`, turning rbac's duplicate-account refusal into the 409 this API
155
+ * has always answered.
156
+ *
157
+ * rbac throws a transport-agnostic {@link UserAlreadyExists} — it has no business
158
+ * knowing about status codes — so the translation belongs here. `__handle_error__`
159
+ * looks the response up by `err.constructor.name`, which is why this rethrows a
160
+ * plain {@link ResourceDuplicated} rather than a subclass: a subclass would miss
161
+ * the 409 mapping entirely and answer 500.
156
162
  *
157
- * `user:pwd_reset:token` is a bearer credential for the public reset endpoint
158
- * and `user:2fa:*` is the second factor itself writing either through a
159
- * generic key-value merge hands out an account rather than annotating one.
160
- * Ban and lockout keys are refused for the same reason bans have their own
161
- * route: written directly they skip the event, the email and the session
162
- * revocation that make a ban mean something.
163
+ * The 409 carries WHICH field clashed, not only that something did. The error
164
+ * body is built by spreading the thrown exception's own enumerable properties
165
+ * (`__handle_error__`, @spinajs/http), so `parameter` reaches the client
166
+ * alongside `message` in the shape {@link ValidationFailed} already uses for
167
+ * schema rejections an ajv-style entry per offending field. A form can then
168
+ * mark the Email input rather than showing "something is already in use"
169
+ * somewhere off to the side.
163
170
  */
164
- protected assertNoProtectedMetadata(metadata?: {
165
- [key: string]: any;
166
- }): void;
171
+ protected asDuplicateResponse<T>(work: () => Promise<T>): Promise<T>;
167
172
  /**
168
- * Rejects a login / email already taken by another account.
169
- *
170
- * Soft-deleted rows are included on purpose: they still occupy the unique
171
- * indexes, so ignoring them would trade this 409 for a driver error and a 500.
173
+ * The requested sort column, or the default. Rejects anything outside
174
+ * {@link SORTABLE_COLUMNS}.
172
175
  */
173
- protected assertUnique(login?: string, email?: string, exceptUserId?: number): Promise<void>;
176
+ protected sortColumn(order?: OrderDTO): string;
174
177
  }
175
178
  //# sourceMappingURL=Users.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Users.d.ts","sourceRoot":"","sources":["../../../../src/controllers/Users/Users.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAA4B,EAAE,EAAqC,MAAM,eAAe,CAAC;AAGhH,OAAO,EAAyD,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnI,OAAO,EAAsB,gBAAgB,EAAE,IAAI,EAAwD,MAAM,eAAe,CAAC;AAIjI,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAOhD,OAAO,6BAA6B,CAAC;AAqBrC,qBAgBa,aAAa;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAEzC,YAAY,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAEvC;CACF;AAED;;;;;;;;;GASG;AACH,qBAUa,aAAa;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IAErB,YAAY,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAEvC;CACF;AA2ED;;;;;GAKG;AACH,qBAGa,KAAM,SAAQ,cAAc;IAEvC,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;IAE/B;;;;;;;;;;;;;;;;;;OAkBG;IAGU,IAAI,CACN,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAQzB,OAAO,CAAC,EAAE,MAAM,EAAE,EAElB,MAAM,CAAC,EAAE,cAAc,yEAgDxB;IAED;;;;;;;;;OASG;IAGU,eAAe,CAAgB,KAAK,EAAE,IAAI,yBAEtD;IAED;;;;;;;;;;OAUG;IAGU,aAAa,CACqC,IAAI,EAAE,IAAI,EAQvE,OAAO,CAAC,EAAE,MAAM,EAAE,uEAKnB;IAED;;;;;;;;;;OAUG;IAGU,UAAU,CACyC,IAAI,EAAE,IAAI,EAQxE,OAAO,CAAC,EAAE,MAAM,EAAE,uEAKnB;IAED;;;;;;;;;;;;OAYG;IAGU,OAAO,CAAgB,KAAK,EAAE,IAAI,EAAU,IAAI,EAAE,aAAa,uEAY3E;IAED;;;;;;;;;;;;OAYG;IAGU,UAAU,CAAgB,KAAK,EAAE,IAAI,EAAsF,IAAI,EAAE,IAAI,EAAU,IAAI,EAAE,aAAa,oBA2B9K;IAED;;;;;;;;;;;OAWG;IAGU,UAAU,CAAgB,KAAK,EAAE,IAAI,EAAsF,IAAI,EAAE,IAAI,oBAKjJ;IAED;;;;;;;;;;;OAWG;IAGU,WAAW,CAAU,IAAI,EAAE,MAAM,oBAiB7C;IAED;;;OAGG;IACH,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,CAY7C;IAED;;;;;;;;;OASG;IACH,SAAS,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,IAAI,CAmB3E;IAED;;;;;OAKG;IAGH,UAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBjG;CACF"}
1
+ {"version":3,"file":"Users.d.ts","sourceRoot":"","sources":["../../../../src/controllers/Users/Users.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAA4B,EAAE,EAAqC,MAAM,eAAe,CAAC;AAGhH,OAAO,EAAyD,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnI,OAAO,EAAoD,IAAI,EAAgC,MAAM,eAAe,CAAC;AAIrH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAOhD,OAAO,6BAA6B,CAAC;AAyErC,qBAgBa,aAAa;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,QAAQ,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAEzC,YAAY,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAEvC;CACF;AAoBD;;;;;;;;;GASG;AACH,qBAUa,aAAa;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEhC,YAAY,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,EAEvC;CACF;AA2ED;;;;;GAKG;AACH,qBAGa,KAAM,SAAQ,cAAc;IAEvC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC;IAE/B;;;;;;;;;;;;;;;;;;OAkBG;IAGU,IAAI,CACN,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAQzB,OAAO,CAAC,EAAE,MAAM,EAAE,EAElB,MAAM,CAAC,EAAE,cAAc,yEAgDxB;IAED;;;;;;;;;OASG;IAGU,eAAe,CAAgB,KAAK,EAAE,IAAI,yBAEtD;IAED;;;;;;;;;;OAUG;IAGU,aAAa,CACqC,IAAI,EAAE,IAAI,EAQvE,OAAO,CAAC,EAAE,MAAM,EAAE,uEAKnB;IAED;;;;;;;;;;OAUG;IAGU,UAAU,CACyC,IAAI,EAAE,IAAI,EAQxE,OAAO,CAAC,EAAE,MAAM,EAAE,uEAKnB;IAED;;;;;;;;;;;;;;OAcG;IAGU,OAAO,CAAgB,KAAK,EAAE,IAAI,EAAU,IAAI,EAAE,aAAa,uEAe3E;IAED;;;;;;;;;;;;;;;OAeG;IAGU,UAAU,CAAgB,KAAK,EAAE,IAAI,EAAsF,IAAI,EAAE,IAAI,EAAU,IAAI,EAAE,aAAa,oBA+B9K;IAED;;;;;;;;;;;OAWG;IAGU,UAAU,CAAgB,KAAK,EAAE,IAAI,EAAsF,IAAI,EAAE,IAAI,oBAKjJ;IAED;;;;;;;;;;;OAWG;IAGU,WAAW,CAAU,IAAI,EAAE,MAAM,oBAiB7C;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,UAAgB,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAyBzE;IAED;;;OAGG;IACH,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,CAY7C;CAEF"}
@@ -10,13 +10,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
- import { Autoinject } from '@spinajs/di';
14
13
  import { AutoinjectService } from '@spinajs/configuration';
15
14
  import { BaseController, BasePath, Body, Del, Get, Ok, Param, Patch, Policy, Post, Query } from '@spinajs/http';
16
15
  import { InvalidArgument, ResourceDuplicated, ResourceNotFound } from '@spinajs/exceptions';
17
16
  import { SortOrder, SqlOperator } from '@spinajs/orm';
18
17
  import { Filter, FromModel, OrderDTO, PaginationDTO } from '@spinajs/orm-http';
19
- import { create, deleteUser, PasswordProvider, User, USER_SECURITY_METADATA_KEYS, _user_update, userModel } from '@spinajs/rbac';
18
+ import { assertUserUnique, create, deleteUser, updateUser, User, UserAlreadyExists, userModel } from '@spinajs/rbac';
20
19
  import { AuthorizedPolicy, Permission, Resource, User as CurrentUser } from '@spinajs/rbac-http';
21
20
  import { Schema } from '@spinajs/validation';
22
21
  import { RoleGuard } from '../../interfaces.js';
@@ -42,6 +41,55 @@ const SORTABLE_COLUMNS = ['Uuid', 'Login', 'Email', 'Role', 'IsActive', 'Created
42
41
  */
43
42
  const MAX_PAGE_SIZE = 100;
44
43
  const DEFAULT_PAGE_SIZE = 10;
44
+ /**
45
+ * Upper bound on how many roles one account may be given in a single request.
46
+ * An account holds a handful of switchable profiles, not an unbounded list, and
47
+ * every entry costs a guard check.
48
+ */
49
+ const MAX_ROLES_PER_USER = 16;
50
+ /**
51
+ * A single role name: no whitespace anywhere, so a "role" made only of blanks
52
+ * cannot pass as one.
53
+ *
54
+ * `minLength` alone accepts `' '` and `[' ', '']` — every entry is a string of
55
+ * allowed length — which reached `create()` as an empty role list and produced
56
+ * an account nobody can use. The pattern refuses that here, in the schema, so
57
+ * the caller gets a 400 naming the offending field instead of a handler-thrown
58
+ * error with no field attached. Banning EDGE whitespace too keeps `uniqueItems`
59
+ * honest: `'user'` and `' user '` would otherwise be two distinct entries
60
+ * denoting one role, and the guard is charged per entry.
61
+ */
62
+ const ROLE_NAME = {
63
+ type: 'string',
64
+ minLength: 1,
65
+ maxLength: 32,
66
+ pattern: '^\\S+$',
67
+ };
68
+ /**
69
+ * The `Role` field of both DTOs: one role name, or a list of them.
70
+ *
71
+ * An account has always held a role LIST (`User.Role` is a set), and the roles
72
+ * an application defines are typically switchable profiles a person may hold
73
+ * several of at once. The single-string form is kept because it is what every
74
+ * existing caller sends.
75
+ *
76
+ * `minItems` is what refuses `[]`. Stripping every role off an account is not
77
+ * an update these routes perform: the account would keep existing while being
78
+ * able to do nothing at all, and only another administrator could repair it.
79
+ */
80
+ const ROLE_FIELD = {
81
+ description: 'RBAC role to assign to the user, or a list of roles',
82
+ oneOf: [
83
+ ROLE_NAME,
84
+ {
85
+ type: 'array',
86
+ items: ROLE_NAME,
87
+ minItems: 1,
88
+ maxItems: MAX_ROLES_PER_USER,
89
+ uniqueItems: true,
90
+ },
91
+ ],
92
+ };
45
93
  let CreateUserDto = class CreateUserDto {
46
94
  constructor(data) {
47
95
  Object.assign(this, data);
@@ -54,7 +102,7 @@ CreateUserDto = __decorate([
54
102
  properties: {
55
103
  Login: { type: 'string', minLength: 3, maxLength: 32, description: 'Unique login name (3–32 characters)' },
56
104
  Email: { type: 'string', format: 'email', description: 'Unique email address' },
57
- Role: { type: 'string', minLength: 1, maxLength: 32, description: 'RBAC role to assign to the user' },
105
+ Role: ROLE_FIELD,
58
106
  Metadata: {
59
107
  type: 'object',
60
108
  $id: 'arrow.common.userMetadata',
@@ -67,6 +115,21 @@ CreateUserDto = __decorate([
67
115
  __metadata("design:paramtypes", [Object])
68
116
  ], CreateUserDto);
69
117
  export { CreateUserDto };
118
+ /**
119
+ * The roles a `Role` field denotes, whether it was sent as one name or a list.
120
+ *
121
+ * Shape normalisation only — every rejection lives in {@link ROLE_FIELD}. The
122
+ * trim and the de-duplication are belt-and-braces for callers that reach the
123
+ * handler without body validation ( tests, in-process calls ): the guard is
124
+ * charged per entry, so a duplicate would be checked twice.
125
+ */
126
+ function roleList(role) {
127
+ if (role === undefined || role === null) {
128
+ return [];
129
+ }
130
+ const wanted = (Array.isArray(role) ? role : [role]).map((r) => String(r ?? '').trim()).filter((r) => r.length > 0);
131
+ return [...new Set(wanted)];
132
+ }
70
133
  /**
71
134
  * PATCH body. Separate from {@link CreateUserDto} because the two have opposite
72
135
  * requirements: creation needs all three fields, an update needs none of them.
@@ -89,7 +152,7 @@ UpdateUserDto = __decorate([
89
152
  properties: {
90
153
  Login: { type: 'string', minLength: 3, maxLength: 32, description: 'Unique login name (3–32 characters)' },
91
154
  Email: { type: 'string', format: 'email', description: 'Unique email address' },
92
- Role: { type: 'string', minLength: 1, maxLength: 32, description: 'RBAC role to assign to the user' },
155
+ Role: ROLE_FIELD,
93
156
  },
94
157
  additionalProperties: false,
95
158
  }),
@@ -277,43 +340,53 @@ let Users = class Users extends BaseController {
277
340
  /**
278
341
  * Create user (admin)
279
342
  * Creates a new user account with a system-generated temporary password. The account is
280
- * created inactive and the temporary password is never returned issue a reset link with
281
- * `POST /users/security/password-reset-request/:user` and activate the account once the
282
- * user has set their own password.
343
+ * created inactive and the temporary password is never returned: a single-use password-reset
344
+ * link is mailed to the address instead, so the owner sets their own password and nothing
345
+ * has to travel back through an administrator. Activate the account once they have.
346
+ * `Role` takes one role name or a list of them; every entry is checked by the role guard, and
347
+ * one refused entry refuses the whole request.
283
348
  * @security cookieAuth
284
349
  * @returns {User} Created user account
285
- * @response 400 Validation error — missing required fields, invalid format, unknown role or a protected metadata key
350
+ * @response 400 Validation error — missing required fields, invalid format, an empty or unknown role, or a protected metadata key
286
351
  * @response 401 Unauthorized — valid session required
287
- * @response 403 Forbidden — createAny permission required, or the requested role grants more than the caller holds
288
- * @response 409 Login or email already in use
352
+ * @response 403 Forbidden — createAny permission required, or a requested role grants more than the caller holds
353
+ * @response 409 Login or email already in use, naming the clashing field in `parameter`
289
354
  */
290
355
  async addUser(actor, data) {
291
- await this.RoleGuard.assertCanAssignRoles(actor, null, [data.Role]);
292
- this.assertNoProtectedMetadata(data.Metadata);
293
- await this.assertUnique(data.Login, data.Email);
294
- const temporaryPassword = this.PasswordProvider.generate();
295
- const { User: created } = await create(data.Email, data.Login, temporaryPassword, [data.Role], undefined, data.Metadata);
296
- // NOTE: create() returns { User, Password } where Password is the plaintext
297
- // temporary password. It must NOT be sent in the response return only the
298
- // created user (dehydrated, so the hash and internal id stay hidden too).
356
+ const roles = roleList(data.Role);
357
+ await this.RoleGuard.assertCanAssignRoles(actor, null, roles);
358
+ // No password: `create()` generates one AND mails the reset link that hands
359
+ // the account to its owner. Both belong to the action, not to this route —
360
+ // every other caller that creates an account needs them just as much, and
361
+ // the uniqueness refusal comes from there now for the same reason.
362
+ const { User: created } = await this.asDuplicateResponse(() => create(data.Email, data.Login, roles, { metadata: data.Metadata }));
363
+ // NOTE: create() also returns the plaintext generated password. It must NOT
364
+ // be sent in the response — return only the created user (dehydrated, so the
365
+ // hash and internal id stay hidden too).
299
366
  return new Ok(created.dehydrateWithRelations({ dateTimeFormat: 'iso' }));
300
367
  }
301
368
  /**
302
369
  * Update user (admin)
303
370
  * Partially updates a user account. All fields are optional — only provided fields are changed.
304
371
  * Metadata is NOT handled here; use the `/user/:uuid/metadata` routes.
372
+ * `Role` takes one role name or a list of them and REPLACES the account's whole role list, so
373
+ * an entry left out is revoked and goes through the revoke half of the role guard. An empty
374
+ * list is refused rather than applied.
305
375
  * @security cookieAuth
306
376
  * @param user User UUID path parameter
307
377
  * @response 200 User updated successfully
308
- * @response 400 Validation error — invalid field format or unknown role
378
+ * @response 400 Validation error — invalid field format, an empty role list or an unknown role
309
379
  * @response 401 Unauthorized — valid session required
310
380
  * @response 403 Forbidden — updateAny permission required, or the role change is refused by the role guard
381
+ * @response 409 Login or email already in use by another account, naming the clashing field in `parameter`
311
382
  * @response 404 User not found
312
- * @response 409 Login or email already in use by another account
313
383
  */
314
384
  async updateUser(actor, user, data) {
315
- if (data.Role) {
316
- const next = [data.Role];
385
+ // `data.Role` may be an ARRAY, and `[]` is truthy — so the presence check is
386
+ // on the FIELD, not on the value. An empty or blanks-only list never gets
387
+ // this far: `ROLE_FIELD` refuses it during body validation.
388
+ const next = data.Role !== undefined ? roleList(data.Role) : null;
389
+ if (next) {
317
390
  const added = next.filter((r) => !user.Role.includes(r));
318
391
  const removed = user.Role.filter((r) => !next.includes(r));
319
392
  // A role list REPLACEMENT is a grant and a revoke at the same time, and
@@ -325,11 +398,11 @@ let Users = class Users extends BaseController {
325
398
  }
326
399
  }
327
400
  if ((data.Login && data.Login !== user.Login) || (data.Email && data.Email !== user.Email)) {
328
- await this.assertUnique(data.Login !== user.Login ? data.Login : undefined, data.Email !== user.Email ? data.Email : undefined, user.Id);
401
+ await this.asDuplicateResponse(() => assertUserUnique(data.Login !== user.Login ? data.Login : undefined, data.Email !== user.Email ? data.Email : undefined, user.Id));
329
402
  }
330
403
  user.Login = data.Login ?? user.Login;
331
404
  user.Email = data.Email ?? user.Email;
332
- user.Role = data.Role ? [data.Role] : user.Role;
405
+ user.Role = next ?? user.Role;
333
406
  await user.update();
334
407
  return new Ok();
335
408
  }
@@ -373,9 +446,51 @@ let Users = class Users extends BaseController {
373
446
  if (!user.DeletedAt) {
374
447
  throw new InvalidArgument(`User ${uuid} is not deleted`);
375
448
  }
376
- await _user_update({ DeletedAt: null })(user);
449
+ await updateUser(user, { DeletedAt: null });
377
450
  return new Ok();
378
451
  }
452
+ /**
453
+ * Runs `work`, turning rbac's duplicate-account refusal into the 409 this API
454
+ * has always answered.
455
+ *
456
+ * rbac throws a transport-agnostic {@link UserAlreadyExists} — it has no business
457
+ * knowing about status codes — so the translation belongs here. `__handle_error__`
458
+ * looks the response up by `err.constructor.name`, which is why this rethrows a
459
+ * plain {@link ResourceDuplicated} rather than a subclass: a subclass would miss
460
+ * the 409 mapping entirely and answer 500.
461
+ *
462
+ * The 409 carries WHICH field clashed, not only that something did. The error
463
+ * body is built by spreading the thrown exception's own enumerable properties
464
+ * (`__handle_error__`, @spinajs/http), so `parameter` reaches the client
465
+ * alongside `message` in the shape {@link ValidationFailed} already uses for
466
+ * schema rejections — an ajv-style entry per offending field. A form can then
467
+ * mark the Email input rather than showing "something is already in use"
468
+ * somewhere off to the side.
469
+ */
470
+ async asDuplicateResponse(work) {
471
+ try {
472
+ return await work();
473
+ }
474
+ catch (err) {
475
+ if (!(err instanceof UserAlreadyExists)) {
476
+ throw err;
477
+ }
478
+ const clashes = (err.data?.fields ?? []).slice();
479
+ const duplicated = new ResourceDuplicated(err.message);
480
+ Object.assign(duplicated, {
481
+ parameter: clashes.map((field) => ({
482
+ // JSON Pointer into the request body, exactly as ajv reports one — a
483
+ // client maps it to its own field name with the same code path it
484
+ // already uses for a 400.
485
+ instancePath: `/${field}`,
486
+ keyword: 'duplicate',
487
+ params: { field },
488
+ message: `${field} already in use`,
489
+ })),
490
+ });
491
+ throw duplicated;
492
+ }
493
+ }
379
494
  /**
380
495
  * The requested sort column, or the default. Rejects anything outside
381
496
  * {@link SORTABLE_COLUMNS}.
@@ -390,64 +505,7 @@ let Users = class Users extends BaseController {
390
505
  }
391
506
  return column;
392
507
  }
393
- /**
394
- * Refuses metadata keys that decide account access.
395
- *
396
- * `user:pwd_reset:token` is a bearer credential for the public reset endpoint
397
- * and `user:2fa:*` is the second factor itself — writing either through a
398
- * generic key-value merge hands out an account rather than annotating one.
399
- * Ban and lockout keys are refused for the same reason bans have their own
400
- * route: written directly they skip the event, the email and the session
401
- * revocation that make a ban mean something.
402
- */
403
- assertNoProtectedMetadata(metadata) {
404
- if (!metadata) {
405
- return;
406
- }
407
- const offending = Object.keys(metadata).filter((key) => {
408
- // A glob reaches the metadata relation's setter as a PATTERN and rewrites
409
- // every matching entry, so `*` alone would overwrite the whole set —
410
- // including the protected keys listed above.
411
- if (key.includes('*') || key.includes('?')) {
412
- return true;
413
- }
414
- return USER_SECURITY_METADATA_KEYS.includes(key);
415
- });
416
- if (offending.length > 0) {
417
- throw new InvalidArgument(`Metadata keys cannot be set through this endpoint: ${offending.join(', ')}`);
418
- }
419
- }
420
- /**
421
- * Rejects a login / email already taken by another account.
422
- *
423
- * Soft-deleted rows are included on purpose: they still occupy the unique
424
- * indexes, so ignoring them would trade this 409 for a driver error and a 500.
425
- */
426
- // base User on purpose: uniqueness is global — a scoped model would hide the
427
- // clashing row and turn this 409 into a driver 500
428
- async assertUnique(login, email, exceptUserId) {
429
- const clashes = [];
430
- if (login) {
431
- const found = await User.query().withDeleted().where('Login', login).first();
432
- if (found && found.Id !== exceptUserId) {
433
- clashes.push('Login');
434
- }
435
- }
436
- if (email) {
437
- const found = await User.query().withDeleted().where('Email', email).first();
438
- if (found && found.Id !== exceptUserId) {
439
- clashes.push('Email');
440
- }
441
- }
442
- if (clashes.length > 0) {
443
- throw new ResourceDuplicated(`${clashes.join(' and ')} already in use`);
444
- }
445
- }
446
508
  };
447
- __decorate([
448
- Autoinject(),
449
- __metadata("design:type", PasswordProvider)
450
- ], Users.prototype, "PasswordProvider", void 0);
451
509
  __decorate([
452
510
  AutoinjectService('rbac.admin.roleGuard'),
453
511
  __metadata("design:type", RoleGuard)
@@ -1 +1 @@
1
- {"version":3,"file":"Users.js","sourceRoot":"","sources":["../../../../src/controllers/Users/Users.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Users.js","sourceRoot":"","sources":["../../../../src/controllers/Users/Users.ts"],"names":[],"mappings":"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"}