Some checks are pending
CI / Build og unit tests (push) Waiting to run
CI / Integration (mcr.microsoft.com/mssql/server:2017-latest) (push) Blocked by required conditions
CI / Integration (mcr.microsoft.com/mssql/server:2019-latest) (push) Blocked by required conditions
CI / Integration (mcr.microsoft.com/mssql/server:2022-latest) (push) Blocked by required conditions
CI / Integration (mcr.microsoft.com/mssql/server:2025-latest) (push) Blocked by required conditions
Read-only JSON API (/api/v1/instances, /api/v1/findings) and a Prometheus endpoint (/metrics) in the web UI, with bearer tokens for machines (only their SHA-256 is configured; a token only opens the API, never the pages; sensitive evidence left out unless enabled). A Grafana dashboard and Prometheus scrape example. A Windows Event Log notification channel with fixed event ids for SCOM, exempt from the hourly cap. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E3EExwndy8Z22EK2Qpt6BK
23 lines
1 KiB
C#
23 lines
1 KiB
C#
namespace SQLInsight.Web;
|
|
|
|
public sealed class WebOptions
|
|
{
|
|
public const string SectionName = "SQLInsight:Web";
|
|
|
|
/// <summary>Windows (Negotiate/Kerberos) or None. None is for development only.</summary>
|
|
public string Authentication { get; set; } = "Windows";
|
|
|
|
/// <summary>Windows groups allowed to use the UI (e.g. DOMAIN\SQL-Admins). Empty: any authenticated user.</summary>
|
|
public IList<string> AllowedGroups { get; } = [];
|
|
|
|
/// <summary>Time zone for display, e.g. Europe/Copenhagen. Defaults to the server's local time zone.</summary>
|
|
public string? TimeZone { get; set; }
|
|
|
|
/// <summary>
|
|
/// Tokens for /api/ and /metrics (name → "sha256:<hex>"). Create one with <c>SQLInsight.Web new-api-token <name></c>.
|
|
/// </summary>
|
|
public IDictionary<string, string> ApiTokens { get; } = new Dictionary<string, string>();
|
|
|
|
/// <summary>Include evidence marked sensitive (query text, logins, host names) in /api/v1/findings. Off by default.</summary>
|
|
public bool ApiIncludesSensitiveEvidence { get; set; }
|
|
}
|