feat: An Initias Redis Store Implementation

- **docker-compose.yml**
  - Added Redis service configuration to support token storage.
  - Set up health checks and volume for Redis persistence.
  - Configured VRCAuthProxy service to depend on Redis.

- **HttpClientCookieContainer.cs**
  - Added `Username` property to support user-specific token management.

- **Program.cs**
  - Integrated Redis for storing and retrieving authentication tokens.
  - Updated login and token rotation logic to utilize Redis.
  - Improved async/await usage for better reliability.

- **VRCAuthProxy.csproj**
  - Added `StackExchange.Redis` package for Redis connectivity.
  - Corrected `Otp.NET` package reference.

- **API.cs**
  - Updated `TotpVerifyResponse` and `User` classes to be nullable-aware.

- **RedisService.cs**
  - Implemented Redis service for managing authentication tokens.
  - Added methods for saving, retrieving, and deleting tokens.
This commit is contained in:
MiscFrizzy 2025-04-07 07:47:27 -04:00
parent eb4349031b
commit 30d631d246
6 changed files with 180 additions and 61 deletions

View file

@ -16,7 +16,9 @@
<ItemGroup>
<FrameworkReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Otp.NET" Version="1.4.0" />
<PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="8.0.0" />
<PackageReference Include="Otp.NET" Version="1.3.0" />
<PackageReference Include="StackExchange.Redis" Version="2.7.17" />
</ItemGroup>
<ItemGroup>