//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//------------------------------------------------------------------------------
/*
* WindowsAuthenticationEventArgs class
*
* Copyright (c) 1999 Microsoft Corporation
*/
namespace System.Web.Security {
using System.Security.Principal;
using System.Security.Permissions;
///
/// The Windows authentication module raises this event. This
/// is the event argument passed to the WindowsAuthentication_OnAuthenticate event.
/// Contains a WindowsIdentity object and the IPrincipal object used for the context.
///
public sealed class WindowsAuthenticationEventArgs : EventArgs {
private IPrincipal _User;
private HttpContext _Context;
private WindowsIdentity _Identity;
///
/// IPrincipal object to be associated with the request.
///
/// The user object should be attached
/// to the context.
/// If User is non null
/// and Context.User is null, the WindowsAuthenticationModule will initialize
/// Context.User with WindowsAuthenticationEventArgs.User.
///
public IPrincipal User {
get { return _User;}
[SecurityPermission(SecurityAction.Demand, ControlPrincipal=true)]
set {
_User = value;
}
}
///
/// The HttpContext intrinsic (provides access to
/// Request, Response, and User objects).
///
public HttpContext Context { get { return _Context;}}
///
/// An authenticated Windows identity.
///
public WindowsIdentity Identity { get { return _Identity;}}
///
/// Initializes a newly created instance of the
/// WindowsAuthenticationEventArgs Class.
///
public WindowsAuthenticationEventArgs(WindowsIdentity identity, HttpContext context) {
_Identity = identity;
_Context = context;
}
}
}