Wyłączanie zabezpieczeń połączeń
Zabezpieczenia wywołań określają, czy klient ma uprawnienia do wywoływania metod serwera. Istnieją dwa sposoby wyłączania zabezpieczeń wywołań: Jeden polega na użyciu Dcomcnfg.exe do modyfikowania rejestru, a drugi wymaga wywołań CoInitializeSecurity.
- Wyłączanie zabezpieczeń połączeń przy użyciu DCOMCNFG
- Programistyczne wyłączanie zabezpieczeń połączeń
- Tematy pokrewne
Wyłączanie zabezpieczeń połączeń przy użyciu narzędzia DCOMCNFG
Zabezpieczeń wywołań można najłatwiej wyłączyć przy użyciu Dcomcnfg.exe w celu zmodyfikowania rejestru. Jednak użycie Dcomcnfg.exe do wyłączenia zabezpieczeń będzie działać tylko wtedy, gdy zarówno klient, jak i serwer nie wywołają CoInitializeSecurity. Dzieje się tak, ponieważ podczas wywoływania CoInitializeSecurity funkcja DCOM ignoruje ustawienia rejestru i używa w zamian wartości podanych do CoInitializeSecurity.
Aby wyłączyć zabezpieczenia za pomocą Dcomcnfg.exe, zarówno klient, jak i serwer muszą ustawić ich poziomy uwierzytelniania na Brak. Należy wykonać następujące czynności:
- Uruchom Dcomcnfg.exe.
- Na stronie Aplikacje wybierz aplikację reprezentującą serwer. Kliknij przycisk właściwości (lub kliknij dwukrotnie wybraną aplikację).
- Kliknij kartę Ogólne.
- W polu listy domyślnego poziomu uwierzytelniania wybierz pozycję (Brak).
- Kliknij przycisk Zastosuj, aby zastosować zmiany; jednak zmiany nie są stosowane do żadnych uruchomionych wystąpień aplikacji.
- Jeśli klient pojawi się na liście na stronie Applications, powtórz kroki od 2 do 5, wybierając klienta zamiast serwera dla kroku 2. Następnie kliknij przycisk OK. Jeśli klient nie znajduje się na liście, możesz wykonać jedną z następujących trzech czynności:
- Poziom uwierzytelniania klienta można ustawić na Wartość Brak na poziomie komputera przy użyciu Dcomcnfg.exe. (Zobacz ostrzeżenie i poniższą procedurę).
- Poziom uwierzytelniania klienta można ustawić na Wartość Brak programowo.
- Aby wskazać poziom uwierzytelniania none, możesz utworzyć klucz AppID dla klienta. (Zobacz Konfigurowanie zabezpieczeń Process-Wide za pośrednictwem rejestru.)
Aby ustawić poziom uwierzytelniania na Wartość Brak dla całego komputera:
Notatka
Ustawienie poziomu uwierzytelniania dla całego komputera na Brak jest niezwykle niezabezpieczone.
- Uruchom Dcomcnfg.exe.
- Wybierz kartę Właściwości domyślne .
- W polu listy Domyślny poziom uwierzytelniania wybierz opcję (Brak).
- Kliknij przycisk OK.
Programowe wyłączanie zabezpieczeń połączeń
Aby programowo wyłączyć wywołanie zabezpieczeń, zarówno klient, jak i serwer muszą wywołać CoInitializeSecurity, ustawiając poziom uwierzytelniania w parametrze dwAuthnLevel na RPC_C_AUTHN_LEVEL_NONE.
Tematy pokrewne