WindowsIntegrityPolicy Класс

Определение

Предоставляет сведения о текущем безопасном режиме Windows 10 (режим 10 S) и о событии, которое возникает при изменении режима.

public ref class WindowsIntegrityPolicy abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 458752)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class WindowsIntegrityPolicy final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 458752)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public static class WindowsIntegrityPolicy
Public Class WindowsIntegrityPolicy
Наследование
Object Platform::Object IInspectable WindowsIntegrityPolicy
Атрибуты

Требования к Windows

Семейство устройств
Windows 10, version 1809 (появилось в 10.0.17763.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v7.0)

Примеры

public class WindowsLockdownExample
{
    public WindowsLockdownExample()
    {
        Windows.System.Profile.WindowsIntegrityPolicy.PolicyChanged += this.WindowsIntegrityPolicy_PolicyChanged;
    }

    ~WindowsLockdownExample()
    {
        Windows.System.Profile.WindowsIntegrityPolicy.PolicyChanged -= this.WindowsIntegrityPolicy_PolicyChanged;
    }

    private void WindowsIntegrityPolicy_PolicyChanged(object sender, object e)
    {
        // Windows secure mode (10 S mode) has changed.

        this.ProcessWindowsIntegrityPolicy();

        if (!Windows.System.Profile.WindowsIntegrityPolicy.IsEnabled)
        {
            // There are certain things that you may want to do when Windows secure mode
            // (10 S mode) has changed from the enabled to the disabled state. For example,
            // a security application might want to offer anti-virus software on this 
            // device.
        }
    }

    public void ProcessWindowsIntegrityPolicy()
    {
        // Check Windows secure mode (10 S mode) status.

        if (Windows.System.Profile.WindowsIntegrityPolicy.IsEnabled)
        {
            // Windows secure mode (10 S mode) is enabled.

            if (Windows.System.Profile.WindowsIntegrityPolicy.IsEnabledForTrial)
            {
                // Furthermore, it has been enabled for trial purposes. Respond accordingly.
                // For example, logging/tagging this device for the organization to 
                // monitor devices that are under trial mode.
            }
            else
            {
                // It has been enabled for normal scenarios. Respond accordingly.
                // For example, don’t try to invoke any process that will be blocked
                // by the policy, or change your UI or error message. For example, 
                // security software could show a different error message about the process
                // being blocked when Windows secure mode (10 S mode) is enabled.
            }
        }

        // Check whether Windows secure mode (10 S mode) can be disabled, and whether disabling is supported.

        if (Windows.System.Profile.WindowsIntegrityPolicy.CanDisable)
        {
            if (Windows.System.Profile.WindowsIntegrityPolicy.IsDisableSupported)
            {
                // Windows secure mode (10 S mode) can be disabled, and disabling is supported.
                // Respond accordingly. For example, report this information back to any cloud-based
                // solution, in case it need to push any policy disabling package to the right devices.
            }
            else
            {
                // Windows secure mode (10 S mode) can be disabled, but disabling is not supported.
                // So, Windows secure mode (10 S mode) can never be changed. Work around this situation.
                // For example, show the appropriate error message when you fail to disable Windows
                // secure mode (10 S mode).
            }
        }
    }
}

Комментарии

Windows предоставляет режим 10 S (также известный как блокировка Windows). Если Windows находится в режиме 10 S, могут выполняться только компоненты Майкрософт и приложения универсальная платформа Windows (UWP). Некоторые определенные компоненты, такие как regedit.exe и cmd.exe, также запрещены. Для правильного поведения приложений UWP, особенно приложений безопасности и брандмауэра, необходимо учитывать текущий режим 10 S. Такие приложения также должны получать уведомления о переходе 10 S-режима с включенного режима на отключенный.

Свойства

CanDisable

Возвращает значение, указывающее, можно ли отключить безопасный режим Windows 10 (режим 10 S) любым способом — во время выполнения или в автономном режиме; изготовителем оборудования (OEM) или сторонним производителем.

IsDisableSupported

Возвращает значение, указывающее (см. примечания для других необходимых условий), существует ли какой-либо опубликованный способ или API для сторонних поставщиков для отключения безопасного режима Windows 10 (режим 10 S) во время выполнения.

IsEnabled

Возвращает значение, указывающее, включен ли безопасный режим Windows 10 (режим 10 S) (режим блокировки Windows).

IsEnabledForTrial

Возвращает значение, указывающее, включен ли безопасный режим Windows 10 (режим 10 S) (режим блокировки Windows) для пробной версии.

События

PolicyChanged

Возникает при изменении текущего безопасного режима Windows 10 (10 S).

Применяется к