Compartir a través de


Clase IObjectSafetyImpl

Esta clase proporciona una implementación predeterminada de la interfaz IObjectSafety para permitir que un cliente recupere y establezca los niveles de seguridad de un objeto.

Importante

Esta clase y sus miembros no se pueden usar en las aplicaciones que se ejecutan en Windows Runtime.

Sintaxis

template <class T,DWORD dwSupportedSafety>
class IObjectSafetyImpl

Parámetros

T
La clase, que se deriva de IObjectSafetyImpl.

dwSupportedSafety
Especifica las opciones de seguridad admitidas para el control. Puede ser uno de los siguientes valores:

  • INTERFACESAFE_FOR_UNTRUSTED_CALLER La interfaz identificada por el parámetro riid de SetInterfaceSafetyOptions debe ser segura para el scripting.

  • INTERFACESAFE_FOR_UNTRUSTED_DATA La interfaz identificada por el parámetro riid de SetInterfaceSafetyOptions debe ser segura para los datos que no son de confianza durante la inicialización.

Miembros

Métodos públicos

Nombre Descripción
IObjectSafetyImpl::GetInterfaceSafetyOptions Recupera las opciones de seguridad admitidas por el objeto, así como las opciones de seguridad establecidas actualmente para el objeto.
IObjectSafetyImpl::SetInterfaceSafetyOptions Hace que el objeto sea seguro para la inicialización o scripting.

Miembros de datos públicos

Nombre Descripción
IObjectSafetyImpl::m_dwCurrentSafety Almacena el nivel de seguridad actual del objeto.

Comentarios

La clase IObjectSafetyImpl proporciona una implementación predeterminada de IObjectSafety. La interfaz IObjectSafety permite a un cliente recuperar y establecer los niveles de seguridad de un objeto. Por ejemplo, un explorador web puede llamar a IObjectSafety::SetInterfaceSafetyOptions para que un control sea seguro para la inicialización o para el scripting.

Tenga en cuenta que el uso de la macro IMPLEMENTED_CATEGORY con las categorías de componentes CATID_SafeForScripting y CATID_SafeForInitializing proporciona una manera alternativa de especificar que un componente es seguro.

Artículos relacionados Tutorial de ATL, Creación de un proyecto ATL

Jerarquía de herencia

IObjectSafety

IObjectSafetyImpl

Requisitos

Encabezado: atlctl.h

IObjectSafetyImpl::GetInterfaceSafetyOptions

Recupera las opciones de seguridad admitidas por el objeto, así como las opciones de seguridad establecidas actualmente para el objeto.

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

Comentarios

La implementación devuelve los valores adecuados para cualquier interfaz compatible con la implementación de IUnknown::QueryInterface.

Importante

Cualquier objeto que admita IObjectSafety es responsable de su propia seguridad y de la de cualquier objeto que delegue. El programador debe tener en cuenta los problemas derivados de la ejecución de código en el contexto del usuario, el scripting entre sitios y realizar una comprobación de zona adecuada.

Consulte IObjectSafety::GetInterfaceSafetyOptions en Windows SDK.

IObjectSafetyImpl::m_dwCurrentSafety

Almacena el nivel de seguridad actual del objeto.

DWORD m_dwCurrentSafety;

IObjectSafetyImpl::SetInterfaceSafetyOptions

Hace que el objeto sea seguro para la inicialización o scripting estableciendo el miembro m_dwCurrentSafety en el valor adecuado.

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

Comentarios

La implementación devuelve E_NOINTERFACE para cualquier interfaz no admitida por la implementación de IUnknown::QueryInterface.

Importante

Cualquier objeto que admita IObjectSafety es responsable de su propia seguridad y de la de cualquier objeto que delegue. El programador debe tener en cuenta los problemas derivados de la ejecución de código en el contexto del usuario, el scripting entre sitios y realizar una comprobación de zona adecuada.

Consulte IObjectSafety::SetInterfaceSafetyOptions en Windows SDK.

Consulte también

Interfaz IObjectSafety
Información general sobre la clase