none
PowerShell.МодульAD. RRS feed

  • Вопрос

  • Кто-либо сталкивался с проблемой: модуль AD, при запросе get-aduser -f * -prop lastlogontimestamp |select samaccountname,lastlogontimestamp, выводит атрибуты не для всех(большинство без значения атрибута)? ADSIedit проверял - атрибуты на месте.
    17 июня 2015 г. 12:29

Ответы

Все ответы

  • Посмотрите подобную тему:

    https://social.technet.microsoft.com/Forums/scriptcenter/en-US/d86b7495-729a-44e2-ad68-5e154ecbd6d7/getaduser-lastlogontimestamp-is-reporting-blank?forum=winserverpowershell

    1) Проверить,что в ADSIEDIT и Get-ADUSer -Server mydc.domain.ru одинаковый сервер

    2) Проверить, что нет проблем с репликацией (repadmin /showrepl , dcdiag /q)

    3) msDS-LogonTimeSyncInterval не 0


    • Изменено KazunEditor 17 июня 2015 г. 12:45
    • Помечено в качестве ответа KazunEditor 22 июня 2015 г. 10:59
    17 июня 2015 г. 12:43
    Отвечающий
  • Спасибо за отклик. Временным решением принято(вариант предложен в предоставленной ссылке):
    $adSearcher = [adsisearcher]"" $adSearcher.Filter = '(&(objectClass=user)(objectCategory=person))' $adSearcher.PageSize = 1000 $adSearcher.PropertiesToLoad.Add('LastLogon')
     $adSearcher.PropertiesToLoad.Add('SamAccountName') $( foreach ( $dc in ([System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()).DomainControllers ) { $adSearcher.SearchRoot = 'LDAP://'+$dc.name; $adSearcher.FindAll() | select @{n='SamAccountName';
     e={ $_.properties.samaccountname}}, @{n='LastLogonDC'; e= { $dc.name}}, @{n='LastLogon'; e={ $_.properties.lastlogon}} } ) | Group SamAccountName | % { ($_.Group | sort lastLogon -Descending)[0] } | select SamAccountName, LastLogon, @{n='LastLogon1'; e={ (Get-Date
     $_.LastLogon).ToLocalTime() }}, LastLogonDC

    Но, это не отменяет проблемы с командлетом AD. В чем может быть еще проблема(все три совета проверены)?
    • Изменено CrazyDocTI 22 июня 2015 г. 14:17
    22 июня 2015 г. 14:17
  • Для начала предоставить вывод по всем пунктам выше и к ним добавить(верим только данным вывода, а не словам):

    1) Версию ОС на DC

    2) FFL,DFL

    3) Вариант с ADSI,но с атрибутом $adSearcher.PropertiesToLoad.Add('lastLogonTimestamp')


    • Изменено KazunEditor 22 июня 2015 г. 14:31
    22 июня 2015 г. 14:30
    Отвечающий
  • dcdiag /q

             An Error Event occured.  EventID: 0x00000457
                Time Generated: 06/23/2015   15:43:47
                (Event String could not be retrieved)
             An Error Event occured.  EventID: 0x00000457
                Time Generated: 06/23/2015   15:43:47
                (Event String could not be retrieved)
             An Error Event occured.  EventID: 0x00000457
                Time Generated: 06/23/2015   15:43:47
                (Event String could not be retrieved)
             An Error Event occured.  EventID: 0x00000457
                Time Generated: 06/23/2015   15:43:47
                (Event String could not be retrieved)
             An Error Event occured.  EventID: 0x00000457
                Time Generated: 06/23/2015   15:43:48
                (Event String could not be retrieved)
             ......................... SRV1 failed test systemlog

    repadmin /showrepl

    Repadmin: running command /showrepl against full DC localhostDefault-First-Site-Name\SRV1DSA Options: IS_GC Site Options: (none)DSA object GUID: aa46bec6-31b6-40cb-b8e1-e3b5210775c3DSA invocationID: 4cf1ef4f-6f6f-422f-9c82-b634d3b5335a ==== INBOUND NEIGHBORS======================================DC=mydomain,DC=org,DC=ru

    Default-First-Site-Name\SRV2 via RPC

    DSA object GUID: 58d43e44-7e70-4e03-bfc6-430e03a33e53

    Last attempt @ 2015-06-23 15:39:58 was successful.CN=Configuration,DC=mydomain,DC=org,DC=ru

    Default-First-Site-Name\SRV2 via RPC

    DSA object GUID: 58d43e44-7e70-4e03-bfc6-430e03a33e53

    Last attempt @ 2015-06-23 14:53:42 was successful.CN=Schema,CN=Configuration,DC=mydomain,DC=org,DC=ru

    Default-First-Site-Name\SRV2 via RPC DSA object GUID: 58d43e44-7e70-4e03-bfc6-430e03a33e53

    Last attempt @ 2015-06-23 14:53:42 was successful.DC=DomainDnsZones,DC=mydomain,DC=org,DC=ru

    Default-First-Site-Name\SRV2 via RPC DSA object GUID: 58d43e44-7e70-4e03-bfc6-430e03a33e53

    Last attempt @ 2015-06-23 14:53:42 was successful.DC=ForestDnsZones,DC=mydomain,DC=org,DC=ru

    Default-First-Site-Name\SRV2 via RPC DSA object GUID: 58d43e44-7e70-4e03-bfc6-430e03a33e53

    Last attempt @ 2015-06-23 14:53:42 was successful.

    FFL\DFL

    ld = ldap_open("srv1", 389);
    Established connection to srv1.
    Retrieving base DSA information...
    Getting 1 entries:
    Dn: (RootDSE)
    configurationNamingContext: CN=Configuration,DC=mydomain,DC=org,DC=ru; 
    currentTime: 23.06.2015 16:17:38 ; 
    defaultNamingContext: DC=mydomain,DC=org,DC=ru; 
    dnsHostName: SRV1.mydomain.org.ru; 
    domainControllerFunctionality: 4 = ( WIN2008R2 ); 
    domainFunctionality: 2 = ( WIN2003 ); 
    dsServiceName: CN=NTDS Settings,CN=SRV1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=org,DC=ru; 
    forestFunctionality: 2 = ( WIN2003 ); 
    highestCommittedUSN: 7349730; 
    isGlobalCatalogReady: TRUE; 
    isSynchronized: TRUE; 
    ldapServiceName: mydomain.org.ru:srv1$@mydomain.org.ru; 
    namingContexts (5): DC=mydomain,DC=org,DC=ru; CN=Configuration,DC=mydomain,DC=org,DC=ru; CN=Schema,CN=Configuration,DC=mydomain,DC=org,DC=ru; DC=DomainDnsZones,DC=mydomain,DC=org,DC=ru; DC=ForestDnsZones,DC=mydomain,DC=org,DC=ru; 
    rootDomainNamingContext: DC=mydomain,DC=org,DC=ru; 
    schemaNamingContext: CN=Schema,CN=Configuration,DC=mydomain,DC=org,DC=ru; 
    serverName: CN=SRV1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=mydomain,DC=org,DC=ru; 
    subschemaSubentry: CN=Aggregate,CN=Schema,CN=Configuration,DC=mydomain,DC=org,DC=ru; 
    supportedCapabilities (5): 1.2.840.113556.1.4.800 = ( ACTIVE_DIRECTORY ); 1.2.840.113556.1.4.1670 = ( ACTIVE_DIRECTORY_V51 ); 1.2.840.113556.1.4.1791 = ( ACTIVE_DIRECTORY_LDAP_INTEG ); 1.2.840.113556.1.4.1935 = ( ACTIVE_DIRECTORY_V61 ); 1.2.840.113556.1.4.2080; 
    supportedControl (29): 1.2.840.113556.1.4.319 = ( PAGED_RESULT ); 1.2.840.113556.1.4.801 = ( SD_FLAGS ); 1.2.840.113556.1.4.473 = ( SORT ); 1.2.840.113556.1.4.528 = ( NOTIFICATION ); 1.2.840.113556.1.4.417 = ( SHOW_DELETED ); 1.2.840.113556.1.4.619 = ( LAZY_COMMIT ); 1.2.840.113556.1.4.841 = ( DIRSYNC ); 1.2.840.113556.1.4.529 = ( EXTENDED_DN ); 1.2.840.113556.1.4.805 = ( TREE_DELETE ); 1.2.840.113556.1.4.521 = ( CROSSDOM_MOVE_TARGET ); 1.2.840.113556.1.4.970 = ( GET_STATS ); 1.2.840.113556.1.4.1338 = ( VERIFY_NAME ); 1.2.840.113556.1.4.474 = ( RESP_SORT ); 1.2.840.113556.1.4.1339 = ( DOMAIN_SCOPE ); 1.2.840.113556.1.4.1340 = ( SEARCH_OPTIONS ); 1.2.840.113556.1.4.1413 = ( PERMISSIVE_MODIFY ); 2.16.840.1.113730.3.4.9 = ( VLVREQUEST ); 2.16.840.1.113730.3.4.10 = ( VLVRESPONSE ); 1.2.840.113556.1.4.1504 = ( ASQ ); 1.2.840.113556.1.4.1852 = ( QUOTA_CONTROL ); 1.2.840.113556.1.4.802 = ( RANGE_OPTION ); 1.2.840.113556.1.4.1907 = ( SHUTDOWN_NOTIFY ); 1.2.840.113556.1.4.1948 = ( RANGE_RETRIEVAL_NOERR ); 1.2.840.113556.1.4.1974 = ( FORCE_UPDATE ); 1.2.840.113556.1.4.1341 = ( RODC_DCPROMO ); 1.2.840.113556.1.4.2026 = ( DN_INPUT ); 1.2.840.113556.1.4.2064 = ( SHOW_RECYCLED ); 1.2.840.113556.1.4.2065 = ( SHOW_DEACTIVATED_LINK ); 1.2.840.113556.1.4.2066 = ( POLICY_HINTS ); 
    supportedLDAPPolicies (14): MaxPoolThreads; MaxDatagramRecv; MaxReceiveBuffer; InitRecvTimeout; MaxConnections; MaxConnIdleTime; MaxPageSize; MaxQueryDuration; MaxTempTableSize; MaxResultSetSize; MinResultSets; MaxResultSetsPerConn; MaxNotificationPerConn; MaxValRange; 
    supportedLDAPVersion (2): 3; 2; 
    supportedSASLMechanisms (4): GSSAPI; GSS-SPNEGO; EXTERNAL; DIGEST-MD5; 
    
    -----------

    $adSearcher.PropertiesToLoad.Add('lastLogonTimestamp') в результатах выборки дает пустую строку.

    Проверить,что в ADSIEDIT и Get-ADUSer -Server mydc.domain.ru - пожалуйста подскажите как сделать вывод не только результатов, но и задаваемой команды?




    • Изменено CrazyDocTI 23 июня 2015 г. 13:47
    23 июня 2015 г. 13:46
  • Вывод у команды:

    $adSearcher = [adsisearcher]"" 
    $adSearcher.Filter = '(&(objectClass=user)(objectCategory=person))' 
    $adSearcher.PageSize = 1000 
    $adSearcher.PropertiesToLoad.Add('lastLogonTimeStamp')
    $adSearcher.PropertiesToLoad.Add('SamAccountName') 
    foreach ( $dc in ([System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()).DomainControllers ) { 
    	$adSearcher.SearchRoot = 'LDAP://'+$dc.name; 
    	$adSearcher.FindAll() | Select @{n="DC";e={$dc.name}},@{n="SamAccountName";e={$_.properties.item("samaccountname")}},@{n="LastLogonTimeStamp";e={[datetime]::FromFileTime(($_.properties.item("lastlogontimestamp")[0]))}}
    }

    Проверить,что в ADSIEDIT и Get-ADUSer -Server mydc.domain.ru - пожалуйста подскажите как сделать вывод не только результатов, но и задаваемой команды? - Приведи пример, что требуется, не очень понятно.

    23 июня 2015 г. 13:59
    Отвечающий
  • Проверить,что в ADSIEDIT и Get-ADUSer -Server mydc.domain.ru - т.е. проверить что параметр -server в запросе командлета соответствует пути в ldap? Соответствует.

    Попробовал команду - собрал данные со всех контроллеров, данные различаются, причем заведомо ложны (1600г.) они только на сервере в котором исполняется запрос PS(SRV1). Видимо проблемы действительно в репликации(dcdiag???) - буду искать там. Спасибо за помощь.
    23 июня 2015 г. 14:20