[backend/federation] Add extra guard clauses to ActivityHandlerService

This should be caught by InboxValidationMiddleware, but more checks are always a good idea.
This commit is contained in:
Laura Hausmann 2024-10-29 15:10:40 +01:00
parent d4cda86228
commit d36fa802d8
No known key found for this signature in database
GPG key ID: D044E84C5BE01605

View file

@ -52,6 +52,9 @@ public class ActivityHandlerService(
return; return;
} }
if (resolvedActor.IsLocalUser)
throw GracefulException.UnprocessableEntity("Refusing to process activity for local user");
if (new Uri(activity.Actor.Id).Host != new Uri(activity.Id).Host) if (new Uri(activity.Actor.Id).Host != new Uri(activity.Id).Host)
throw GracefulException throw GracefulException
.UnprocessableEntity($"Activity identifier ({activity.Id}) host doesn't match actor identifier ({activity.Actor.Id}) host"); .UnprocessableEntity($"Activity identifier ({activity.Id}) host doesn't match actor identifier ({activity.Actor.Id}) host");