DefaultAuthenticationEventArgs(HttpContext) Oluşturucu
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
DefaultAuthenticationEventArgs sınıfının yeni bir örneğini başlatır.
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)
Parametreler
- context
- HttpContext
Olayın bağlamı.
Ö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çerli HttpContextGenericPrincipal özelliğini nesnesinin özelliğini nesnenin GenericPrincipal özelliğinin "default" özellik değerine sahip bir nesne olduğu Identity bir GenericIdentityName nesneye ayarlarUser.
Not
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ı FormsAuthentication kullanıyorsanız ve bölümünü kullanıp authorization
belirterek <deny users="?" />
yalnızca kimliği doğrulanmış kullanıcıların sitenize erişimi olmasını sağlıyorsanız, bu örnekteki öğenin yoksayılmasını sağlarsınız deny
çünkü kullanıcının adı "varsayılan" olur. Bunun yerine yalnızca kimliği doğrulanmış kullanıcıların sitenize 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
DefaultAuthenticationModule nesnesi, geçerli HttpContext kullanarak bir DefaultAuthenticationEventArgs nesnesi oluşturur ve DefaultAuthentication_OnAuthenticate olayına geçirir.
geçerli HttpContext özelliğini DefaultAuthenticationEventArgs özel IPrincipal bir nesne olarak ayarlamak User için DefaultAuthentication_OnAuthenticate olayına sağlanan nesnenin özelliğini kullanabilirsinizContext. özelliği tarafından Context başvuruda bulunan özelliği HttpContext için User bir değer belirtmezseniz, DefaultAuthenticationModule özelliği HttpContext 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 authorization
alınacağını unutmayın.