From 4b2ad030fa381662f4b0c2464e97b0d2c5f6a716 Mon Sep 17 00:00:00 2001
From: Tim <contact@bytim.eu>
Date: Fri, 18 Apr 2025 12:25:59 +0200
Subject: Initial commit

---
 VPNAuth.Server/Database/AccessToken.cs | 10 ++++++++++
 VPNAuth.Server/Database/AuthRequest.cs | 14 ++++++++++++++
 VPNAuth.Server/Database/Database.cs    | 14 ++++++++++++++
 3 files changed, 38 insertions(+)
 create mode 100644 VPNAuth.Server/Database/AccessToken.cs
 create mode 100644 VPNAuth.Server/Database/AuthRequest.cs
 create mode 100644 VPNAuth.Server/Database/Database.cs

(limited to 'VPNAuth.Server/Database')

diff --git a/VPNAuth.Server/Database/AccessToken.cs b/VPNAuth.Server/Database/AccessToken.cs
new file mode 100644
index 0000000..3cdc3ba
--- /dev/null
+++ b/VPNAuth.Server/Database/AccessToken.cs
@@ -0,0 +1,10 @@
+namespace VPNAuth.Server.Database;
+
+public class AccessToken
+{
+    public int Id { get; set; }
+    public string Token { get; set; }
+    public string ClientId { get; set; }
+    public DateTime CreationTime { get; set; }
+    public List<string> Scopes { get; set; }
+}
diff --git a/VPNAuth.Server/Database/AuthRequest.cs b/VPNAuth.Server/Database/AuthRequest.cs
new file mode 100644
index 0000000..98fe001
--- /dev/null
+++ b/VPNAuth.Server/Database/AuthRequest.cs
@@ -0,0 +1,14 @@
+namespace VPNAuth.Server.Database;
+
+public class AuthRequest
+{
+    public int Id { get; set; }
+    public DateTime InitTime { get; set; }
+    public string Code { get; set; }
+    public string? State { get; set; }
+    public string ClientId { get; set; }
+    public List<string> Scopes { get; set; }
+    public string CodeChallenge { get; set; }
+    public string CodeChallengeMethod { get; set; }
+    public bool Accepted { get; set; }
+}
diff --git a/VPNAuth.Server/Database/Database.cs b/VPNAuth.Server/Database/Database.cs
new file mode 100644
index 0000000..a8cf8eb
--- /dev/null
+++ b/VPNAuth.Server/Database/Database.cs
@@ -0,0 +1,14 @@
+using Microsoft.EntityFrameworkCore;
+
+namespace VPNAuth.Server.Database;
+
+public class Database : DbContext
+{
+    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
+    {
+        optionsBuilder.UseSqlite("Data Source=vpnauth.db");
+    }
+
+    public DbSet<AuthRequest> AuthRequests { get; set; }
+    public DbSet<AccessToken> AccessTokens { get; set; }
+}
-- 
cgit v1.2.3