SecurityContext 클래스

정의

큐의 메시지에 대한 보안 컨텍스트를 나타냅니다.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
상속
SecurityContext
구현

설명

보안 컨텍스트 내부 인증서를 해당 프라이빗 키가 사용자의 SID 인증을 요청할 때 메시지를 보낸 사람 식별자 및 인증서를 연결하는 데 필요한 같은 캐시된 보안 정보를 포함 합니다.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.

ASP.NET 애플리케이션 등의 클라이언트가 메시지를 큐에 보낼 사용자를 가장 하는 경우 사용자의 id는 큐에 액세스 하려면 사용 됩니다.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. 큐가 원격 인 경우 이러한 자격 증명 캐시를 업데이트 하 고 이후에 큐에 전송 되는 메시지에 사용 됩니다.If the queue is remote, these credentials are cached and used for messages that are subsequently sent to the queue. 따라서 후속 메시지에서 SID를 큐에 메시지를 전송 하는 첫 번째 사용자의 캐시 된 id가 됩니다.Therefore, the SID in subsequent messages will be the cached identity of the first user that sent a message to the queue. 큐에 메시지를 전송 하는 첫 번째 사용자의 캐시 된 id 후속 사용자가 사용 됩니다.The cached identity of the first user that sent a message to the queue will be used for subsequent users.

이 문제를 해결 하려면 사용 하 여 보안 컨텍스트를 설정할 SecurityContext 현재 사용자의 자격 증명은 큐에 대 한 액세스를 얻는 데는 되도록 원격 큐에 메시지를 보내기 전에 합니다.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. 그러나 제안 된 것이 좋습니다에:However, the suggested best practice is to:

  1. 큐는 인증 된 큐를 확인 합니다.Make the queue an authenticated queue.

  2. 도메인 id로 ASP.NET 애플리케이션을 실행 하 고 해당 애플리케이션 큐에 쓸 권한을 부여 합니다.Run the ASP.NET application as a domain identity and authorize that application to write to the queue.

  3. 큐를 사용 하는 경우에 사용자를 가장 하지 않습니다.Do not impersonate the user when using the queue. 대신, 호출자의 id를 가져와 ASP.NET 애플리케이션에서 권한을 확인 하거나 또는 메시지의 일부로 호출자의 id를 포함 하 고 받는 사람 애플리케이션에서 권한을 확인 합니다.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.

메서드

Dispose()

SecurityContext에서 사용하는 모든 리소스를 해제합니다.Releases all resources used by the SecurityContext.

Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
Finalize()
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

적용 대상