Add `-A`/`--authorized-fetch` option to `fedify inbox` command
Description
Add an option to make the ephemeral ActivityPub server created by fedify inbox run in AUTHORIZED_FETCH mode, where HTTP Signatures are required for all incoming requests.
Implementation details
- Add
-A/--authorized-fetchflag to thefedify inboxcommand - When enabled, verify HTTP Signatures on all incoming requests
- Return
401 Unauthorizedresponses for requests without valid signatures - Log signature verification failures with details for debugging
- Update help text and documentation to explain the option
Benefits
This feature will help developers:
- Test HTTP Signatures implementation in a controlled environment
- Debug issues related to authorized fetch requirements
- Verify server's ability to handle secured federation connections
- Simulate behavior of instances like Mastodon that enforce HTTP Signatures
I'd like to work on this issue.
@w8385 Assigned it to you!
Hi @w8385! It's been about two months since you took on this issue. I was wondering how the implementation of the -A/--authorized-fetch option for the fedify inbox command is going?
This seems like a relatively straightforward CLI enhancement. If you've started working on it or have any code ready, feel free to open a draft PR and I can help with feedback! If you're stuck on anything or need clarification about the implementation, please let me know. 😊
I’m sorry for the delay. I’ve looked into this issue occasionally, but haven’t been able to focus on it at all in the past few weeks. If you could grant me an extra week, I’ll resume working on it.
Got it!
I've changed the milestone for this issue from Fedify 1.9 to Fedify 2.0. This is because the CLI is being rewritten in Fedify 2.0, and adding a new feature to the CLI in Fedify 1.9 would make it difficult to port. @w8385 When you work on this, please make sure to base your work on the next branch, not the main branch.
Thanks for letting me know! I’ll make sure to base my work on the next branch as per your note.
@w8385 This issue has been assigned for over two weeks without updates. Please provide a status update, or unassign yourself if you're unable to continue working on it.