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
- Наследование
- Атрибуты
Требования к 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). |