173 Commits

Author SHA1 Message Date
Jean-Sébastien Herbaux
1e5b1c99f6
I18n/ permissions rework (#9535)
* Add a domain layer for the permission, rework the engine handling of the permissions

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Add permissions-fields-to-properties migration for the admin

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Removes useless console.log

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Remove debug logLevel from provider-login.test.e2e.js

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Adds the new layout for the GET permissions, allow to subscribe to actionRegistered events, adds i18n handlers

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Fix typo

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Update permissions validators

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Update unit tests

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Update integrations test + fix some validation issues

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Change plugins & settings section format for the permissions layout

* only return locales property to localized subjects for the permission's layout

* Do not send the locales property to the permission's layout when there is no locales created

* Add the 'locales' property to publish & delete routes

* Fix unwanted mutation of the sections builder states on multiple builds

* Fix units tests with (new engine)

* Fix admin-role e2e test - Add locales property to the update payload

* fix e2e testsé

* Update e2e snapshots

* Fix unit test for i18n bootstrap

* Add mocks for i18n/bootstrap test

* Fix has-locale condition & updatePermission validator

* Avoid mutation in migration, always authorize super admin for has-locales condition

* Rework rbac domain objects, add a hook module and a provider factory

* Remove old providers

* Update the admin services & tests for the new rbac domain & providers

* Fix tests, bootstrap functions & services following rbac domain rework

* Update migration runner

* PR comments

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Remove useless console.log

* Fix sanitizeCondition bug

* Section builder rework

* Add test for the section-builder section & add jsdoc for the permission domain

* pr comments (without the migrations)

* fix fields-to-properties migration

* Add jsdoc for the sections-builder

* Moves createBoundAbstractDomain from permission domain to the engine service

* Remove debug logLevel for admin role test (e2e)

* Fix core-store

* Fix hooks & move business logic from i18n bootstrap to dedicated services

* add route get-non-localized-fields

* use write and read permission

* refacto

* add input validator

* add route doc

* handle ST

Co-authored-by: Pierre Noël <petersg83@gmail.com>
Co-authored-by: Alexandre BODIN <alexandrebodin@users.noreply.github.com>
2021-03-25 14:59:44 +01:00
Alexandre Bodin
469991f9f2 Merge branch 'master' into features/i18n 2021-02-18 14:36:32 +01:00
Pierre Noël
ce3482025a add preferedLanguage 2021-02-08 15:03:12 +01:00
Convly
531c926dfd Authentication events, sso gold only 2021-01-27 11:52:02 +01:00
HichamELBSI
53231b5833 Merge branch 'master' into feature/relational-fields 2020-12-16 10:17:47 +01:00
Pierre Burgy
30ed3985c6
Replace John Doe by Kai Doe (#8738)
Signed-off-by: Pierre Burgy <pierre.burgy@gmail.com>
2020-12-14 16:57:18 +01:00
soupette
61a3740c06 Fix conflicts
Signed-off-by: soupette <cyril.lpz@gmail.com>
2020-11-23 14:43:07 +01:00
Alexandre Bodin
07e7cfc0bd Make lint stricter and fix the errors
Signed-off-by: Alexandre Bodin <bodin.alex@gmail.com>
2020-11-02 19:41:42 +01:00
soupette
3de1a1fe98 Merge branch 'master' of github.com:strapi/strapi into features/application-settings 2020-10-21 14:56:00 +02:00
Pierre Noël
907d6c9d33 refacto
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-10-19 17:01:46 +02:00
soupette
4737b4e275 Merge branch 'master' of github.com:strapi/strapi into features/application-settings 2020-10-09 09:10:28 +02:00
Jean-Sébastien Herbaux
46314a4054
Split init route to init & information endpoints (#8160)
* Split init to init & information endpoints

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Add unit tests / Rename controller

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Remove unnecessary comment

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-10-06 11:26:17 +02:00
Jean-Sébastien Herbaux
e77679e7bb
Fix author role for the publish permission action (#8153)
* Prevent Author role to have access to the publish permission in CE

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Fix CE test on role's permissions update

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>

* Fix unit tests

Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-10-02 18:34:13 +02:00
Pierre Noël
36892fe2a8 add webhooks for draftAndPublish + sanitize all webhooks info (#7629)
* add webhooks for draftAndPublish + sanitize all webhooks info

Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-09-22 17:39:29 +02:00
Convly
a559047e77 Fix e2e and unit tests
Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-09-22 17:39:17 +02:00
Alexandre Bodin
83b7926e3a Fix missing event
Signed-off-by: Alexandre Bodin <bodin.alex@gmail.com>
2020-07-23 18:36:29 +02:00
Maxwell Simmer
9684cd30db
Updates webhooks RegExp to allow undescores, fixes #5543 (#7079)
Signed-off-by: Maxwell Simmer <maxwell.simmer@gmail.com>
2020-07-22 10:49:55 +02:00
Pierre Noël
9983d3b44e clean conditions at get and update
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-20 17:40:01 +02:00
Alexandre Bodin
9138034dbc Make admin role not editable at all
Signed-off-by: Alexandre Bodin <bodin.alex@gmail.com>
2020-07-20 11:39:26 +02:00
Pierre Noël
c73aadbed5 add batch delete for users
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-16 12:57:54 +02:00
Alexandre Bodin
634b80c96c Fix unit test back
Signed-off-by: Alexandre Bodin <bodin.alex@gmail.com>
2020-07-08 12:29:45 +02:00
Alexandre Bodin
29fcf7c3cd Clean find relation list and tests
Signed-off-by: Alexandre Bodin <bodin.alex@gmail.com>
2020-07-08 11:48:42 +02:00
Pierre Noël
9267674a15 prepare code for migration
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:48:14 +02:00
Pierre Noël
25bea051e0 prevent delete user route to delete last superAdmin
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:10:11 +02:00
Pierre Noël
1ee5b7f189 fifth refacto
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:10:09 +02:00
Pierre Noël
243c4ccc4e add upload permissions to default roles + second refacto
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:52 +02:00
Pierre Noël
dd88c00514 use new condition format
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:52 +02:00
Pierre Noël
6ab7669365 rename plugins::content-manager.create to plugins::content-manager.explorer.create and others
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:51 +02:00
Pierre Noël
b893501552 first refacto
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:51 +02:00
Pierre Noël
8c1aa2999a fix tests
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:51 +02:00
Pierre Noël
d35e1d36f1 remove user delete route
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:51 +02:00
Pierre Noël
98f8275190 prevent removing the last superadmin
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:50 +02:00
Pierre Noël
93fc900e10 create admin permissions at startup
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:50 +02:00
Pierre Noël
3b8cab0621 add conditions logic for author/editor
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:50 +02:00
Pierre Noël
711c58b05e create role at startup + warning
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:09:49 +02:00
Alexandre Bodin
a83c34e72e Add default category
Signed-off-by: Alexandre Bodin <bodin.alex@gmail.com>
2020-07-08 11:09:45 +02:00
Convly
ed6a68d9be Add category to conditions
Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-07-08 11:09:45 +02:00
Convly
e745903112 Fix pr comments
Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-07-08 11:09:44 +02:00
Convly
9f1fa33e29 Add conditions list to permissions/getAll / Add Default Conditions
Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-07-08 11:09:44 +02:00
Convly
27c2ff9c0a Add /admin/users/me/permissions route (+ findUserPermissions & sanitizePermission)
Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-07-08 11:05:50 +02:00
Convly
765d7aaa52 Add check many permissions route/controller / Add userAbility to the context's state / Add isAuthenticatedAdmin.js
Signed-off-by: Convly <jean-sebastien.herbaux@epitech.eu>
2020-07-08 11:05:50 +02:00
Convly
ef94229d81 Add Condition Provider & Permissions Engine 2020-07-08 11:05:49 +02:00
Pierre Noël
42e3b64689 refacto
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:05:08 +02:00
Pierre Noël
86eccf9e66 add js doc
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:05:08 +02:00
Pierre Noël
7e1a91dda6 add use strict
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:05:08 +02:00
Pierre Noël
d8a4490cbf adapt updatePermissions for EE/CE
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:05:07 +02:00
Pierre Noël
e078c0b022 rename permissions to actions, inverted params of provider.get, separated formatter, add possibility to not specigy pluginName for ::application
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:05:07 +02:00
Pierre Noël
707746ef45 refacto
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:05:06 +02:00
Pierre Noël
ae0dcb9745 add route GET /admin/permissions
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:05:06 +02:00
Convly
c398b969a4 Add unique email check on update user 2020-07-08 11:04:22 +02:00