Unified authorization system for students and staff of Innopolis University.
InnoID is a system consisting of a REST API and a Telegram bot that uses it .
Has 2 models:
- User:
- Has
Telegram ID
,Is registered
,Email
and other fields that applications can request
- Has
- App:
- Has different permissions in the API (By default: only getting the user)
- Has different access to user fields (By default: only
Is authorized
)
Associated with an App which has all permissions. To register users, Microsoft Azure AD (for organizations) is used, which allows you to verify yourself using a university account.
After successful authorization, the data is transferred to the Longpoll server, from where the bot takes this data and confirms the user in the InnoID API.
First you need to set up the environment:
- Rename
.env-example
to.env
- Edit
.env
: Fill in the variables with empty values and edit the remaining ones if necessary
Next you need to use Docker:
docker-compose build
docker-compose up -d