SecurityContext SecurityContext SecurityContext SecurityContext Class

Definition

Stellt den Sicherheitskontext für eine Meldung in einer Warteschlange dar.Represents the security context for a message in a queue.

public ref class SecurityContext sealed : IDisposable
public sealed class SecurityContext : IDisposable
type SecurityContext = class
    interface IDisposable
Public NotInheritable Class SecurityContext
Implements IDisposable
Vererbung
SecurityContextSecurityContextSecurityContextSecurityContext
Implementiert

Hinweise

Der Sicherheitskontext enthält zwischengespeicherte Sicherheits-Informationen wie z. B. ein internes Zertifikat, den entsprechenden privaten Schlüssel, die SID des Benutzers, erforderlich, um ein Zertifikat und die Absender-ID an eine Nachricht angefügt werden, wenn Authentifizierung anfordert.The security context contains cached security information such as an internal certificate, the corresponding private key, the user's SID, needed to attach a certificate and the sender identifier to a message when requesting authentication.

Wenn ein Client, z. B. eine ASP.NET-Anwendung nimmt die Identität eines Benutzers zum Senden einer Nachricht an eine Warteschlange, wird die Identität des Benutzers verwendet, auf die Warteschlange zuzugreifen.If a client, such as an ASP.NET application, impersonates a user to send a message to a queue, the identity of the user is used to access the queue. Wenn die Warteschlange remote ist, werden diese Anmeldeinformationen zwischengespeichert und für die anschließend an die Warteschlange gesendeten Meldungen verwendet.If the queue is remote, these credentials are cached and used for messages that are subsequently sent to the queue. Aus diesem Grund werden die SID in nachfolgenden Nachrichten die zwischengespeicherte Identität des Benutzers, der eine Nachricht an die Warteschlange gesendet.Therefore, the SID in subsequent messages will be the cached identity of the first user that sent a message to the queue. Die zwischengespeicherte Identität des Benutzers, der eine Nachricht an die Warteschlange gesendet werden, wird für nachfolgende Benutzer verwendet werden.The cached identity of the first user that sent a message to the queue will be used for subsequent users.

Um dieses Problem zu umgehen, legen Sie den Sicherheitskontext mit SecurityContext vor dem Senden einer Nachricht an eine Remotewarteschlange an, um sicherzustellen, dass die Anmeldeinformationen des aktuellen Benutzers für den Zugriff auf die Warteschlange verwendet werden.To overcome this problem, set the security context using SecurityContext before sending a message to a remote queue to ensure that the current user's credentials are used to gain access to the queue. Allerdings ist die empfohlene Methode zum:However, the suggested best practice is to:

  1. Stellen Sie der Warteschlange authentifizierte Warteschlange.Make the queue an authenticated queue.

  2. Führen Sie die ASP.NET-Anwendung als eine Domänenidentität aus, und autorisieren Sie diese Anwendung zum Schreiben in die Warteschlange.Run the ASP.NET application as a domain identity and authorize that application to write to the queue.

  3. Führen Sie nicht die Identität des Benutzers beim Verwenden der Warteschlange.Do not impersonate the user when using the queue. Rufen Sie stattdessen die Identität des Aufrufers, und führen Sie die autorisierungsüberprüfung in der ASP.NET-Anwendung oder schließen Sie die Identität des Aufrufers als Teil der Nachricht und führen Sie die autorisierungsüberprüfung in der empfängeranwendung.Instead, get the caller's identity and either perform authorization checking in the ASP.NET application or include the caller's identity as part of the message and perform authorization checking in the receiver application.

Methoden

Dispose() Dispose() Dispose() Dispose()

Gibt alle vom SecurityContext verwendeten Ressourcen frei.Releases all resources used by the SecurityContext.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Gilt für: