Sicherheit in COM

Die Sicherheit in COM basiert fest auf der Sicherheit von Windows und den zugrunde liegenden RPC-Sicherheitsmechanismen. COM-Sicherheit basiert auf der Authentifizierung (dem Prozess der Überprüfung der Identität eines Aufrufers) und der Autorisierung (der Prozess, um zu bestimmen, ob ein Aufrufer autorisiert ist, das zu tun, was er verlangt). Es gibt zwei Standard Sicherheitstypen in COM: Aktivierungssicherheit und Anrufsicherheit. Die Aktivierungssicherheit bestimmt, ob ein Client einen Server überhaupt starten kann. Nachdem ein Server gestartet wurde, können Sie die Anrufsicherheit verwenden, um den Zugriff auf die Objekte eines Servers zu steuern.

In diesem Sicherheitsmodell verwalten und schützen Server Objekte, Clients erhalten Zugriff auf Objekte über Server, und Server können den Zugriff versuchen, während sie die Identität des Clients annehmen.

Das System implementiert das Kerberos v5-Authentifizierungsprotokoll und das Schannel-Sicherheitspaket. Es umfasst auch Features wie Identitätswechsel auf Delegatebene, gegenseitige Authentifizierung, die Möglichkeit, Authentifizierungsebenen für eine AppID in der Registrierung festzulegen, und Cloaking. Mithilfe der COM-Sicherheit können Sie Objekte implementieren, die privilegierte Vorgänge ausführen können, ohne die Sicherheit zu beeinträchtigen.

Da eine Vielzahl von COM-Sicherheitsfeatures verfügbar ist, ist es hilfreich, zunächst zu bestimmen, welche Art von Sicherheit Ihre Anwendung benötigt. Für die meisten Anwendungen kann das Festlegen eines akzeptablen Sicherheitsniveaus ein unkomplizierter Prozess sein, aber Sie können auch COM-Sicherheit verwenden, um sehr komplexe Sicherheitsszenarien zu unterstützen.

Sie können den Sicherheitsprozess für den gesamten Sicherheitsprozess festlegen, indem Sie entweder Dcomcnfg.exe verwenden, um die Registrierung festzulegen, oder indem Sie CoInitializeSecurity aufrufen. Mit den beiden primären Schnittstellen IClientSecurity und IServerSecurity (und den zugehörigen Hilfsfunktionen) können Sie die Sicherheit auf Aufrufebene in Ihrem Programm festlegen.

Weitere Informationen zur COM-Sicherheit finden Sie in den folgenden Themen: