Események biztonságos biztosítása
Megakadályozhatja, hogy a jogosulatlan felhasználók olyan eseményeket kapjanak, amelyekhez nem férhetnek hozzá. Az eseményszolgáltató a saját eseményosztályainak példányait is elláthatja, ahogyan a rendszerregisztrációs adatbázis-szolgáltató olyan osztályokat biztosít, mint például a RegistryKeyChangeEvent. Az eseményszolgáltató olyan belső eseményeket is képes szállítani, mint például a __InstanceCreationEvent. További információért lásd: Eseményszolgáltató készítése.
Az eseményszolgáltató az alábbi módokon szabályozhatja az esemény címzettjeinek hozzáférését:
A hozzáférés-vezérlés használata IWbemEventProviderSecurity::AccessCheck a leghatékonyabb módszer.
A szolgáltató határozza meg, hogy a fogyasztó rendelkezik-e jogosultságokkal a kért esemény fogadásához. Ha a fogyasztó nem rendelkezik elegendő jogosultsággal a regisztrációhoz, a WMI hozzáférés-megtagadásos hibát ad vissza. Ezt a módot akkor használja, ha a szolgáltató eldöntheti, hogy ki fogadhat eseményeket. Előfordulhat például, hogy egy szolgáltató biztonsági eseményeket szolgáltathat, és megkövetelheti, hogy a felhasználó rendelkezzen rendszergazdai jogosultsággal, a SeSecurityPrivilege jogosultság engedélyezésével.
A IWbemEventSink::SetSinkSecurity megvalósítása a fogadóban, amely eseményeket hoz létre, lehetővé teszi egy biztonsági leíró (SD) beállítását a fogadón az összes átmenő eseményhez.
A WMI az SD alapján végez hozzáférési ellenőrzéseket. Ezt a módot akkor használja, ha a szolgáltató nem tudja eldönteni, hogy ki használhatja az eseményeket, de dönthet egy SD-ről egy adott fogadóhoz. Használja például IWbemEventSink::SetSinkSecurity, ha az eseményszolgáltató több fogadót szerzett a IWbemEventSink::GetRestrictedSink hívások révén, és minden fogadóhoz biztonsági leírót szeretne.
Az esemény SECURITY_DESCRIPTOR tulajdonságának beállítása lehetővé teszi az SD beállítását minden eseményhez.
Ezt a megközelítést akkor érdemes használni, ha a fogadóba szállított események különböző biztonsági leírókkal rendelkeznek. Ennek a módszernek a használatához származtassa az Ön szolgáltatója által meghatározott külső eseményosztályok bármelyikét __Event vagy __ExtrinsicEvent, annak érdekében, hogy az osztálya tartalmazza a SECURITY_DESCRIPTOR tulajdonságot. Az eseményszolgáltató például egy fogadón keresztül is közzéteheti a biztonságos és a normál eseményeket. Ebben az esetben használja a Rendszergazdák fiók biztonsági leírót a biztonságos eseményekhez, és egy NULL biztonsági leírót a bárki által fogadható normál eseményekhez.
Események biztonságos kezelése leválasztott eseményszolgáltatók által
A leválasztott eseményszolgáltatók eltérnek a nem egymástól független eseményszolgáltatóktól a WMI-ben való regisztrációjuk módjában. Az IWbemEventProviderSecurity::AccessCheck hívása a leválasztott szolgáltatótól származó eseményekhez soha nem propagálja az ügyfél hozzáférési jogkivonatát. A WMI ugyanúgy kezeli a hozzáférés-vezérlést, mint a nem leválasztott eseményszolgáltatók esetében. A leválasztott szolgáltató készítéséről szóló további információkért lásd: Egy szolgáltató integrálása egy alkalmazásba.
Csak azok a rendszergazdák, akik a VezérlőpultWMI-vezérlőben rendelkeznek a FULL_WRITE jogosultsággal, generálhatnak eseményeket egy névtérhez. További információért lásd a(z) Névtérbiztonság beállítása a WMI vezérlővel.
Kapcsolódó témakörök