Oneric
11ad4711eb
signing_key: don't retrieve superfluous fields when loading ap_id
2025-02-21 19:37:27 +01:00
Oneric
9cc5fe9a5f
signature: refetch key upon verification failure
...
This matches behaviour prioir to the SigningKey migration
and the expected semantics of the http_signatures lib.
Additionally add a min interval paramter, to avoid
refetch floods on bugs causing incompatible signatures
(like e.g. currently with Bridgy)
2025-02-21 19:37:27 +01:00
Oneric
51642a90c5
signature: drop unecessary round trip over user
...
We already got the key.
2025-02-14 22:10:25 +01:00
Oneric
ea2de1f28a
signing_key: ensure only one key per user exists
...
Fixes: AkkomaGang/akkoma issue 858
2025-02-14 22:10:25 +01:00
Oneric
cc5c1bb10c
signing_key: cleanup code
...
In particular this avoids an unecessary roundtrip
over user_id when searching a key via its primary key_id
2025-02-14 22:10:25 +01:00
Oneric
70fe99d196
Prevent key-actor mapping poisoning and key take overs
...
Previously there were mainly two attack vectors:
- for raw keys the owner <-> key mapping wasn't verified at all
- keys were retrieved with refetching allowed
and only the top-level ID was sanitised while
usually keys are but a subobject
This reintroduces public key checks in the user actor,
previously removed in 9728e2f8f7
but now adapted to account for the new mapping mechanism.
2025-02-14 22:10:25 +01:00
Oneric
96fe080e6e
Convert all raw :zip usage to SafeZip
...
Notably at least two instances were not properly guarded from path
traversal attack before and are only now fixed by using SafeZip:
- frontend installation did never check for malicious paths.
But given a malicious froontend could already, e.g. steal
all user tokens even without this, in the real world
admins should only use frontends from trusted sources
and the practical implications are minimal
- the emoji pack update/upload API taking a ZIP file
did not protect against path traversal. While atm
only admins can use these emoji endpoints, emoji
packs are typically considered "harmless" and used
without prior verification from various sources.
Thus this appears more concerning.
2025-02-14 22:10:25 +01:00
Oneric
294de939cb
signing_key: refactor nested case into with statement
...
The error branches were already effectively identical before.
This change is purely cosmetic.
2024-12-08 20:43:57 +00:00
Floatingghost
11c5838947
standardise local key id generation
2024-10-30 12:44:01 +00:00
Floatingghost
d330c57cda
make sure we correctly match key objects
2024-10-26 08:42:07 +01:00
Floatingghost
58d5d9d7bf
fix tests, contain object
2024-10-26 06:58:47 +01:00
Floatingghost
13215f5f06
remove public key field
2024-10-26 05:28:55 +01:00
Floatingghost
430b376ded
mix format
2024-10-26 05:05:48 +01:00
Floatingghost
ccf1007883
Fix about a million tests
2024-10-26 05:05:48 +01:00
Floatingghost
6da783b84d
Fix http signature plug tests
2024-10-26 05:05:48 +01:00
Floatingghost
8f322456a0
Allow unsigned fetches of a user's public key
2024-10-26 05:05:48 +01:00
Floatingghost
9c876cea21
Fix some tests
2024-10-26 05:05:48 +01:00
Floatingghost
fc99c694e6
Add signing key modules
2024-10-26 05:05:28 +01:00
FloatingGhost
98cb255d12
Support elixir1.15
...
OTP builds to 1.15
Changelog entry
Ensure policies are fully loaded
Fix :warn
use main branch for linkify
Fix warn in tests
Migrations for phoenix 1.17
Revert "Migrations for phoenix 1.17"
This reverts commit 6a3b2f15b74ea5e33150529385215b7a531f3999.
Oban upgrade
Add default empty whitelist
mix format
limit test to amd64
OTP 26 tests for 1.15
use OTP_VERSION tag
baka
just 1.15
Massive deps update
Update locale, deps
Mix format
shell????
multiline???
?
max cases 1
use assert_recieve
don't put_env in async tests
don't async conn/fs tests
mix format
FIx some uploader issues
Fix tests
2023-08-03 17:44:09 +01:00
FloatingGhost
c4b46ca460
Add /api/v1/followed_tags
2022-12-31 18:09:34 +00:00
floatingghost
07a48b9293
giant massive dep upgrade and dialyxir-found error emporium ( #371 )
...
Co-authored-by: FloatingGhost <hannah@coffee-and-dreams.uk>
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/371
2022-12-14 12:38:48 +00:00
FloatingGhost
b058df3faa
Allow dashes in domain name search
2022-12-06 10:57:10 +00:00
floatingghost
d55de5debf
Remerge of hashtag following ( #341 )
...
this time with less idiot
Co-authored-by: FloatingGhost <hannah@coffee-and-dreams.uk>
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/341
2022-12-05 12:58:48 +00:00
floatingghost
ec6bf8c3f7
revert 4a94c9a31e
...
revert Add ability to follow hashtags (#336 )
Co-authored-by: FloatingGhost <hannah@coffee-and-dreams.uk>
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/336
2022-12-04 20:04:09 +00:00
floatingghost
4a94c9a31e
Add ability to follow hashtags ( #336 )
...
Co-authored-by: FloatingGhost <hannah@coffee-and-dreams.uk>
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/336
2022-12-04 17:36:59 +00:00
FloatingGhost
ee7059c9cf
Spin off imports into n oban jobs
2022-11-27 21:45:41 +00:00
a1batross
77596a3021
User: search: exclude deactivated users from user search
...
This way we don't pollute search results with deactivated and deleted users
2022-09-15 21:21:06 -04:00
Tusooa Zhu
f08241c8ab
Allow users to create backups without providing email address
...
Ref: backup-without-email
2022-08-02 22:16:54 -04:00
FloatingGhost
0f132b802d
purge chat and shout endpoints
2022-07-21 11:29:28 +01:00
marcin mikołajczak
de006443f0
MastoAPI: Profile directory
2021-12-26 02:35:17 +00:00
Alex Gleason
437c1a5a52
v2 Suggestions: actually flter out dismissed suggestions
2021-11-26 21:09:37 -06:00
Alex Gleason
b17360cd7c
v2 Suggestions: rudimentary API response
2021-11-26 14:34:10 -06:00
Alex Gleason
d87dfcb5f0
Put custom guards in Web.Utils.Guards
...
Speeds up recompilation by removing a compile-time cycle on AdminAPI.Search
2021-06-07 15:51:52 -05:00
Mark Felder
537ba1c5e0
Merge branch 'develop' into refactor/deactivated_user_field
2021-01-25 09:45:06 -06:00
Mark Felder
e759579f97
Active users must be confirmed
2021-01-19 16:39:55 -06:00
Mark Felder
28581e03ad
Merge branch 'develop' into refactor/deactivated_user_field
2021-01-18 14:58:21 -06:00
Mark Felder
44a86951a3
Merge branch 'develop' into refactor/approval_pending_user_field
2021-01-18 12:05:05 -06:00
Mark Felder
d36182c088
Change user.confirmation_pending field to user.is_confirmed
2021-01-15 12:44:41 -06:00
Mark Felder
cd1e5d76ab
Remove User.restrict_deactivated/1
...
Everything else is in User.Query, no need for this odd kludge.
2021-01-15 11:24:46 -06:00
Mark Felder
860b5c7804
Change user.deactivated field to user.is_active
2021-01-15 11:24:46 -06:00
Mark Felder
f7e59c28ed
Change user.approval_pending field to user.is_approved
2021-01-15 10:42:02 -06:00
Haelwenn (lanodan) Monnier
c4439c630f
Bump Copyright to 2021
...
grep -rl '# Copyright © .* Pleroma' * | xargs sed -i 's;Copyright © .* Pleroma .*;Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/ >;'
2021-01-13 07:49:50 +01:00
Egor Kislitsyn
35ba48494f
Stream follow updates
2020-12-02 00:18:58 +04:00
Ivan Tashkinov
e164c37139
[ #2301 ] Proper handling of User.is_discoverable
: users appear in in-service search but are hidden from external services like search bots.
2020-11-19 19:30:02 +03:00
Ivan Tashkinov
fcad3e716a
[ #2301 ] Quick fix: users with is_discoverable == false (default!) are included in search results.
2020-11-19 18:08:22 +03:00
Egor Kislitsyn
d2113428c0
Merge remote-tracking branch 'origin/develop' into feature/account-export
2020-10-30 19:34:02 +04:00
Maksim Pechnikov
60663150b5
admin user search: added filter by actor_type
2020-10-22 11:53:28 +03:00
Maksim Pechnikov
46b420aa60
need_confirmed -> unconfirmed
2020-10-22 11:50:49 +03:00
Maksim Pechnikov
9ef46ce410
added 'unconfirmed' filter to admin/users
2020-10-22 11:50:49 +03:00
Egor Kislitsyn
e87901c424
Merge remote-tracking branch 'origin/develop' into feature/account-export
2020-10-20 17:27:29 +04:00