CAtlServiceModuleT::InitializeSecurity
Zawiera domyślne ustawienia zabezpieczeń dla usługi.
HRESULT InitializeSecurity( ) throw( );
Wartość zwracana
Zwraca wartość S_OK na powodzenie lub błąd HRESULT awarii.
Uwagi
Visual Studio .net 2003 to metoda nie jest zaimplementowana w klasie podstawowej.Kreator projektu Visual Studio zawiera tej metody w generowanym kodzie, ale wystąpi błąd kompilacji, jeśli projekt utworzony w starszej wersji programu Visual C++ jest kompilowany przy użyciu ATL 7.1.Wszystkie klasy, która wynika z CAtlServiceModuleT musi implementować tej metody w klasie pochodnej.
Użyj PKT poziom uwierzytelniania, poziom personifikacji RPC_C_IMP_LEVEL_IDENTIFY i odpowiedni niezerowe deskryptor zabezpieczeń w wywołaniu metodę CoInitializeSecurity.
Wygenerowany przez Kreatora usługi nonattributed projektów byłoby to w
class CNonAttribServiceModule : public CAtlServiceModuleT< CNonAttribServiceModule, IDS_SERVICENAME >
{
public :
DECLARE_LIBID(LIBID_NonAttribServiceLib)
DECLARE_REGISTRY_APPID_RESOURCEID(IDR_NONATTRIBSERVICE, "{29160736-339F-4A1C-ABEF-C320CE103E12}")
HRESULT InitializeSecurity() throw()
{
// TODO : Call CoInitializeSecurity and provide the appropriate security settings for
// your service
// Suggested - PKT Level Authentication,
// Impersonation Level of RPC_C_IMP_LEVEL_IDENTIFY
// and an appropiate Non NULL Security Descriptor.
return S_OK;
}
};
Dla projektów przypisane usługi byłoby to w
[ module(SERVICE, uuid = "{D3103322-7B70-4581-8E59-12769BD9A62B}",
name = "AttribService",
helpstring = "AttribService 1.0 Type Library",
resource_name="IDS_SERVICENAME") ]
class CAttribServiceModule
{
public:
HRESULT InitializeSecurity() throw()
{
// TODO : Call CoInitializeSecurity and provide the appropriate security settings for
// your service
// Suggested - PKT Level Authentication,
// Impersonation Level of RPC_C_IMP_LEVEL_IDENTIFY
// and an appropiate Non NULL Security Descriptor.
return S_OK;
}
};
Wymagania
Nagłówek: atlbase.h