Класс ИобжектсафетимплIObjectSafetyImpl Class

Этот класс предоставляет реализацию интерфейса по умолчанию, позволяющую IObjectSafety клиенту получать и устанавливать уровни безопасности объекта.This class provides a default implementation of the IObjectSafety interface to allow a client to retrieve and set an object's safety levels.

Важно!

Этот класс и его члены не могут использоваться в приложениях, выполняемых в среда выполнения Windows.This class and its members cannot be used in applications that execute in the Windows Runtime.

СинтаксисSyntax

template <class T,DWORD dwSupportedSafety>
class IObjectSafetyImpl

ПараметрыParameters

TT
Класс, производный от IObjectSafetyImpl .Your class, derived from IObjectSafetyImpl.

двсуппортедсафетиdwSupportedSafety
Задает поддерживаемые параметры безопасности для элемента управления.Specifies the supported safety options for the control. Может иметь одно из следующих значений:Can be one of the following values:

  • INTERFACESAFE_FOR_UNTRUSTED_CALLER интерфейс, определяемый параметром сетинтерфацесафетйоптионс , riid должен быть защищен для создания скриптов.INTERFACESAFE_FOR_UNTRUSTED_CALLER The interface identified by the SetInterfaceSafetyOptions parameter riid should be made safe for scripting.

  • INTERFACESAFE_FOR_UNTRUSTED_DATA интерфейс, определяемый SetInterfaceSafetyOptions параметром, riid должен быть защищен для ненадежных данных во время инициализации.INTERFACESAFE_FOR_UNTRUSTED_DATA The interface identified by the SetInterfaceSafetyOptions parameter riid should be made safe for untrusted data during initialization.

ЭлементыMembers

Открытые методыPublic Methods

nameName ОписаниеDescription
Иобжектсафетимпл:: ЖетинтерфацесафетйоптионсIObjectSafetyImpl::GetInterfaceSafetyOptions Извлекает параметры безопасности, поддерживаемые объектом, а также параметры безопасности, установленные для объекта.Retrieves the safety options supported by the object, as well as the safety options currently set for the object.
Иобжектсафетимпл:: СетинтерфацесафетйоптионсIObjectSafetyImpl::SetInterfaceSafetyOptions Делает объект надежным для инициализации или создания скриптов.Makes the object safe for initialization or scripting.

Открытые члены данныхPublic Data Members

ИмяName ОписаниеDescription
Иобжектсафетимпл:: m_dwCurrentSafetyIObjectSafetyImpl::m_dwCurrentSafety Сохраняет текущий уровень безопасности объекта.Stores the object's current safety level.

КомментарииRemarks

Класс IObjectSafetyImpl предоставляет реализацию по умолчанию IObjectSafety .Class IObjectSafetyImpl provides a default implementation of IObjectSafety. IObjectSafetyИнтерфейс позволяет клиенту извлекать и устанавливать уровни безопасности объекта.The IObjectSafety interface allows a client to retrieve and set an object's safety levels. Например, веб-браузер может вызвать IObjectSafety::SetInterfaceSafetyOptions , чтобы сделать элемент управления надежным для инициализации или обеспечения безопасности при написании сценариев.For example, a web browser can call IObjectSafety::SetInterfaceSafetyOptions to make a control safe for initialization or safe for scripting.

Обратите внимание, что использование макроса IMPLEMENTED_CATEGORY с категориями компонентов CATID_SafeForScripting и CATID_SafeForInitializing предоставляет альтернативный способ указания того, что компонент является надежным.Note that using the IMPLEMENTED_CATEGORY macro with the CATID_SafeForScripting and CATID_SafeForInitializing component categories provides an alternative way of specifying that a component is safe.

Руководство по сопутствующим статьям ATL, Создание проекта ATLRelated Articles ATL Tutorial, Creating an ATL Project

Иерархия наследованияInheritance Hierarchy

IObjectSafety

IObjectSafetyImpl

ТребованияRequirements

Заголовок: атлктл. hHeader: atlctl.h

Иобжектсафетимпл:: ЖетинтерфацесафетйоптионсIObjectSafetyImpl::GetInterfaceSafetyOptions

Извлекает параметры безопасности, поддерживаемые объектом, а также параметры безопасности, установленные для объекта.Retrieves the safety options supported by the object, as well as the safety options currently set for the object.

HRESULT GetInterfaceSafetyOptions(
    REFIID riid,
    DWORD* pdwSupportedOptions,
    DWORD* pdwEnabledOptions);

КомментарииRemarks

Реализация возвращает соответствующие значения для любого интерфейса, поддерживаемого реализацией объекта IUnknown::QueryInterface .The implementation returns the appropriate values for any interface supported by the object's implementation of IUnknown::QueryInterface.

Важно!

Любой объект, который поддерживает, IObjectSafety отвечает за собственную безопасность, а также на все объекты, которые он делегирует.Any object that supports IObjectSafety is responsible for its own security, and that of any object it delegates. Программист должен учитывать проблемы, возникающие из-за выполнения кода в контексте пользователя, межсайтовые сценарии и выполнять подходящую проверку зоны.The programmer must take into account issues arising from running code in the user's context, cross-site scripting and perform suitable zone checking.

См. раздел иобжектсафети:: жетинтерфацесафетйоптионс в Windows SDK.See IObjectSafety::GetInterfaceSafetyOptions in the Windows SDK.

Иобжектсафетимпл:: m_dwCurrentSafetyIObjectSafetyImpl::m_dwCurrentSafety

Сохраняет текущий уровень безопасности объекта.Stores the object's current safety level.

DWORD m_dwCurrentSafety;

Иобжектсафетимпл:: СетинтерфацесафетйоптионсIObjectSafetyImpl::SetInterfaceSafetyOptions

Делает объект надежным для инициализации или создания скриптов, устанавливая для элемента m_dwCurrentSafety соответствующее значение.Makes the object safe for initialization or scripting by setting the m_dwCurrentSafety member to the appropriate value.

HRESULT SetInterfaceSafetyOptions(
    REFIID riid,
    DWORD dwOptionsSetMask,
    DWORD dwEnabledOptions);

КомментарииRemarks

Реализация возвращает E_NOINTERFACE для любого интерфейса, не поддерживаемого реализацией объекта IUnknown::QueryInterface .The implementation returns E_NOINTERFACE for any interface not supported by the object's implementation of IUnknown::QueryInterface.

Важно!

Любой объект, который поддерживает, IObjectSafety отвечает за собственную безопасность, а также на все объекты, которые он делегирует.Any object that supports IObjectSafety is responsible for its own security, and that of any object it delegates. Программист должен учитывать проблемы, возникающие из-за выполнения кода в контексте пользователя, межсайтовые сценарии и выполнять подходящую проверку зоны.The programmer must take into account issues arising from running code in the user's context, cross-site scripting and perform suitable zone checking.

См. раздел иобжектсафети:: сетинтерфацесафетйоптионс в Windows SDK.See IObjectSafety::SetInterfaceSafetyOptions in the Windows SDK.

См. также разделSee also

Интерфейс ИобжектсафетиIObjectSafety Interface
Общие сведения о классахClass Overview