SecurityContext Clase

Definición

Representa el contexto de seguridad para un mensaje en una cola.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
Herencia
SecurityContext
Implementaciones

Comentarios

El contexto de seguridad contiene información de seguridad almacenada en caché, como un certificado interno, la clave privada correspondiente, el SID del usuario, que se necesita para adjuntar un certificado y el identificador del remitente a un mensaje al solicitar la autenticación.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.

Si un cliente, como una aplicación de ASP.NET, suplanta a un usuario para enviar un mensaje a una cola, se usa la identidad del usuario para obtener acceso a la cola.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. Si la cola es remota, estas credenciales se almacenan en caché y se usan para los mensajes que se envían posteriormente a la cola.If the queue is remote, these credentials are cached and used for messages that are subsequently sent to the queue. Por lo tanto, el SID de los mensajes posteriores será la identidad almacenada en caché del primer usuario que envió un mensaje a la cola.Therefore, the SID in subsequent messages will be the cached identity of the first user that sent a message to the queue. La identidad almacenada en caché del primer usuario que envió un mensaje a la cola se usará para los usuarios posteriores.The cached identity of the first user that sent a message to the queue will be used for subsequent users.

Para solucionar este problema, establezca el contexto de seguridad mediante SecurityContext antes de enviar un mensaje a una cola remota para asegurarse de que las credenciales del usuario actual se utilizan para obtener acceso a la cola.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. Sin embargo, el procedimiento recomendado es:However, the suggested best practice is to:

  1. Convertir la cola en una cola autenticada.Make the queue an authenticated queue.

  2. Ejecute la aplicación ASP.NET como una identidad de dominio y autorice a esa aplicación a escribir en la cola.Run the ASP.NET application as a domain identity and authorize that application to write to the queue.

  3. No suplantar al usuario al utilizar la cola.Do not impersonate the user when using the queue. En su lugar, obtenga la identidad del autor de la llamada y realice la comprobación de autorización en la aplicación ASP.NET o incluya la identidad del autor de la llamada como parte del mensaje y realice la comprobación de autorización en la aplicación receptora.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.

Métodos

Dispose()

Libera todos los recursos que usa SecurityContext.Releases all resources used by the SecurityContext.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
Finalize()

Libera los recursos utilizados por SecurityContext.Releases the resources that are being used by SecurityContext.

GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Se aplica a