Commit Graph

157 Commits

Author SHA1 Message Date
David Christofas
5d45f0e856 fix logic of when to add the www-authenticate headers 2022-08-12 10:48:37 +02:00
David Christofas
036c466425 add missing unprotected paths 2022-08-12 10:48:33 +02:00
David Christofas
32f68f91ff add missing www-authentication header on failed authentication 2022-08-12 10:48:29 +02:00
David Christofas
d271ae2451 fix some authentication cases 2022-08-12 10:48:25 +02:00
David Christofas
06ffd9cf8a some more cleaning up 2022-08-12 10:48:21 +02:00
David Christofas
9347657370 remove the oidc tests since they aren't testing anything at the moment
I admit it would be better to implement the tests but I tried and it is a bit tricky since we can't mock everything we would need to mock. I'll wan to get these changes in first and later in the near future we should revisit the auth middleware architecture and refactor it a bit more to be more testable and future proof.
2022-08-12 10:48:17 +02:00
David Christofas
17a4e65f08 add tests for the public share auth middleware 2022-08-12 10:48:13 +02:00
David Christofas
7bc1305cb4 add tests for the basic auth middleware 2022-08-12 10:48:09 +02:00
David Christofas
ef020920e8 update authentication tests 2022-08-12 10:48:04 +02:00
David Christofas
ddfc01bff9 refactor unprotected paths check 2022-08-12 10:47:51 +02:00
David Christofas
f35c8b9205 clean up the authenticators middlewares 2022-08-12 10:47:48 +02:00
David Christofas
e96819bce8 rewrite the auth middleware
The old approach of the authentication middlewares had the problem that when an authenticator could not authenticate a request it would still send it to the next handler, in case that the next one can authenticate it. But if no authenticator could successfully authenticate the request, it would still be handled, which leads to unauthorized access.
2022-08-12 10:47:43 +02:00
Michael Barz
77ade496a7 update web to v5.7.0-rc9 2022-08-10 19:11:34 +02:00
Michael Barz
a503e808c0 Merge pull request #4256 from aduffeck/cleanup-uploads
Add a cli for listing and cleaning up expired uploads
2022-08-09 12:09:17 +02:00
Michael Barz
0f4597da92 Merge pull request #4363 from owncloud/fix-quota-unrestricted
fix unrestricted quota
2022-08-08 20:57:44 +02:00
Michael Barz
bb9903515f fix unrestricted quota 2022-08-08 19:25:22 +02:00
Benedikt Kulmann
84daa63380 Merge pull request #4359 from owncloud/update-web-5.7.0-rc.8
[full-ci] bump web to v5.7.0-rc.8
2022-08-08 18:01:51 +02:00
Michael Barz
df8e64665b Merge pull request #4358 from owncloud/update-graph-api
add expand query for personal drive
2022-08-08 17:45:12 +02:00
Benedikt Kulmann
974469346c chore: bump web to v5.7.0-rc.8 2022-08-08 17:25:13 +02:00
Michael Barz
67b52bbd55 add expand query for personal drive 2022-08-08 16:43:59 +02:00
Michael Barz
51fe4a8560 Merge pull request #4356 from owncloud/code-improvements
add storageID to the special items, improve code
2022-08-08 16:43:14 +02:00
Michael Barz
bde5d69839 add storageID to the special items, improve code 2022-08-08 16:07:19 +02:00
Michael Barz
03c63380da Merge pull request #4346 from wkloucek/rewrite-oidc-well-known
add middleware to rewrite the /.well-known/openid-configuration endpoint for external idps
2022-08-08 15:36:34 +02:00
Ralf Haferkamp
23b9437c08 Avoid panics when LDAP users miss required attributes 2022-08-05 16:46:45 +02:00
Ralf Haferkamp
c7359a849f Avoid unneeded extra LDAP query per group
When expanding members of an LDAP group we did two group lookup per
Group. This can be avoided by expanding the members right from the
Group entry of the first query.

This also add some more unit test coverage, especially to the expand/select
group member test cases.
2022-08-05 16:46:45 +02:00
Ralf Haferkamp
8dde4e5b94 Add LDAP query details to debug log 2022-08-05 16:46:45 +02:00
Ralf Haferkamp
d867a8bc7c Don't panic on missing group attributes
Closes #4274
2022-08-05 16:46:45 +02:00
Willy Kloucek
94646c8060 add middleware to rewrite the /.well-known/openid-configuration endpoint for external idps 2022-08-05 14:12:01 +02:00
Willy Kloucek
58ccdaca08 improve PROXY_USER_CS3_CLAIM description 2022-08-05 10:47:51 +02:00
Ralf Haferkamp
03a8db45c1 Switch default for user and group substring search
We now default LDAP_GROUP_SUBSTRING_FILTER_TYPE and LDAP_USER_SUBSTRING_FILTER_TYPE
to "any", which means full substring search. The previous default was just using prefix
matching.

Closes #4282
2022-08-04 11:23:17 +02:00
André Duffeck
e35327cdf2 Add a cli for listing and cleaning up expired uploads
Fixes #2622
2022-08-04 09:41:55 +02:00
Michael Barz
1808fa0bdf Merge pull request #4323 from owncloud/fix-user-drives-quota
fix listing of drives and quota
2022-08-03 14:40:41 +02:00
Michael Barz
cb7d024d89 fix listing of drives and quota 2022-08-03 12:50:00 +02:00
Jannik Stehle
492ac5ced4 Set the alias link capability to false 2022-08-03 12:17:27 +02:00
Ralf Haferkamp
6e848c7254 Use mutex for lazy init function
To avoid possible threading issues
2022-08-03 12:00:31 +02:00
Ralf Haferkamp
74d9d0f3e0 Apply suggestions from code review
Co-authored-by: Martin <github@diemattels.at>
2022-08-03 12:00:31 +02:00
Ralf Haferkamp
8229567213 Allow to configure the JWKS refresh settings
This exposes a couple for knobs for the jwks keyfunc module to adjust
timeout and refresh intervals.
2022-08-03 12:00:31 +02:00
Ralf Haferkamp
eb94530433 Add option to configure access token verification
Allow to switch jwt access token verification and off. Many (most?) IDP
provide JWT encoded access tokens. If ocis is configure to assume jwt
access tokens (access_token_verify_method==jwt) we now properly verify
the tokens signature and a set of standard claims ("exp", "iat" and nbf"
by way of the jwt module's standard verification and "iss" explicitliy).

This change also allows for introduction of other access token verification
mechanism in the future (e.g. through introspection (RFC7662).
2022-08-03 12:00:31 +02:00
Ralf Haferkamp
454cea8a1c Try to verify access_token as JWT and extract expiry
We try to parse the access token as a JWT now. Verifying the signature
using the keys downloaded from the jwks_uri of the IDP. Currently we
only use it to extract the expiry information from the JWT. This could
be reworked to extract other claims from the token for authorization
purposes.

Fixes: #3841
2022-08-03 12:00:31 +02:00
Ralf Haferkamp
0b055ca621 Remove obsolete comment
Token/Userinfo caching is already present since a while
2022-08-03 12:00:31 +02:00
Benedikt Kulmann
ca3c6ff570 chore: bump web to v5.7.0-rc.7 2022-08-02 18:19:55 +02:00
Ralf Haferkamp
53751339a6 Use existing mockery mock instead of manual ldap.Client mock 2022-08-02 16:14:39 +02:00
Ralf Haferkamp
fa36a73c54 Add missing new methods to fulfill ldap.Client interface 2022-08-02 15:34:59 +02:00
Andre Duffeck
9fc485c95f Merge pull request #4308 from aduffeck/fix-search-in-received-shares
Fix search in received shares
2022-08-02 09:11:32 +02:00
André Duffeck
814342a101 Fix search in received shares
It apparently broke as a fallout of the shareid refactoring.
2022-08-01 13:55:52 +02:00
Michael Barz
cce04f94ff set virtual owner on non-personal spaces 2022-08-01 12:53:24 +02:00
Christian Richter
a030459c70 incorporate requested changes
Signed-off-by: Christian Richter <crichter@owncloud.com>
2022-07-29 14:39:19 +02:00
Christian Richter
1e21e23056 add drives output
Signed-off-by: Christian Richter <crichter@owncloud.com>
2022-07-29 14:39:19 +02:00
ownClouders
1da7c12ee7 [tx] updated from transifex 2022-07-29 00:06:21 +00:00
Jörn Friedrich Dreyer
9b99a61cdb Merge pull request #4266 from wkloucek/update-go-micro
update go-micro
2022-07-26 06:51:25 +00:00