Export (0) Print
Expand All

AuthenticablePrincipal.FindByLogonTime Method (PrincipalContext, DateTime, MatchType)

Returns a collection of authentication principal objects that have an account logon recorded in the specified date and time range.

Namespace:  System.DirectoryServices.AccountManagement
Assembly:  System.DirectoryServices.AccountManagement (in System.DirectoryServices.AccountManagement.dll)

public static PrincipalSearchResult<AuthenticablePrincipal> FindByLogonTime(
	PrincipalContext context,
	DateTime time,
	MatchType type
)

Parameters

context
Type: System.DirectoryServices.AccountManagement.PrincipalContext
The PrincipalContext that specifies the server or domain against which operations are performed.
time
Type: System.DateTime
A DateTime object that identifies the date and time of the logon record. This parameter is used with the type parameter to determine the range of time in which the returned objects have an account logon recorded.
type
Type: System.DirectoryServices.AccountManagement.MatchType
A MatchType enumeration value that specifies the type of match that is applied to the time parameter.

Return Value

Type: System.DirectoryServices.AccountManagement.PrincipalSearchResult<AuthenticablePrincipal>
A [T:System.DirectoryServices.AccountManagement.PrincipalSearchResult'1] that contains one or more AuthenticablePrincipal objects.

The time will default to UTC. If you want to specify the time in local time, then specify the Kind property of the time object as Local().

The following code connects to the ADAM instance hosted by the server "adamHost1.fabrikam.com" on port number "5000." The username (adamAdmin), and password (SecretPwd123) are specified in the PrincipalContext constructor.

A search is performed for all authenticable principals under the container "DC=adamApp1,DC=fabrikam,DC=com" that have not logged on to this ADAM instance for the last 45 days. The principals returned by the search are then deleted.

PrincipalContext ctx = new PrincipalContext(
                                      ContextType.ApplicationDirectory, 
                                      "adamHost1.fabrikam.com:5000", 
                                      "DC=adamApp1,DC=fabrikam,DC=com", 
                                      "adamAdmin", "SecretPwd123");
        
PrincipalSearchResult<AuthenticablePrincipal> oldPrincipals = 
                     AuthenticablePrincipal.FindByLogonTime(ctx, 
                            (DateTime.Now - new TimeSpan(45, 0, 0, 0)), 
                            MatchType.LessThan);

foreach (Principal p in oldPrincipals)
{
    p.Delete();
}

oldPrincipals.Dispose();
ctx.Dispose(); 

.NET Framework

Supported in: 4, 3.5

.NET Framework Client Profile

Supported in: 4

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

ADD
Show:
© 2014 Microsoft