Add SGU credential provider and authentication broker

This commit is contained in:
2026-08-31 17:48:18 -06:00
parent 5e216f42a4
commit 1f43f200b4
50 changed files with 3226 additions and 236 deletions
@@ -0,0 +1,24 @@
namespace SGU.CredentialProvider;
internal enum BrokerDecisionKind
{
Authorized,
InvalidCredentials,
Unavailable
}
internal sealed record BrokerDecision(
BrokerDecisionKind Kind,
string? Domain = null,
string? UserName = null,
string? ErrorCode = null)
{
public static BrokerDecision Authorized(string domain, string userName) =>
new(BrokerDecisionKind.Authorized, domain, userName);
public static BrokerDecision Invalid(string? errorCode = null) =>
new(BrokerDecisionKind.InvalidCredentials, ErrorCode: errorCode);
public static BrokerDecision Unavailable(string? errorCode = null) =>
new(BrokerDecisionKind.Unavailable, ErrorCode: errorCode);
}