Its more or less a test how well the helper services improve the implementation. I havent implemented anything fancy here atm. Just testing the oauth2 flow
51 lines
1.9 KiB
C#
51 lines
1.9 KiB
C#
using MoonCore.Helpers;
|
|
|
|
namespace Moonlight.ApiServer.Configuration;
|
|
|
|
public class AppConfiguration
|
|
{
|
|
public string PublicUrl { get; set; } = "http://localhost:5165";
|
|
|
|
public DatabaseConfig Database { get; set; } = new();
|
|
public AuthenticationConfig Authentication { get; set; } = new();
|
|
public DevelopmentConfig Development { get; set; } = new();
|
|
|
|
public class DatabaseConfig
|
|
{
|
|
public string Host { get; set; } = "your-database-host.name";
|
|
public int Port { get; set; } = 3306;
|
|
|
|
public string Username { get; set; } = "db_user";
|
|
public string Password { get; set; } = "db_password";
|
|
|
|
public string Database { get; set; } = "db_name";
|
|
}
|
|
|
|
public class AuthenticationConfig
|
|
{
|
|
public string MlAccessSecret { get; set; } = Formatter.GenerateString(32);
|
|
public string MlRefreshSecret { get; set; } = Formatter.GenerateString(32);
|
|
|
|
public string Secret { get; set; } = Formatter.GenerateString(32);
|
|
|
|
public int TokenDuration { get; set; } = 10;
|
|
|
|
public bool UseLocalOAuth2Service { get; set; } = true;
|
|
public string AccessSecret { get; set; } = Formatter.GenerateString(32);
|
|
public string RefreshSecret { get; set; } = Formatter.GenerateString(32);
|
|
public string ClientId { get; set; } = Formatter.GenerateString(8);
|
|
public string ClientSecret { get; set; } = Formatter.GenerateString(32);
|
|
public string? AuthorizationUri { get; set; }
|
|
public string? AuthorizationRedirect { get; set; }
|
|
public string? AccessEndpoint { get; set; }
|
|
public string? RefreshEndpoint { get; set; }
|
|
|
|
// Local OAuth2 Service
|
|
public string CodeSecret { get; set; } = Formatter.GenerateString(32);
|
|
}
|
|
|
|
public class DevelopmentConfig
|
|
{
|
|
public bool EnableApiDocs { get; set; } = false;
|
|
}
|
|
} |