Teilen über


Delegierung und Identitätswechsel

In Client-/Serverszenarien ist es üblich, dass ein Server einen anderen Server aufruft, um eine Aufgabe im Auftrag eines Clients auszuführen. Die Situation, in der ein Server die Berechtigung erhält, im Namen eines Clients zu handeln, wird Delegierungaufgerufen.

Aus Sicherheitsgründen ergeben sich zwei Fragen hinsichtlich der Delegierung:

  • Was sollte der Server tun dürfen, wenn er im Auftrag des Clients handelt?
  • Welche Identität wird vom Server angezeigt, wenn er andere Server im Auftrag eines Clients aufruft?

Um diese Probleme zu behandeln, bietet COM die folgenden Funktionen. Der Client kann eine Identitätswechselstufe festlegen, die bestimmt, inwieweit der Server als Client fungieren kann. Wenn der Client dem Server genügend Autorität gewährt, kann der Server identitätswechseln, (vorgeben), der Client zu sein. Beim Identitätswechsel des Clients erhält der Server nur Zugriff auf die Objekte oder Ressourcen, die der Client verwenden darf. Der Server, der als Client fungiert, kann auch das Verschleiern von ermöglichen, seine eigene Identität zu maskieren und die Identität des Clients in Aufrufen anderer COM-Komponenten zu projizieren.

Diagramm, das zeigt, wie der Server als Client das Verschließen aktivieren kann.

Betrachten Sie das Szenario, das in der vorstehenden Abbildung dargestellt ist, wobei A und B Prozesse auf einem anderen Computer sind als C. Prozess A-Aufrufe B und B-Aufrufe C. Client A legt die Identitätswechselebene fest. B legt die Mantelfunktion fest. Wenn A eine Identitätswechselebene festlegt, die den Identitätswechsel zulässt, kann B beim Aufrufen von C im Auftrag von A den Identitätswechsel A imitieren. Die Identität, die für die Verarbeitung von C angezeigt wird, ist entweder die Identität von A oder B, je nachdem, ob die Mantelung von B aktiviert wurde. Wenn das Verschließen aktiviert ist, ist die identität, die für den Prozess C angezeigt wird, der von A. Wenn das Verschließen nicht aktiviert ist, wird die Identität von B C angezeigt.

Weitere Informationen finden Sie in den folgenden Themen: