IObjectSafetyImpl, classe

Cette classe fournit une implémentation par défaut de l’interface IObjectSafety pour permettre à un client de récupérer et de définir les niveaux de sécurité d’un objet.

Important

Cette classe et ses membres ne peuvent pas être utilisés dans les applications qui s’exécutent dans Windows Runtime.

Syntaxe

template <class T,DWORD dwSupportedSafety>
class IObjectSafetyImpl

Paramètres

T
Votre classe, dérivée de IObjectSafetyImpl.

dwSupportedSafety
Spécifie les options de sécurité prises en charge pour le contrôle. Peut avoir l’une des valeurs suivantes :

  • INTERFACESAFE_FOR_UNTRUSTED_CALLER L’interface identifiée par le paramètre riid SetInterfaceSafetyOptions doit être sécurisée pour le script.

  • INTERFACESAFE_FOR_UNTRUSTED_DATA L’interface identifiée par le SetInterfaceSafetyOptions paramètre riid doit être sécurisée pour les données non approuvées lors de l’initialisation.

Membres

Méthodes publiques

Nom Description
IObjectSafetyImpl ::GetInterfaceSafetyOptions Récupère les options de sécurité prises en charge par l’objet, ainsi que les options de sécurité actuellement définies pour l’objet.
IObjectSafetyImpl ::SetInterfaceSafetyOptions Rend l’objet sécurisé pour l’initialisation ou le script.

Membres de données publics

Nom Description
IObjectSafetyImpl ::m_dwCurrentSafety Stocke le niveau de sécurité actuel de l’objet.

Notes

La classe IObjectSafetyImpl fournit une implémentation par défaut de IObjectSafety. L’interface IObjectSafety permet à un client de récupérer et de définir les niveaux de sécurité d’un objet. Par exemple, un navigateur web peut appeler IObjectSafety::SetInterfaceSafetyOptions pour sécuriser un contrôle pour l’initialisation ou pour l’écriture de scripts.

Notez que l’utilisation de la macro IMPLEMENTED_CATEGORY avec les catégories de composants CATID_SafeForScripting et CATID_SafeForInitializing offre une autre façon de spécifier qu’un composant est sûr.

Didacticiel ATL sur les articles connexes, création d’un projet ATL

Hiérarchie d'héritage

IObjectSafety

IObjectSafetyImpl

Spécifications

En-tête : atlctl.h

IObjectSafetyImpl ::GetInterfaceSafetyOptions

Récupère les options de sécurité prises en charge par l’objet, ainsi que les options de sécurité actuellement définies pour l’objet.

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

Notes

L’implémentation retourne les valeurs appropriées pour n’importe quelle interface prise en charge par l’implémentation de IUnknown::QueryInterfacel’objet .

Important

Tout objet pris en charge IObjectSafety est responsable de sa propre sécurité et celui de tout objet qu’il délègue. Le programmeur doit tenir compte des problèmes liés à l’exécution de code dans le contexte de l’utilisateur, à l’écriture de scripts intersites et à la vérification de zone appropriée.

Voir IObjectSafety ::GetInterfaceSafetyOptions dans le Kit de développement logiciel (SDK) Windows.

IObjectSafetyImpl ::m_dwCurrentSafety

Stocke le niveau de sécurité actuel de l’objet.

DWORD m_dwCurrentSafety;

IObjectSafetyImpl ::SetInterfaceSafetyOptions

Rend l’objet sécurisé pour l’initialisation ou le script en définissant le membre m_dwCurrentSafety sur la valeur appropriée.

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

Notes

L’implémentation retourne E_NOINTERFACE pour toute interface non prise en charge par l’implémentation de IUnknown::QueryInterfacel’objet .

Important

Tout objet pris en charge IObjectSafety est responsable de sa propre sécurité et celui de tout objet qu’il délègue. Le programmeur doit tenir compte des problèmes liés à l’exécution de code dans le contexte de l’utilisateur, à l’écriture de scripts intersites et à la vérification de zone appropriée.

Voir IObjectSafety ::SetInterfaceSafetyOptions dans le Kit de développement logiciel (SDK) Windows.

Voir aussi

IObjectSafety, interface
Vue d’ensemble de la classe