Two teams try and fill in any horizontal, vertical, or diagonal line on a bingo board by playing maps on osu!
osu.bingo
osu
This service is responsible for letting users (or services) perform authenticated actions
Features:#
- Provide a REST API to login and logout, which create session tokens for users
- Allow the exchange of session tokens for JWTs which verify user identities
- Expose public keys of signed JWTs to allow services to verify identity
- Allow the fetching of osu! access tokens to perform authenticated actions with the osu! API
This service is capable of issuing two types of tokens, user and service tokens:
- User tokens are capable of being issued using a /login endpoint. They have a longer expiry, and are automatically exchanged for a newer token if the current one is set to expire soon. These tokens are also scoped so that certain actions are disallowed if a user shouldn't be able to do something.
- Service Tokens are only able to be issued internally using a RabbitMQ endpoint. A shared secret is established on creation of the authentication database, and the service uses that secret to request a signed JWT token. These tokens only last a few seconds, and are used to perform actions that bypass all authentication.
....or.... should I implement a scope system instead maybe when I use this code for another service
Whoever decided JWT should be pronounced as "jot" I respectfully think is very stupid