Joachim Van Herwegen
ad3edcf1a8
feat: Handle OPTIONS requests in OperationHandler
2022-03-18 14:15:12 +01:00
Joachim Van Herwegen
d908374364
feat: Check parent ACL permissions for create/delete requests
2022-03-18 14:15:12 +01:00
Joachim Van Herwegen
e86e0cf36b
feat: Return 404 for read/delete requests if there is no resource
2022-03-18 14:15:12 +01:00
Joachim Van Herwegen
9a29cc2257
fix: Extract correct access modes from request
2022-03-18 14:15:12 +01:00
Joachim Van Herwegen
2ae5924dde
feat: Pass access modes to PermissionReaders
...
This allows PermissionReaders to potentially only check the necessary access modes
for potential performance optimization.
2022-03-18 14:15:12 +01:00
Thomas Dupont
ce754c119f
fix: Add content-negotiation when fetching dataset from url
...
* Solution works but tests don't
* refactor(FetchUtil): use arrayifyStream
* refactor(FetchUtil): split fetchDataset into 2 separate functions
* style(FetchUtil): onelining instead of declaring new local var
* test: trying to mock rdfDereferencer
* refactor: promise can't have async function as arg
* test(FetchUtil): pass Quad array to mockDereference instead
* test: all tests should pass now and coverage is back to 100%
* style: comment typo
* chore: make package.json and package-lock.json compatible with main
* chore: fix package.json double entries
* chore: updated package.json to be alfabetical again
* refactor(AgentGroupAccessChecker): Remove converter from contructor and config
* refactor(TokenOwnerShipValidator): Remove converter from constructor and config
* refactor(FetchUtil): Return BadRequestHttpError instead of generic Error
* test(FetchUtil): return Response object instead of mocking fetch
* style: typos and newlines
2022-02-15 13:44:03 +01:00
Joachim Van Herwegen
a9941ebe78
feat: Add support for N3 Patch
2022-01-25 11:30:42 +01:00
Joachim Van Herwegen
1afed65368
feat: Return correct status codes for invalid requests
2022-01-21 17:10:38 +01:00
Renovate Bot
2e99cc9934
fix(deps): update dependency sparqlalgebrajs to v4
2021-11-05 16:07:20 +01:00
Joachim Van Herwegen
5613ff9e71
fix: Let Representations always have a body
...
This is relevant when the request has a content-type
but no data.
2021-10-12 13:30:06 +02:00
Joachim Van Herwegen
b3da9c9fcf
refactor: Restructure source code folder
...
This way the location of certain classes should make more sense
2021-10-12 12:51:02 +02:00
Joachim Van Herwegen
7c7fee5f5c
refactor: Rename associated resource to subject resource
2021-10-08 15:49:49 +02:00
Joachim Van Herwegen
8f5d61911d
feat: Always grant control permissions to pod owners
2021-10-05 13:19:01 +02:00
Joachim Van Herwegen
7f8b923399
feat: Replace acl specific permissions with generic permissions
...
This required AuxiliaryStrategy to have a new function
indicating if the auxiliary resource just used its associated resource authorization
or its own.
2021-09-28 13:06:38 +02:00
Joachim Van Herwegen
5104cd56e8
feat: Create OperationMetadataCollector to handle operation metadata
2021-09-28 13:06:38 +02:00
Joachim Van Herwegen
bf28c83ffa
feat: Use PermissionReaders to determine available permissions
...
These readers will determine which permissions
are available for the incoming credentials.
Their results then get combined in a UnionReader
and authorized in a PermissionBasedAuthorizer
2021-09-28 13:06:38 +02:00
Joachim Van Herwegen
e8dedf5c23
feat: Extract set of required modes instead of PermissionSet
2021-09-28 13:06:38 +02:00
Joachim Van Herwegen
c3fa74de78
feat: Let CredentialsExtractors specify what type of Credentials they generate
2021-09-28 13:06:38 +02:00
Ruben Verborgh
60fc273ea5
change: Rename resourceStore to aclStore.
2021-09-07 12:43:05 +02:00
Joachim Van Herwegen
ff200e22a9
feat: Add a cache to the AgentGroupAccessChecker
2021-08-23 16:39:25 +02:00
Simone Persiani
401923b792
feat: Add support for agentGroup ACL rules
...
Co-Authored-By: Ludovico Granata <Ludogranata@gmail.com >
2021-08-23 16:39:25 +02:00
Simone Persiani
16ebfb329f
refactor: Refactor WebAclAuthorizer
...
Co-Authored-By: Ludovico Granata <Ludogranata@gmail.com >
2021-08-23 16:39:25 +02:00
Simone Persiani
c13c03ef54
feat: Add function readableToQuads
...
Co-Authored-By: Ludovico Granata <Ludogranata@gmail.com >
2021-08-23 16:39:25 +02:00
Joachim Van Herwegen
f4833d2534
feat: Create PathBasedAuthorizer
2021-07-27 14:31:02 +02:00
Joachim Van Herwegen
d95db60fe1
feat: Create DenyAllAuthorizer
2021-07-27 14:31:02 +02:00
Joachim Van Herwegen
dee382849d
refactor: Rename AllowEverythingAuthorizer to AllowAllAuthorizer
2021-07-27 14:31:02 +02:00
Ruben Verborgh
6495d650c2
chore: Use consistent strategy naming.
2021-07-21 23:37:23 +02:00
Joachim Van Herwegen
e43b579ae7
fix: Throw internal error with invalid ACL.
2021-07-16 16:42:32 +02:00
Ruben Verborgh
0f22fb5ddb
refactor: Clarify WebACL algorithm.
2021-05-17 09:41:24 +02:00
Michiel de Jong
91791a0a14
Fix #621 : acl:AuthenticatedAgent instead of foaf:AuthenticatedAgent
2021-02-18 15:28:29 +01:00
Joachim Van Herwegen
f2f265c586
feat: Let Authorizers output an Authorization
2021-02-18 14:13:47 +01:00
Joachim Van Herwegen
7f34fe6ae3
feat: Create separate authorizer for auxiliary functions
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
8339413ab4
feat: Add permissions extractor for acl resources
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
758f5ed083
feat: Generalize AclManager to AuxiliaryManager
2021-02-18 13:26:08 +01:00
Ruben Verborgh
eb1440851a
refactor: Move handlers into subfolder.
2021-01-27 11:29:35 +01:00
Joachim Van Herwegen
e752927171
fix: Remove all instanceof checks
...
This prevents problems with different environments.
Also introduces unit tests to double check HttpError values.
2021-01-25 16:11:43 +01:00
Ruben Verborgh
7dcde1e0e3
refactor: Improve logging for access control.
2021-01-15 18:25:37 +01:00
Joachim Van Herwegen
ee50f40062
docs: Add comments referencing the Solid spec where relevant
...
Also some minor changes to completely match the spec there.
2021-01-15 08:42:36 +01:00
Joachim Van Herwegen
61aa2e12bd
fix: Update acl authorizer to make write rights imply append rights
2021-01-11 09:05:41 +01:00
Ruben Verborgh
4828912593
refactor: Use record for representation preference.
2021-01-04 23:06:52 +01:00
Ruben Verborgh
8e138c36d1
refactor: Use types to create vocabularies.
2021-01-02 22:56:25 +01:00
Ruben Verborgh
1cf1167261
test: Use Components.js in Authorization.
2020-12-22 00:33:33 +01:00
Joachim Van Herwegen
f0db9e501f
refactor: Replace getParentContainer util function with ContainerManager
2020-12-11 12:42:17 +01:00
Ruben Verborgh
74415cf49b
fix: Align webId capitalization.
2020-12-01 23:35:11 +01:00
Joachim Van Herwegen
ee312910d7
fix: Correctly handle acl behaviour for acl identifiers
2020-11-25 09:04:55 +01:00
Joachim Van Herwegen
1073c2ff4c
refactor: Clean up utility functions
2020-11-18 17:19:53 +01:00
Ruben Verborgh
1a45b65df7
refactor: Implement empty canHandle on base class. ( #289 )
2020-10-30 17:56:39 +01:00
smessie
99464d9a95
feat: Add logging
...
* feat: Add logging
* refactor: Configure the logger for the tests once globally
* feat: Add logging
* fix: Fix ESLint errors due to merge conflicts
* Review log and error messages.
* refactor: Cleanup a bit
* refactor: Change to logger info calls
Co-authored-by: Ruben Verborgh <ruben@verborgh.org >
2020-10-26 10:31:01 +01:00
Joachim Van Herwegen
9657fbafb1
refactor: Update eslint related dependencies
2020-09-17 11:55:49 +02:00
Joachim Van Herwegen
85df2e5d7f
refactor: Make URI constants consistent
2020-09-16 13:18:58 +02:00