Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

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)
static member FindByLogonTime : 
        context:PrincipalContext * 
        time:DateTime * 
        type:MatchType -> PrincipalSearchResult<AuthenticablePrincipal> 

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.5.1, 4.5, 4, 3.5

.NET Framework Client Profile

Supported in: 4

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.