0

PowerShell を使用して、Office フィールドからの情報でアカウントの有効期限が切れているユーザーに関する AD 情報を取得する方法を教えてください。

この名前のように、オフィス、期限切れ

そして、サーバーにログインしているユーザーアカウントから送信する方法。

ところで:QADuserはオプションではありません。

4

3 に答える 3

2

これを試して:

foreach ($user in (gwmi -namespace "root/directory/ldap" -class "ds_user"))
{
    write " `
        $user.DS_name, `
        $user.DS_physicalDeliveryOfficeName,
        (w32tm /ntte $user.DS_accountExpires) `
        " `
    | Out-File ".\userlist.txt" -Append -Encoding ASCII;
}
于 2012-11-25T23:24:25.503 に答える
0

ADSIを使用するだけで、このようにすることができます(スナップインなしでPowerShell 1で動作します)

Clear-Host
$dn = New-Object System.DirectoryServices.DirectoryEntry ("LDAP://WM2008R2ENT:389/dc=dom,dc=fr","jpb@dom.fr","PWD")

$dsLookFor = new-object System.DirectoryServices.DirectorySearcher($dn)
$dsLookFor.Filter = "(sAMAccountName=jblanc)"; 
$dsLookFor.SearchScope = "subtree"; 
$n = $dsLookFor.PropertiesToLoad.Add("cn"); 
$n = $dsLookFor.PropertiesToLoad.Add("distinguishedame");
$n = $dsLookFor.PropertiesToLoad.Add("samaccountname");
$n = $dsLookFor.PropertiesToLoad.Add("name");
$n = $dsLookFor.PropertiesToLoad.Add("accountexpires");
$n = $dsLookFor.PropertiesToLoad.Add("department");

$lstUsr = $dsLookFor.findall()
foreach ($usrTmp in $lstUsr) 
{
  Write-Host $usrTmp.Properties["samaccountname"]
  Write-Host $usrTmp.Properties["name"]
  #Write-Host $usrTmp.Properties["accountexpires"].value
  Write-Host $([datetime]::FromFileTime($($usrTmp.Properties["accountexpires"])))
  Write-Host $usrTmp.Properties["department"]
}
于 2012-11-23T13:34:37.123 に答える
0
Import-Module ActiveDirectory 
Search-ADAccount -AccountExpiring -TimeSpan "365" -UsersOnly | Get-ADUser -Prop  
   Description,samAccountName,AccountExpirationDate | Select-Object  
   Name,samAccountName,Description,AccountExpirationDate | Sort-Object AccountExpirationDate |
   Format-Table -property * -AutoSize | Out-file "FilePath\name.txt" -Width 500  
于 2013-01-22T13:58:51.610 に答える