Iván Ovejero
7c33292483
refactor(core): Move integration test utils for insights ( #16693 )
2025-06-25 17:32:54 +02:00
Andreas Fitzek
a6ded1fc80
fix(core): Pagination was broken for users list ( #16697 )
2025-06-25 16:54:22 +02:00
Andreas Fitzek
c4a50df824
chore(core): Expose mfaEnabled field to users list endpoint ( #16654 )
2025-06-24 14:21:43 +02:00
Andreas Fitzek
c0d1ff6e4c
feat(core): Extend user list to allow expanding the user list to projects ( #16314 )
...
Co-authored-by: Guillaume Jacquart <jacquart.guillaume@gmail.com >
Co-authored-by: Csaba Tuncsik <csaba@n8n.io >
Co-authored-by: Csaba Tuncsik <csaba.tuncsik@gmail.com >
2025-06-18 22:26:50 +02:00
Iván Ovejero
e122b3f0f9
refactor(core): Move UserRepository and subscribers to @n8n/db ( #15352 )
2025-05-13 15:24:26 +02:00
Iván Ovejero
1f6a36e26e
refactor(core): Move shared workflow and shared credentials repositories to @n8n/db ( #15255 )
2025-05-09 17:10:25 +02:00
Iván Ovejero
32b72011e6
refactor(core): Move second batch of repositories to @n8n/db ( #15137 )
2025-05-06 16:40:34 +02:00
Iván Ovejero
20834abb56
refactor(core): Move interrelated entities to @n8n/db ( #15050 )
2025-05-02 12:19:32 +02:00
Ricardo Espinoza
5633502c63
feat(core): Allow transferring user's data to team project when deleting them (no-changelog) ( #13941 )
2025-03-18 15:25:40 -04:00
Ricardo Espinoza
c7bcdc544d
feat(core): Transfer folder structure when deleting user (no-changelog) ( #13845 )
2025-03-12 10:34:51 -04:00
कारतोफ्फेलस्क्रिप्ट™
39d5e0ff87
refactor(core): Replace typedi with our custom DI system (no-changelog) ( #12389 )
...
Co-authored-by: Iván Ovejero <ivov.src@gmail.com >
2025-01-06 10:21:24 +01:00
कारतोफ्फेलस्क्रिप्ट™
769ddfdd1d
refactor(core): Move some request DTOs to @n8n/api-types (no-changelog) ( #10880 )
2024-09-20 21:14:06 +02:00
Tomi Turtiainen
5156313074
refactor(core): Enable import/order eslint rule ( #10794 )
2024-09-12 19:07:18 +03:00
Iván Ovejero
6485ca0a4b
refactor(core): Enforce filename casing in cli package (no-changelog) ( #10594 )
2024-08-28 17:57:46 +02:00
Iván Ovejero
d7241cfc3a
refactor(core): Standardize filename casing for services and Public API (no-changelog) ( #10579 )
2024-08-28 13:59:27 +02:00
कारतोफ्फेलस्क्रिप्ट™
ab9835126e
refactor(core): Use @/databases/ instead of @db/ (no-changelog) ( #10573 )
2024-08-27 17:24:20 +02:00
Iván Ovejero
fd58a272e1
refactor(core): Standardize filename casing for controllers and databases (no-changelog) ( #10564 )
2024-08-27 16:44:32 +02:00
Iván Ovejero
797342343f
perf(core): Introduce concurrency control for main mode ( #9453 )
2024-06-12 15:05:43 +02:00
Danny Martini
8da0d6e9ba
fix(core): Fix type errors (no-changelog) ( #9571 )
2024-05-31 14:06:13 +02:00
कारतोफ्फेलस्क्रिप्ट™
08902bf941
refactor(core): Update supertest, and fix some typing errors (no-changelog) ( #9527 )
2024-05-31 09:40:03 +02:00
कारतोफ्फेलस्क्रिप्ट™
fc83005ba0
fix(core): Do not allow admins to delete the instance owner ( #9489 )
2024-05-22 16:23:40 +02:00
कारतोफ्फेलस्क्रिप्ट™
88b9a4070b
fix(core): Do not allow admins to generate password-reset links for instance owner ( #9488 )
2024-05-22 16:13:56 +02:00
Csaba Tuncsik
596c472ecc
feat: RBAC ( #8922 )
...
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com >
Co-authored-by: Val <68596159+valya@users.noreply.github.com >
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
Co-authored-by: Valya Bullions <valya@n8n.io >
Co-authored-by: Danny Martini <danny@n8n.io >
Co-authored-by: Danny Martini <despair.blue@gmail.com >
Co-authored-by: Iván Ovejero <ivov.src@gmail.com >
Co-authored-by: Omar Ajoue <krynble@gmail.com >
Co-authored-by: oleg <me@olegivaniv.com >
Co-authored-by: Michael Kret <michael.k@radency.com >
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com >
Co-authored-by: Elias Meire <elias@meire.dev >
Co-authored-by: Giulio Andreini <andreini@netseven.it >
Co-authored-by: Giulio Andreini <g.andreini@gmail.com >
Co-authored-by: Ayato Hayashi <go12limchangyong@gmail.com >
2024-05-17 10:53:15 +02:00
Iván Ovejero
b8ab049932
refactor(core, editor): Remove legacy nodesAccess (no-changelog) ( #9016 )
2024-04-05 13:17:34 +02:00
कारतोफ्फेलस्क्रिप्ट™
d6deceacde
refactor(core): Remove roleId indirection (no-changelog) ( #8413 )
2024-01-24 13:38:57 +01:00
Iván Ovejero
2eb829a6b4
refactor(core): Use DI in execution services (no-changelog) ( #8358 )
2024-01-17 15:42:19 +01:00
कारतोफ्फेलस्क्रिप्ट™
cfe9525dd4
fix(core): Better input validation for the changeRole endpoint ( #8189 )
...
also refactored the code to
1. stop passing around `scope === 'global'`, since this code can be used
only for changing globalRole.
2. leak less details when input validation fails.
## Review / Merge checklist
- [x] PR title and summary are descriptive
- [x] Tests included
2024-01-03 09:33:35 +01:00
Iván Ovejero
9ac8825a67
refactor(core): Move error execution creation to execution service (no-changelog) ( #8006 )
...
Continue breaking down legacy helpers.
Note: `getUserById` is unused.
2023-12-21 14:15:46 +01:00
Iván Ovejero
29e7a98f3e
test(core): Use license mocker in RBAC tests (no-changelog) ( #7912 )
...
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
...
#### How to test the change:
1. ...
## Issues fixed
Include links to Github issue or Community forum post or **Linear
ticket**:
> Important in order to close automatically and provide context to
reviewers
...
## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md ))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs ) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again. A feature is not complete without tests.
>
> *(internal)* You can use Slack commands to trigger [e2e
tests](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#a39f9e5ba64a48b58a71d81c837e8227 )
or [deploy test
instance](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#f6a177d32bde4b57ae2da0b8e454bfce )
or [deploy early access version on
Cloud](https://www.notion.so/n8n/Cloudbot-3dbe779836004972b7057bc989526998?pvs=4#fef2d36ab02247e1a0f65a74f6fb534e ).
2023-12-04 13:56:48 +01:00
Val
1cb92ffe16
feat: Replace owner checks with scope checks (no-changelog) ( #7846 )
...
Github issue / Community forum post (link here to close automatically):
2023-11-29 14:48:36 +00:00
Iván Ovejero
476806ebb0
feat(core): Allow admin creation ( #7837 )
...
https://linear.app/n8n/issue/PAY-1038
2023-11-29 13:55:41 +01:00
Iván Ovejero
9b87a596ca
fix(core): Ensure member and admin cannot be promoted to owner ( #7830 )
...
https://linear.app/n8n/issue/PAY-985/add-user-role-modification-endpoint#comment-62355f6b
2023-11-27 17:35:58 +01:00
Iván Ovejero
75a5807c72
perf(core): Make user controller tests faster (no-changelog) ( #7819 )
...
Before: `17.949 s`
After: `3.886 s`
Followup to:
https://github.com/n8n-io/n8n/pull/7797#discussion_r1404148034
2023-11-27 11:56:06 +01:00
कारतोफ्फेलस्क्रिप्ट™
1b60cfb8f1
ci: Fix new user patching endpoint tests (no-changelog) ( #7816 )
...
user ids are uuids, and in the future we should add proper input
validation to prevent invalid user ids reaching the DB like this.
2023-11-27 09:35:09 +01:00
Iván Ovejero
7a86d36068
feat(core): Allow user role modification ( #7797 )
...
https://linear.app/n8n/issue/PAY-985
```
PATCH /users/:id/role
unauthenticated user
✓ should receive 401 (349 ms)
member
✓ should fail to demote owner to member (349 ms)
✓ should fail to demote owner to admin (359 ms)
✓ should fail to demote admin to member (381 ms)
✓ should fail to promote other member to owner (353 ms)
✓ should fail to promote other member to admin (377 ms)
✓ should fail to promote self to admin (354 ms)
✓ should fail to promote self to owner (371 ms)
admin
✓ should receive 400 on invalid payload (351 ms)
✓ should receive 404 on unknown target user (351 ms)
✓ should fail to demote owner to admin (349 ms)
✓ should fail to demote owner to member (347 ms)
✓ should fail to promote member to owner (384 ms)
✓ should fail to promote admin to owner (350 ms)
✓ should be able to demote admin to member (354 ms)
✓ should be able to demote self to member (350 ms)
✓ should be able to promote member to admin (349 ms)
owner
✓ should be able to promote member to admin (349 ms)
✓ should be able to demote admin to member (349 ms)
✓ should fail to demote self to admin (348 ms)
✓ should fail to demote self to member (354 ms)
```
2023-11-24 11:40:08 +01:00
Ricardo Espinoza
8e0ae3cf8c
refactor: Extract Invitation routes to InvitationController (no-changelog) ( #7726 )
...
This PR:
- Creates `InvitationController`
- Moves `POST /users` to `POST /invitations` and move related test to
`invitations.api.tests`
- Moves `POST /users/:id` to `POST /invitations/:id/accept` and move
related test to `invitations.api.tests`
- Adjusts FE to use new endpoints
- Moves all the invitation logic to the `UserService`
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
2023-11-16 12:39:43 -05:00
Ricardo Espinoza
4020c14d59
refactor: Use POST /users to re-invite users (no-changelog) ( #7714 )
2023-11-15 06:40:57 -05:00
Ricardo Espinoza
0ddafd2b82
test: Unify users.controller.test and users.api.test (no-changelog) ( #7658 )
...
Groundwork to be able to safely refactor and move the invitation logic
to the UserService.
Fixes ADO-1358
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
2023-11-10 09:41:58 -05:00
कारतोफ्फेलस्क्रिप्ट™
000e76e3b4
ci(core): Reduce memory usage in tests (part-2) (no-changelog) ( #7671 )
...
This also gets rid of `Db.collection`, which was another source of
circular dependencies.
2023-11-10 15:04:26 +01:00
कारतोफ्फेलस्क्रिप्ट™
0346b211a7
ci(core): Reduce memory usage in tests (part-1) (no-changelog) ( #7654 )
2023-11-08 16:29:39 +01:00
कारतोफ्फेलस्क्रिप्ट™
55c6a1b0d3
fix(core): Do not return inviteAcceptUrl in response if email was sent ( #7465 )
2023-10-19 13:58:06 +02:00
Iván Ovejero
b716241b42
feat(core): Add filtering, selection and pagination to users ( #6994 )
...
https://linear.app/n8n/issue/PAY-646
2023-08-28 16:13:17 +02:00
Ricardo Espinoza
89f44021b9
fix(core): Use JWT as reset password token ( #6714 )
...
* use jwt to reset password
* increase expiration time to 1d
* drop user id query string
* refactor
* use service instead of package in tests
* sqlite migration
* postgres migration
* mysql migration
* remove unused properties
* remove userId from FE
* fix test for users.api
* move migration to the common folder
* move type assertion to the jwt.service
* Add jwt secret as a readonly property
* use signData instead of sign in user.controller
* remove base class
* remove base class
* add tests
2023-07-24 17:40:17 -04:00
कारतोफ्फेलस्क्रिप्ट™
b895ba438a
refactor(core): Reduce boilterplate code in between tests 🧹 , and fix the tests in node.js 20 (no-changelog) ( #6654 )
...
refactor(core): Reduce boilterplate code in between tests
also cleaned up some imports, and fixed the tests in node.js 20
2023-07-13 10:14:48 +02:00
Iván Ovejero
8c008f5d22
refactor(core)!: Remove basic-auth, external-jwt-auth, and no-auth options ( #6362 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
2023-06-22 20:03:47 +02:00
कारतोफ्फेलस्क्रिप्ट™
e046f656fe
feat(core): Remove all floating promises. Enforce @typescript-eslint/no-floating-promises ( #6281 )
2023-05-24 02:01:45 +02:00
Iván Ovejero
06fa6f1fb3
ci: Expand ESLint to tests in BE packages (no-changelog) ( #6147 )
...
* 🔧 Adjust base ESLint config
* 🔧 Adjust `lint` and `lintfix` in `nodes-base`
* 🔧 Include `test` and `utils` in `nodes-base`
* 📘 Convert JS tests to TS
* 👕 Apply lintfixes
2023-05-02 10:37:19 +02:00
कारतोफ्फेलस्क्रिप्ट™
1eeadc6114
refactor(core): Setup decorator based RBAC (no-changelog) ( #5787 )
2023-04-24 11:45:31 +02:00
कारतोफ्फेलस्क्रिप्ट™
6242cac53b
ci: Refactor cli tests to speed up CI (no-changelog) ( #5718 )
...
* ci: Refactor cli tests to speed up CI (no-changelog)
* upgrade jest to address memory leaks
2023-03-17 17:24:05 +01:00
कारतोफ्फेलस्क्रिप्ट™
9bd7529193
refactor(core): Use an IoC container to manage singleton classes [Part-2] (no-changelog) ( #5690 )
...
* use typedi for UserManagementMailer
* use typedi for SamlService
* fix typos
* use typedi for Queue
* use typedi for License
* convert some more code to use typedi
2023-03-16 15:34:13 +01:00