40 lines
1.6 KiB
Markdown
40 lines
1.6 KiB
Markdown
# Tuitio
|
|
|
|
Tuitio is a simple identity server implementation focused strictly on the needs of my home lab.
|
|
At the moment it has a simple API consisting of only two methods:
|
|
* ```/identity/authenticate``` - handles user authentication using credentials and generates an access token.
|
|
* ```/identity/authorize``` - manages the authorization process for a token, including verification of its existence, validity, and authenticity.
|
|
|
|
***Tuitio*** is a latin word that encompasses meanings such as supervision, safeguarding, defense, guard duty, and protection.
|
|
|
|
## Database
|
|
Currently, the database server supported by the system is only Microsoft SQL Server. In the following versions, the system will also be compatible with PostgreSQL and SQLite.
|
|
|
|
## Logging
|
|
The logging functionality is managed with Serilog, and its configuration is done in the ```appsettings.json``` file. In addition to its standard configuration, Tuitio also has a preconfigured area where two destinations for logs are available: SqlServer database and Seq. Each of the destinations can be activated or not. If logging in the console is sufficient, all additional logging destinations can be disabled.
|
|
This configuration area is:
|
|
|
|
```
|
|
"Logs": {
|
|
"SqlServer": {
|
|
"Enabled": false,
|
|
"Connection": "Server=<server>;Database=<database>;User Id=<user>;Password=<password>;"
|
|
},
|
|
"Seq": {
|
|
"Enabled": false,
|
|
"Url": "",
|
|
"ApiKey": ""
|
|
}
|
|
}
|
|
```
|
|
|
|
## Hosting
|
|
The only hosting environment tested for this service is Docker, but considering that .NET 6 is cross platform, it can most likely be hosted in any environment.
|
|
|
|
## Stack
|
|
* .NET (C#)
|
|
* EntityFramework
|
|
* SQL Server
|
|
* Swagger
|
|
* Docker
|
|
* Seq |