Skip to main content

An authentication layer for the Fediverse

Project description

cattle_grid

cattle_grid is meant to simplify handling authentication in server to server communication of the Fediverse. cattle_grid checks the HTTP signatures based on the headers. For this public keys are retrieved and cached.

For installation instructions see the documentation.

Development

One can run the pytest tests via

poetry install
poetry run pytest

Development with Fediverse pasture

In your Funfedi.dev directory (see here for details), run

cd fediverse-pasture
docker compose --file pasture.yml up pasture_verify_actor

Now in the cattle grid directory, run

poetry run python -mcattle_grid.config --actor_id http://cattle_grid/actor

to create a cattle_grid.toml file. Then start the docker containers via

docker compose up

By opening http://localhost:2909/?actor_uri=jskitten@cattle_grid_demo, you should then be able to view the verify actor result. By refreshing the page and inspecting the log files, you can also check that the requests only ran once.

Running GUI tests with the pasture

Start mastodon accessible through your browser

cd fediverse-pasture
docker compose --file mastodon42.yml --profile nginx up

See Fun Fediverse Development for instructions.

Then you can open mastodon42web and lookup jskitten@cattle_grid_demo. When you send a message to this kitten, it should reply with a meow, e.g.

Kitten meows

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cattle_grid-0.1.0.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

cattle_grid-0.1.0-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file cattle_grid-0.1.0.tar.gz.

File metadata

  • Download URL: cattle_grid-0.1.0.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.3 Linux/6.1.0-13-amd64

File hashes

Hashes for cattle_grid-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bbae5404d1b085c627d0d271453cdb3c3b186745c415fa5a9f8c3338ad6559e2
MD5 80298b5ee591f3cd3c4186c19ea07ac3
BLAKE2b-256 83da5655becc076194c3733ba42dc817bab4105efb1274e118dd89b13c9ef868

See more details on using hashes here.

File details

Details for the file cattle_grid-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: cattle_grid-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.3 Linux/6.1.0-13-amd64

File hashes

Hashes for cattle_grid-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 da30cebe58a5721e88b0b7c73a1f9696b93b95f5af5de7221c91432ca7a82cae
MD5 627922382382c03342a80b3e0200cf33
BLAKE2b-256 980a8fa5c54ff596dab3f7e54a9b8b8e988009135bae63218a80135cc085e87c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page