Aracılığıyla paylaş


DefaultAuthenticationEventHandler Temsilci

Tanım

bir öğesinin DefaultAuthentication_OnAuthenticate olayını DefaultAuthenticationModuleişleyen yöntemi temsil eder.

public delegate void DefaultAuthenticationEventHandler(System::Object ^ sender, DefaultAuthenticationEventArgs ^ e);
public delegate void DefaultAuthenticationEventHandler(object sender, DefaultAuthenticationEventArgs e);
type DefaultAuthenticationEventHandler = delegate of obj * DefaultAuthenticationEventArgs -> unit
Public Delegate Sub DefaultAuthenticationEventHandler(sender As Object, e As DefaultAuthenticationEventArgs)

Parametreler

sender
Object

Olayın kaynağı.

Örnekler

Aşağıdaki kod örneği, geçerli HttpContextnullözelliğinin olup olmadığını User test etmek için DefaultAuthentication_OnAuthenticate olayını kullanır. özelliği isenull, örnek geçerlinin HttpContext özelliğini bir GenericPrincipal nesneye ayarlar User ve burada Identity nesnenin GenericPrincipal değeri "default" olur GenericIdentityName.

Uyarı

DefaultAuthentication_OnAuthenticate olayı, olaydan önce AuthorizeRequest oluşturulur. Sonuç olarak, geçerli HttpContext özelliğini özel bir kimliğe ayarlarsanızUser, uygulamanızın davranışını etkileyebilir. Örneğin, sınıfını kullanıyorsanız FormsAuthentication ve bölümünü kullanarak authorization ve belirterek <deny users="?" />yalnızca kimliği doğrulanmış kullanıcıların sitenize erişimi olduğundan emin oluyorsanız, kullanıcının adı "varsayılan" olduğundan bu örnek öğenin yoksayılmasını sağlar deny . Bunun yerine, sitenize yalnızca kimliği doğrulanmış kullanıcıların erişebildiğinden emin olmak için belirtmeniz gerekir <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

Açıklamalar

Temsilci DefaultAuthenticationEventHandler , sınıfın Authenticate olayı DefaultAuthenticationModule için tanımlanır. ASP.NET uygulamanızın DefaultAuthenticationModule Global.asax dosyasında DefaultAuthentication_OnAuthenticate adlı bir alt yordam belirterek sınıfının olayına erişebilirsinizAuthenticate. Olay Authenticate olaydan AuthenticateRequest sonra oluşturulur ve geçerli HttpContext özelliğinin bir IPrincipal nesneyle doldurulmasını sağlamak User için kullanılır.

DefaultAuthentication_OnAuthenticate olayına sağlanan nesnenin özelliğini DefaultAuthenticationEventArgs kullanarak Context geçerlinin HttpContext özelliğini özel IPrincipal bir nesne olarak ayarlayabilirsinizUser. DefaultAuthentication_OnAuthenticate olayı sırasında sağlanan özelliği HttpContext için User bir değer belirtmezseniz, DefaultAuthenticationModule öğesinin HttpContext özelliğini kullanıcı bilgisi içermeyen bir GenericPrincipal nesneye ayarlarUser.

DefaultAuthentication_OnAuthenticate olayı olaydan AuthenticateRequest sonra ve olaydan önce AuthorizeRequest oluşturulur. Uygulamanıza erişimi reddetmek veya erişime izin vermek için kullanıcı adına bağlı bir authorization bölümünüz varsa, geçerli HttpContext özelliğin değiştirilmesi User uygulamanızın davranışını etkileyebilir. DefaultAuthentication_OnAuthenticate olayı sırasında ayarladığınız kullanıcı adının, yapılandırmanızda bölümü belirtirken dikkate alındığından authorization emin olun.

Uzantı Metotları

Name Description
GetMethodInfo(Delegate)

Belirtilen temsilci tarafından temsil edilen yöntemi temsil eden bir nesnesi alır.

Şunlara uygulanır