|
|
/*++
Copyright (c) 2000 Microsoft Corporation
Module Name:
logger.h (cgenericlogger.h derivation)
Abstract:
This file contains derived class prototypes for logging RSOP security extension data to WMI. There is one class defined for each schema RSOP security extension class (see .mof file).
Author:
Vishnu Patankar (VishnuP) 7-April-2000
Environment:
User Mode - Win32
Revision History:
--*/
#ifndef _logger_
#define _logger_
///////////////////////////////////////////////////////////////////////////////
// //
// Includes //
// //
///////////////////////////////////////////////////////////////////////////////
#include "CGenericLogger.h"
typedef class DiagnosisStatusLogger SCEP_DIAGNOSIS_LOGGER;
/////////////////////////////////////////////////////////////////////
// Derived logger class prototype
//////////////////////////////////////////////////////////////////////
class RSOP_SecuritySettingNumericLogger : public CGenericLogger { public: RSOP_SecuritySettingNumericLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcKeyName, DWORD dwValue, DWORD dwPrecedence); ~RSOP_SecuritySettingNumericLogger(); private:
// Data unique to this schema class
XBStr m_xbstrKeyName; XBStr m_xbstrSetting;
};
class RSOP_SecuritySettingBooleanLogger : public CGenericLogger { public: RSOP_SecuritySettingBooleanLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcKeyName, DWORD dwValue, DWORD dwPrecedence); ~RSOP_SecuritySettingBooleanLogger(); private:
// Data unique to this schema class
XBStr m_xbstrKeyName; XBStr m_xbstrSetting; };
class RSOP_SecuritySettingStringLogger : public CGenericLogger { public: RSOP_SecuritySettingStringLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcKeyName, PWSTR pwszValue, DWORD dwPrecedence); ~RSOP_SecuritySettingStringLogger(); private:
// Data unique to this schema class
XBStr m_xbstrKeyName; XBStr m_xbstrSetting; };
class RSOP_AuditPolicyLogger : public CGenericLogger { public: RSOP_AuditPolicyLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcCategory, DWORD dwValue, DWORD dwPrecedence); ~RSOP_AuditPolicyLogger(); private:
// Data unique to this schema class
XBStr m_xbstrCategory; XBStr m_xbstrSuccess; XBStr m_xbstrFailure; };
class RSOP_SecurityEventLogSettingNumericLogger : public CGenericLogger { public: RSOP_SecurityEventLogSettingNumericLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcKeyName, PWSTR pwszType, DWORD dwValue, DWORD dwPrecedence); ~RSOP_SecurityEventLogSettingNumericLogger(); private:
// Data unique to this schema class
XBStr m_xbstrType; XBStr m_xbstrKeyName; XBStr m_xbstrSetting; };
class RSOP_SecurityEventLogSettingBooleanLogger : public CGenericLogger { public: RSOP_SecurityEventLogSettingBooleanLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcKeyName, PWSTR pwszType, DWORD dwValue, DWORD dwPrecedence); ~RSOP_SecurityEventLogSettingBooleanLogger(); private:
// Data unique to this schema class
XBStr m_xbstrType; XBStr m_xbstrKeyName; XBStr m_xbstrSetting; };
class RSOP_RegistryValueLogger : public CGenericLogger { public: RSOP_RegistryValueLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcPath, DWORD dwType, PWSTR pwszData, DWORD dwPrecedence); ~RSOP_RegistryValueLogger(); private:
// Data unique to this schema class
XBStr m_xbstrType; XBStr m_xbstrPath; XBStr m_xbstrData;
};
class RSOP_UserPrivilegeRightLogger : public CGenericLogger { public: RSOP_UserPrivilegeRightLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcUserRight, PSCE_NAME_LIST pList, DWORD dwPrecedence); ~RSOP_UserPrivilegeRightLogger(); private:
// Data unique to this schema class
XBStr m_xbstrUserRight; XBStr m_xbstrAccountList;
};
class RSOP_RestrictedGroupLogger : public CGenericLogger { public: RSOP_RestrictedGroupLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcGroupName, PSCE_NAME_LIST pList, DWORD dwPrecedence); ~RSOP_RestrictedGroupLogger(); private:
// Data unique to this schema class
XBStr m_xbstrGroupName; XBStr m_xbstrMembers;
};
class RSOP_SystemServiceLogger : public CGenericLogger { public: RSOP_SystemServiceLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcService, BYTE m_byStartupMode, PSECURITY_DESCRIPTOR pSecurityDescriptor, SECURITY_INFORMATION SeInfo, DWORD dwPrecedence); ~RSOP_SystemServiceLogger(); private:
// Data unique to this schema class
XBStr m_xbstrService; XBStr m_xbstrStartupMode; XBStr m_xbstrSDDLString;
};
class RSOP_FileLogger : public CGenericLogger { public: RSOP_FileLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcPath, WCHAR *wcOriginalPath, BYTE m_byMode, PSECURITY_DESCRIPTOR pSecurityDescriptor, SECURITY_INFORMATION SeInfo, DWORD dwPrecedence); ~RSOP_FileLogger(); private:
// Data unique to this schema class
XBStr m_xbstrPath; XBStr m_xbstrOriginalPath; XBStr m_xbstrMode; XBStr m_xbstrSDDLString;
};
class RSOP_RegistryKeyLogger : public CGenericLogger { public: RSOP_RegistryKeyLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); HRESULT Log( WCHAR *wcPath, BYTE m_byMode, PSECURITY_DESCRIPTOR pSecurityDescriptor, SECURITY_INFORMATION SeInfo, DWORD dwPrecedence); ~RSOP_RegistryKeyLogger(); private:
// Data unique to this schema class
XBStr m_xbstrPath; XBStr m_xbstrMode; XBStr m_xbstrSDDLString; };
//
// this is the class used to log diagnosis data via the callback
//
class DiagnosisStatusLogger : public CGenericLogger { public: DiagnosisStatusLogger( IWbemServices *pNamespace, PWSTR pwszGPOName, const PWSTR pwszSOMID); // HRESULT Log( PWSTR pwszClassName, PWSTR pwszPropertyName, PWSTR pwszPropertyValueName, DWORD dwError);
HRESULT Log( PWSTR pwszClassName, PWSTR pwszPropertyName1, PWSTR pwszPropertyValueName1, PWSTR pwszPropertyName2, PWSTR pwszPropertyValueName2, DWORD dwError); HRESULT Log( PWSTR pwszClassName, PWSTR pwszPropertyName, PWSTR pwszPropertyValueName, DWORD dwError, BOOL Merge); HRESULT LogChild( PWSTR pwszClassName, PWSTR pwszPropertyName, PWSTR pwszPropertyValueName, DWORD dwError, int iChildStatus); #ifdef _WIN64
HRESULT LogRegistryKey( PWSTR pwszClassName, PWSTR pwszPropertyName, PWSTR pwszPropertyValueName, DWORD dwError, BOOL bIsChild); #endif
~DiagnosisStatusLogger(); private:
};
#endif
|