다음을 통해 공유


DefaultAuthenticationEventArgs(HttpContext) 생성자

정의

DefaultAuthenticationEventArgs 클래스의 새 인스턴스를 초기화합니다.

public:
 DefaultAuthenticationEventArgs(System::Web::HttpContext ^ context);
public DefaultAuthenticationEventArgs(System.Web.HttpContext context);
new System.Web.Security.DefaultAuthenticationEventArgs : System.Web.HttpContext -> System.Web.Security.DefaultAuthenticationEventArgs
Public Sub New (context As HttpContext)

매개 변수

context
HttpContext

이벤트의 컨텍스트입니다.

예제

다음 코드 예제에서는 DefaultAuthentication_OnAuthenticate 이벤트를 사용하여 현재 HttpContext 속성이 있는지 여부를 User 테스트합니다null. 속성이null면 현재 속성을 GenericPrincipalHttpContext 개체로 설정합니다User. 여기서 Identity 개체의 GenericPrincipal 속성은 속성 값이 "default"인 개체 Name 입니다GenericIdentity.

메모

DefaultAuthentication_OnAuthenticate 이벤트는 이벤트 전에 발생합니다AuthorizeRequest. 따라서 현재 HttpContext 속성을 사용자 지정 ID로 설정 User 하면 애플리케이션의 동작에 영향을 줄 수 있습니다. 예를 들어 클래스를 FormsAuthentication 사용 중이고 인증된 사용자만 사이트에 액세스할 수 있도록 하는 경우 섹션을 사용하고 authorization 지정하면 <deny users="?" />deny 사용자가 이름이 "기본값"이므로 이 예제의 요소가 무시됩니다. 대신 인증된 사용자만 사이트에 액세스할 수 있도록 지정 <deny users="default" /> 합니다.

public void DefaultAuthentication_OnAuthenticate(object sender,
                                                 DefaultAuthenticationEventArgs args)
{
  if (args.Context.User == null)
    args.Context.User = 
      new System.Security.Principal.GenericPrincipal(
        new System.Security.Principal.GenericIdentity("default"),
        new String[0]);
}
Public Sub DefaultAuthentication_OnAuthenticate(sender As Object, _
                                                args As DefaultAuthenticationEventArgs)
  If args.Context.User Is Nothing Then
    args.Context.User = _
      new System.Security.Principal.GenericPrincipal( _
        new System.Security.Principal.GenericIdentity("default"), _
        new String(0) {})
  End If
End Sub

설명

개체는 DefaultAuthenticationModule 현재 HttpContext 개체를 DefaultAuthenticationEventArgs 사용하여 개체를 생성하고 DefaultAuthentication_OnAuthenticate 이벤트에 전달합니다.

DefaultAuthentication_OnAuthenticate 이벤트에 제공된 개체의 DefaultAuthenticationEventArgs 속성을 사용하여 Context 현재 HttpContext 속성을 사용자 지정 IPrincipal 개체로 설정할 User 수 있습니다. 속성에서 참조 Context 하는 속성의 HttpContext 값을 User 지정하지 않으면 해당 속성을 HttpContextDefaultAuthenticationModule 사용자 정보가 없는 개체로 GenericPrincipal 설정합니다User.

DefaultAuthentication_OnAuthenticate 이벤트는 이벤트 후 AuthenticateRequest 및 이벤트 전에 발생합니다AuthorizeRequest. 애플리케이션에 대한 액세스를 거부하거나 허용할 사용자 이름에 따라 섹션이 있는 경우 authorization 현재 HttpContext 속성을 수정하면 User 애플리케이션의 동작에 영향을 줄 수 있습니다. 구성에서 섹션을 지정할 authorizationDefaultAuthentication_OnAuthenticate 이벤트 중에 설정한 사용자 이름을 고려해야 합니다.

적용 대상

추가 정보