DefaultAuthenticationEventArgs(HttpContext) DefaultAuthenticationEventArgs(HttpContext) DefaultAuthenticationEventArgs(HttpContext) DefaultAuthenticationEventArgs(HttpContext) Constructor

Определение

Инициализирует новый экземпляр класса DefaultAuthenticationEventArgs.Initializes a new instance of the DefaultAuthenticationEventArgs class.

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 HttpContext HttpContext HttpContext

Контекст события.The context for the event.

Примеры

В следующем примере кода событие DefaultAuthentication_OnAuthenticate используется для проверки того, является User nullли свойство текущего HttpContext свойства.The following code example uses the DefaultAuthentication_OnAuthenticate event to test whether the User property of the current HttpContext is null. Если свойство nullимеет значение, то в примере User устанавливается свойство Current GenericPrincipal HttpContext для GenericPrincipal объекта, Identity GenericIdentity где свойство объекта является объектом с Name значение свойства "default".If the property is null, the example sets the User property of the current HttpContext to a GenericPrincipal object where the Identity property of the GenericPrincipal object is a GenericIdentity object with a Name property value of "default".

Примечание

Событие DefaultAuthentication_OnAuthenticate возникает перед AuthorizeRequest событием.The DefaultAuthentication_OnAuthenticate event is raised before the AuthorizeRequest event. В результате, если для User свойства Current HttpContext задать пользовательское удостоверение, оно может повлиять на поведение приложения.As a result, if you set the User property of the current HttpContext to a custom identity, it can affect the behavior of your application. Например, если вы используете FormsAuthentication класс и гарантируете, что только пользователи, прошедшие проверку подлинности, имеют доступ к сайту, используя раздел и указав <deny users="?" />, то элемент в этом примере будет игнорироваться, так как у пользователя будет имя. значение по умолчанию.For example, if you are using the FormsAuthentication class and you are ensuring that only authenticated users have access to your site, by using the section and specifying <deny users="?" />, you will cause the element in this example to be ignored, as the user will have a name, which is "default". Вместо этого следует указать <deny users="default" /> , чтобы только пользователи, прошедшие проверку подлинности, могли получить доступ к сайту.Instead you would specify <deny users="default" /> to ensure that only authenticated users can access your site.

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

Комментарии

Объект конструирует DefaultAuthenticationEventArgs объект с помощью текущего HttpContext объекта и передает его в событие DefaultAuthentication_OnAuthenticate. **** DefaultAuthenticationModuleThe DefaultAuthenticationModule object constructs a DefaultAuthenticationEventArgs object using the current HttpContext and passes it to the DefaultAuthentication_OnAuthenticate event.

Context IPrincipal Свойство User HttpContext **** объекта, передаваемое в событие DefaultAuthentication_OnAuthenticate, можно использовать для задания свойства Current для пользовательского объекта. DefaultAuthenticationEventArgsYou can use the Context property of the DefaultAuthenticationEventArgs object supplied to the DefaultAuthentication_OnAuthenticate event to set the User property of the current HttpContext to a custom IPrincipal object. Если не User указать значение для свойства HttpContext объекта, на который ссылается HttpContext DefaultAuthenticationModule Context свойство, User свойство присваивает свойству GenericPrincipal объект, который не содержит пользователя. об.If you do not specify a value for the User property of the HttpContext referenced by the Context property, the DefaultAuthenticationModule sets the User property of the HttpContext to a GenericPrincipal object that contains no user information.

Событие DefaultAuthentication_OnAuthenticate возникает после AuthenticateRequest AuthorizeRequest события и перед событием.The DefaultAuthentication_OnAuthenticate event is raised after the AuthenticateRequest event and before the AuthorizeRequest event. Если у вас есть раздел, который зависит от имени пользователя, чтобы запретить или разрешить доступ к приложению, изменение User свойства текущего HttpContext может повлиять на поведение приложения.If you have an section that depends on the user name to deny or allow access to your application, modifying the User property of the current HttpContext can affect the behavior of your application. Убедитесь, что имя пользователя, заданное во время события DefaultAuthentication_OnAuthenticate , учитывается при указании раздела в конфигурации.Be sure that the user name you set during the DefaultAuthentication_OnAuthenticate event is considered when you specify the section in your configuration.

Применяется к

Дополнительно