31 lines
1.3 KiB
C#
31 lines
1.3 KiB
C#
namespace ZB.MOM.WW.OtOpcUa.Security;
|
|
|
|
/// <summary>
|
|
/// Auth-cookie configuration bound from <c>Security:Cookie</c>. Consumed by a
|
|
/// <c>Configure<IOptions<OtOpcUaCookieOptions>, ILoggerFactory></c> step inside
|
|
/// <c>AddOtOpcUaAuth</c> that copies the values onto <c>CookieAuthenticationOptions</c>.
|
|
/// </summary>
|
|
public sealed class OtOpcUaCookieOptions
|
|
{
|
|
/// <summary>Configuration section name (<c>Security:Cookie</c>).</summary>
|
|
public const string SectionName = "Security:Cookie";
|
|
|
|
/// <summary>
|
|
/// Auth cookie name. Default uses the <c>ZB.MOM.WW</c> convention; mirrors ScadaBridge's
|
|
/// <c>ZB.MOM.WW.ScadaBridge.Auth</c>. Changing this invalidates existing sessions on next
|
|
/// deploy.
|
|
/// </summary>
|
|
public string Name { get; set; } = "ZB.MOM.WW.OtOpcUa.Auth";
|
|
|
|
/// <summary>Idle sliding-window length in minutes (default 30).</summary>
|
|
public int ExpiryMinutes { get; set; } = 30;
|
|
|
|
/// <summary>
|
|
/// Require HTTPS for the auth cookie. Default <c>true</c>: cookie is marked
|
|
/// <c>SecurePolicy = Always</c>. Set to <c>false</c> ONLY for local dev stacks running
|
|
/// plain HTTP — emits a startup Warning when disabled so the misconfiguration is
|
|
/// audible.
|
|
/// </summary>
|
|
public bool RequireHttpsCookie { get; set; } = true;
|
|
}
|