Files
Musify/WebApi/Authentication/AuthenticationConfiguration.cs
T
2026-05-29 16:02:34 +02:00

38 lines
852 B
C#

using System.ComponentModel.DataAnnotations;
namespace WebApi.Authentication;
public sealed class AuthenticationConfiguration
{
public const string SectionName = "Authentication";
[Required]
[Url]
public required string MetadataAddress { get; init; }
[Required]
public required string IssuerAddress { get; init; }
[Required]
public required string AudienceAddress { get; init; }
[Required]
public required string ClientId { get; init; }
public string? ClientSecret { get; init; }
[Required]
[Url]
public required string AuthorizationEndpoint { get; init; }
[Required]
[Url]
public required string TokenEndpoint { get; init; }
[Required]
[MinLength(1)]
public required string[] Scopes { get; init; }
public bool RequireHttpsMetadata { get; init; } = true;
}