Joachim Van Herwegen
c46d01d3d7
feat: Remove agent/user permission differentiation
...
This was only used for the WAC-Allow header and greatly simplifies how we use permissions.
2022-11-18 16:08:06 +01:00
Joachim Van Herwegen
3328f8dea6
Merge branch 'main' into versions/6.0.0
2022-11-07 09:45:22 +01:00
Joachim Van Herwegen
68ee9648e1
fix: Require create permission for empty PATCH bodies
2022-11-02 16:48:15 +01:00
Joachim Van Herwegen
ef48660b48
fix: Return correct status code when deleting non-existent resource
2022-11-02 09:31:42 +01:00
Joachim Van Herwegen
9f04e28dc6
chore: Clean up ACP imports
2022-11-02 09:17:35 +01:00
Joachim Van Herwegen
a1e916b73a
feat: Support async default values in getDefault
2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
56b7e63843
test: Update PermissionTable to also test all ACP cases
2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
f3e7a20800
feat: Update Credentials typings to support client/issuer
2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
db680740b5
feat: Create configs for server with ACP authorization
2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
a6409ad00d
feat: Create AcpReader
2022-10-06 09:36:04 +02:00
Jasper Vaneessen
3c43d046ef
feat!: remove caching from AgentGroupAccessChecker
2022-08-10 10:23:37 +02:00
Joachim Van Herwegen
7996fe5c3b
feat: Split WebAclReader behaviour over multiple classes
2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
0ff05fd420
feat: Update PermissionReaders to support new permission interface
2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
18391ec414
feat: Introduce ModesExtractor for intermediate containers
2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
7085252b3f
feat: Update ModesExtractors to support new permission interface
2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
23f0b37c28
feat: Change permission interface to store identifiers
2022-07-11 14:07:43 +02:00
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