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
13c49045d4
feat: Support acl authorization for IDP components
...
Configuration has been updated so the IDP requests
also pass through an Authorization component.
A new config option was added to choose
which authorization scheme to use for the IDP.
2021-10-07 15:51:11 +02:00
Joachim Van Herwegen
9968f2ae5b
feat: Generalize RootInitializer to ContainerInitializer
...
The initializer can now be used for any container.
The initializer also does not handle the repeat check anymore,
this is now configured with a ConditionalHandler.
2021-10-07 15:51:11 +02:00
Joachim Van Herwegen
bb7e88b137
refactor: Split HttpHandler behaviour over multiple classes
...
This allows easier reuse of certain reoccurring behaviours,
such as authorization.
The AuthenticatedLdpHandler is no longer required
since it is a combination of parsing and authorization.
This did require a small change to the OperationHandler interface.
2021-10-07 15:51:11 +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
ba1886ab85
feat: Combine the results of multiple CredentialsExtractors
2021-09-28 13:06:38 +02:00
Joachim Van Herwegen
62f026f2bc
feat: Create UnionHandler to combine AsyncHandler results
2021-09-28 13:06:38 +02:00
Joachim Van Herwegen
b592d449eb
feat: Integrate setup behaviour
...
This adds options for enabling setup to the config folder.
All default configs with permanent storage (file/sparql)
are configured to require setup at server start.
Memory-based configs merely have it as an option.
2021-09-27 10:32:34 +02:00
Joachim Van Herwegen
4e1a2f5981
feat: Create SetupHttpHandler
...
This handler allows users to set up servers with a pod
and without having to enable public access first
2021-09-27 10:32:34 +02:00
Joachim Van Herwegen
02df2905de
feat: Create RedirectAllHttpHandler
...
This handler will redirect all requests to a specific URL
2021-09-27 10:32:34 +02:00
Joachim Van Herwegen
facf691e86
feat: Create ConditionalHandler
...
This handler rejects all inputs once a certain condition is met
2021-09-27 10:32:34 +02:00
Joachim Van Herwegen
ef9703e284
feat: Patch containers by recreating Representation from metadata
...
Also included is a change to the Patching architecture.
Patching is now done by RepresentationPatchers that take a Representation as input.
2021-09-16 13:39:11 +02:00
Joachim Van Herwegen
cc1c3d9223
feat: Support JSON errors
...
The IDP behaviour has been changed to move all error related knowledge
to the IdentityProviderHttpHandler instead of managing it
in the Interactionhandlers.
2021-09-08 13:55:52 +02:00
Joachim Van Herwegen
bbfbfbbce4
refactor: Move InteractionRoute behaviour to separate class
2021-09-08 13:55:52 +02:00
Joachim Van Herwegen
20197ea1de
feat: Generalize HTTP handler behaviour in BaseHttpHandler
2021-09-08 13:55:52 +02:00
Joachim Van Herwegen
4f1a86dfa0
feat: Convert IDP input data to JSON
2021-09-08 13:55:52 +02:00
Arthur Joppart
759112bc04
feat: Support LDN inbox headers
...
* chore: add inbox mapping to metadatawriter config
* fix: correct inbox link rel
* feat: make LinkTypeParser reuseable to fit all link headers
* feat: minor code optimization
* feat: cleaned up metadata parser config
* feat: further cleanup of metadata parser config
* feat: adapted LinkMetadataParser to take a list to be in line with LinkRelMetadataWriter implementation
* feat: minor changes to be in line with other classes and code improvements
Co-authored-by: Wouter Termont <woutermont@gmail.com>
2021-08-25 12:48:13 +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
73867f0827
feat: Add BooleanHandler
...
Co-Authored-By: Ludovico Granata <Ludogranata@gmail.com>
2021-08-23 16:39:25 +02:00
Simone Persiani
0355673a0f
feat: Add function promiseSome
...
Co-Authored-By: Ludovico Granata <Ludogranata@gmail.com>
2021-08-23 16:39:25 +02:00
Joachim Van Herwegen
80ebd02cc4
feat: Support content negotiation for IDP requests
2021-08-18 15:39:02 +02:00
Joachim Van Herwegen
0d42987bbd
feat: Verify conditions in DataAccessorBasedStore
2021-08-18 13:16:08 +02:00
Joachim Van Herwegen
20f783a581
feat: Create conditions based on input headers
2021-08-18 13:16:08 +02:00
Joachim Van Herwegen
77d695c8b6
feat: Expose Last-Modified and ETag headers
2021-08-18 13:16:08 +02:00
Ruben Verborgh
702ac7887e
fix: Add missing exports.
2021-08-04 17:10:11 +02:00
Joachim Van Herwegen
18a71032c0
feat: Create ChainedTemplateEngine for combining engines
2021-08-03 12:52:30 +02:00
Joachim Van Herwegen
9d337ba80c
feat: Moved IDP response and template behaviour to single class
2021-08-02 11:29:33 +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
Joachim Van Herwegen
3bb7a32c0c
feat: Add support for client_id WebIDs
2021-07-23 16:44:50 +02:00
Joachim Van Herwegen
0e67004ef4
feat: Store reset password ID in the submit URL
2021-07-23 16:08:28 +02:00
Joachim Van Herwegen
bd10256e59
fix: Make sure there is always a fallback for error handling
2021-07-23 14:48:27 +02:00
Joachim Van Herwegen
c2ad892020
feat: Create RootInitializer to set up root resources
2021-07-22 15:08:28 +02:00
Ruben Verborgh
1394b9cb56
feat: Add HTML container listing.
2021-07-22 14:35:14 +02:00
Ruben Verborgh
9628fe98b8
refactor: Align EJS engine with Handlebars.
2021-07-22 11:12:21 +02:00
Ruben Verborgh
19624dc729
refactor: Allow default template in template engines.
2021-07-22 11:12:21 +02:00
Joachim Van Herwegen
cc1e332394
feat: Add IndexRepresentationStore to support index resources
2021-07-15 11:21:07 +02:00
Joachim Van Herwegen
fdc52f50e5
feat: Simplify and merge OIDC configurations
2021-07-12 13:49:57 +02:00
Joachim Van Herwegen
f2f967ff8a
feat: Convert errorCodes using markdown
2021-07-06 16:42:06 +02:00
Joachim Van Herwegen
5edbbc1958
chore: Update dependencies
2021-06-30 10:24:13 +02:00
Joachim Van Herwegen
25f33ee4cd
feat: Create base ConvertingPatchHandler abstract class
2021-06-28 10:03:10 +02:00
Joachim Van Herwegen
e8a0f63e02
feat: Add App class to start and stop the server
2021-06-14 16:11:56 +02:00
Joachim Van Herwegen
9c0fa77527
feat: Add ErrorToHtmlConverter using templates
2021-06-14 12:59:56 +02:00
Joachim Van Herwegen
e3c5b39752
feat: Create WWW-Authenticate metadata writer
2021-06-07 14:40:05 +02:00