/* * Copyright (c) 2024 ETH Zürich, IT Services * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ using System; using System.Collections.Generic; namespace SafeExamBrowser.Settings.Security { /// /// Defines all settings related to security. /// [Serializable] public class SecuritySettings { /// /// The hash code of the administrator password for the settings. /// public string AdminPasswordHash { get; set; } /// /// Determines whether any log information will be accessible via the user interface. /// public bool AllowApplicationLogAccess { get; set; } /// /// Determines whether the user may initiate the termination of SEB. This setting does not affect automated mechanisms like a quit URL. /// public bool AllowTermination { get; set; } /// /// Determines whether the user may reconfigure the application. /// public bool AllowReconfiguration { get; set; } /// /// Determines whether the user may use the sticky keys feature of the operating system. /// public bool AllowStickyKeys { get; set; } /// /// Determines whether the user is allowed to use the system clipboard, a custom clipboard or no clipboard at all. /// public ClipboardPolicy ClipboardPolicy { get; set; } /// /// Determines whether the lock screen is disabled in case of a user session change. This setting overrides the activation based on /// and or . /// public bool DisableSessionChangeLockScreen { get; set; } /// /// The kiosk mode which determines how the computer is locked down. /// public KioskMode KioskMode { get; set; } /// /// The hash code of the quit password. /// public string QuitPasswordHash { get; set; } /// /// An URL to optionally restrict with which resource SEB may be reconfigured. Allows the usage of a wildcard character (*). /// public string ReconfigurationUrl { get; set; } /// /// Determines whether the cursor configuration will be verified during session initialization. /// public bool VerifyCursorConfiguration { get; set; } /// /// Determines whether the session integrity will be verified after session initialization. /// public bool VerifySessionIntegrity { get; set; } /// /// All restrictions which apply to the SEB version to be used. /// public IList VersionRestrictions { get; set; } /// /// Determines whether SEB is allowed to run in a virtual machine. /// public VirtualMachinePolicy VirtualMachinePolicy { get; set; } public SecuritySettings() { VersionRestrictions = new List(); } } }