Süresi dolmak üzere olan parolalara sahip kullanıcıların raporunu oluşturma ve dışa aktarma
Windows PowerShell ve ADManager Plus ile süresi dolmak üzere olan parolalara sahip kullanıcıların raporunun elde edilmesi arasındaki karşılaştırma aşağıda yer almaktadır:
VBScript
VBScript kullanarak Parola Süresi Dolmuş kullanıcıları elde etme adımları
- Raporu almak istediğiniz alanı belirleyin.
- Raporu getirmek için ihtiyacınız olan LDAP özniteliklerini belirleyin.
- Raporu getirmek için birincil DC’yi belirleyin.
- Kod dizisini derleyin ve yürütün.
- Rapor belirlenen formatta dışa aktarılacaktır.
- Raporu farklı bir formatta almak için kod dizisini kullanıcının ihtiyaçlarına göre değiştirin.
Sample VBScript :
strComputer = "."
sParentFolder = InputBox("Please Enter folder to
gather information on", "Parent Folder")
SParentFoldern=replace(sParentFolder,"\","")
SParentFoldern=replace(sParentFoldern,":","")
Set fso = CreateObject("Scripting.FileSystemObject")
'File name Same As Folder Name without
special Caracteres
fullfilename=SParentFoldern&".html"
'WScript.echo fullfilename
Set fsOut = fso.OpenTextFile
(fullfilename, ForAppending, True)
On Error Resume Next
fsOut.Writeline ("<html>"&vbCr&"<head>"&vbCr&"<title>File Permission For Folder under &"& SParentFoldern&"</title>"&vbCr&"</head>")
strTableHead = "<table border=2 bordercolor='#000010' width='90%' id='Table1'>"
fsOut.Writeline strTableHead
fsOut.Writeline "<tr><td width='50%'>Folder</td>" & _
"<td width='50%'>User Name</td>"&_
"<td width='50%'>Permission</td></tr>"
strTableFoot = "</table>"
fsOut.Close
ShowSubFolders FSO.GetFolder(sParentFolder),<br>fullfilename
OutputFolderInfo sParentFolder, fullfilename
<br>
Set fsOut = fso.OpenTextFile(fullfilename, ForAppending, True)
fsOut.Writeline strTableFoot
fsOut.Close
MsgBox "Done "
WScript.Quit
Public Sub OutputFolderInfo(FolderName , sOutfile)
Const FullAccessMask = 2032127, <br>ModifyAccessMask = 1245631, <br>WriteAccessMask = 1180095
Const ROAccessMask = 1179817
Const ForReading = 1, <br>ForWriting = 2, ForAppending = 8
strComputer = "."
'Build the path to the <br>folder because it requites 2 backslashes
folderpath = Replace(FolderName, "\", "\\")
objectpath = <br>"winmgmts:Win32_LogicalFileSecuritySetting<br>.path='" & folderpath & "'"
'Get the security set for the object
Set wmiFileSecSetting = GetObject(objectpath)
'verify that the get was successful
RetVal = wmiFileSecSetting.GetSecurityDescriptor<br>(wmiSecurityDescriptor)
If Err Then
MsgBox ("GetSecurityDescriptor failed" & <br>vbCrLf & Err.Number & vbCrLf & Err.Description)
Err.Clear
End If
Set objWMIService = GetObject("winmgmts:" & "<br>{impersonationLevel=impersonate}!\\" & _
strComputer & "\root\cimv2")
Set colFolders <br>= objWMIService.ExecQuery<br>("SELECT * FROM Win32_Directory WHERE Name ='" & _
folderpath & "'")
For Each objFolder In colFolders
' Retrieve the DACL array of Win32_ACE objects.
DACL = wmiSecurityDescriptor.DACL
Set fso = <br>CreateObject("Scripting.FileSystemObject")
Set fsOut = <br>fso.OpenTextFile(sOutfile, ForAppending, True)
For Each wmiAce In DACL
' Get Win32_Trustee object from ACE
Set Trustee = wmiAce.Trustee
fsOut.Writeline "<tr><td width='50%'>"&objFolder.Name&"</td>" & _
"<td width='50%'>"&Trustee.Domain&"\"&Trustee.Name&"</td>"
<br>
'fsOut.Write objFolder.Name & ",<br>" & Trustee.Domain & "\" & Trustee.Name & ","
FoundAccessMask = False
CustomAccessMask = Flase
While Not FoundAccessMask And<br> Not CustomAccessMask
If wmiAce.AccessMask = FullAccessMask Then
AccessType = "Full Control"
FoundAccessMask = True
End If
If wmiAce.AccessMask = ModifyAccessMask Then
AccessType = "Modify"
FoundAccessMask = True
End If
If wmiAce.AccessMask = WriteAccessMask Then
AccessType = "Read/Write Control"
FoundAccessMask = True
End If
If wmiAce.AccessMask = ROAccessMask Then
AccessType = "Read Only"
FoundAccessMask = True
Else
CustomAccessMask = True
End If
Wend
If FoundAccessMask Then
'fsOut.Writeline AccessType
fsOut.Writeline "<td width='50%'>"&AccessType&"</td></tr>"
Else
fsOut.Writeline "<td width='50%'>Custom</td></tr>"
'fsOut.Writeline "Custom"
End If
Next
Set fsOut = Nothing
Set fso = Nothing
Next
Set fsOut = Nothing
Set fso = Nothing
end Sub
Sub ShowSubFolders (Folder,fname)
On Error Resume Next
For Each Subfolder in Folder.SubFolders
Call OutputFolderInfo(Subfolder.Path,fname)
Wscript.Echo Subfolder.Path
call ShowSubFolders (Subfolder,fname)
Next
End Sub
ADManager Plus
Raporu almak için
- Parola Raporları bölümünden Süresi Dolmak Üzere Olan Parolalara Sahip Kullanıcıları seçin.
- Domain ve OU’yu seçin. Generate seçeneğine tıklayın.
- Raporu tercih edilen formatlardan birinde (CSV, PDF, HTML, CSVDE ve XLSX) dışarı aktarmak için ‘Export as’ seçeneğini seçin.
Screenshot
VBScript gibi yerel araçları kullanarak süresi dolmak üzere olan parolalara sahip kullanıcı hesaplarının raporunu almaya ilişkin sınırlamalar aşağıda verilmiştir.
- Bu kod dizisini yalnızca etki alanı içinde kullanabiliriz. Birden fazla etki alanı için kod dizisini her etki alanı için değiştirmeli ve yürütmeliyiz.
- Birden fazla hesap yapılmasını gerektirdiğinden kod dizisinin derlenmesi oldukça karmaşıktır.
- Tarih formatlarının değiştirilmesi zordur.
- Tarih sonuçlarında farklı saat dilimlerinin uygulanması zordur.
- Farklı bir döneme ait raporu almak için her seferinde "intDays" kod dizisindeki değişkenini değiştirmemiz gerekir.
ADManager Plus yukarıda gösterildiği gibi kapsamlı kod dizisine mükemmel bir geçici çözüm sunar ve Genel Kullanıcılar raporları bölümünde kullanıma hazır rapor sağlayarak parola süresi dolmak üzere olan kullanıcı hesaplarını alır.
PowerShell kod dizisi olmadan AD parolaları ile ilgili raporları planlayıp dışa aktarın.
30 günlük ücretsiz deneme sürümünü edinin.İlgili Powershell Nasıl Yapılır Kılavuzları:
-
AD Kullanıcı Yönetimi için
- Powershell kullanarak AD'de yeni kullanıcı hesapları oluşturma
- PowerShell kullanarak Active Directory kullanıcılarını CSV'den içe aktarma
- Powershell kullanarak AD'de yeni kullanıcı ekleme
- Powershell kullanarak AD kullanıcı özniteliklerini değiştirme
- PowerShell kullanarak Active Directory kullanıcı hesaplarını etkinleştirme
- PowerShell kullanarak AD hesaplarını devre dışı bırakma
- Powershell kullanarak AD'de kullanıcı hesaplarını silme
- Powershell kullanarak AD kullanıcı hesaplarını taşıma
- PowerShell kullanarak kullanıcıları Active Directory grubundan kaldırma
- Powershell kullanarak AD Hesapları için son geçerlilik tarihi belirleme
- Powershell kullanarak AD Hesap Denetimi Değerlerini Değiştirme
- Powershell kullanarak AD hesaplarının kilidini açma
- Powershell kullanarak AD Nesnelerini değiştirme
- Powershell kullanarak AD hesaplarını hiçbir zaman sona ermeyecek şekilde ayarlama
- Powershell Komut Dosyalarıyla AD kullanıcısına proxy adresi ekleme
-
AD Kullanıcı Raporlaması için
- Powershell kullanarak tüm AD kullanıcılarının raporunu alma
- Powershell kullanarak etkin/devre dışı AD kullanıcı hesaplarını alma
- Etkinleştirilmiş AD kullanıcıları raporunu Powershell kullanarak dışa aktarma
- Powershell kullanarak AD'de devre dışı bırakılan kullanıcılar raporunu alma
- PowerShell kullanarak Active Directory hesabı durum raporlarını alma
- Powershell kullanarak kilitli AD kullanıcı hesaplarını bulma
- Powershell kullanarak AD'de hesap süresi dolmuş kullanıcıları bulma
- Powershell kullanarak AD kullanıcı hesaplarının son oturum açma zamanını alma
- Powershell kullanarak birden fazla OU'dan AD kullanıcılarının listesini alma
- Powershell ile hiçbir zaman sona ermeyecek şekilde ayarlanmış AD kullanıcı hesaplarını listeleme
- Powershell kullanarak AD'de belirli kullanıcıları bulma
- Belirli bir Departmana ait AD kullanıcılarının listesini alma
- Powershell kullanarak boş özniteliklere sahip AD kullanıcılarının listesini alma
- Powershell kullanarak Belirli bir CN'ye sahip AD Kullanıcılarının listesini alma
-
GPO Yönetimi için
- Powershell kullanarak GPO oluşturma
- PowerShell kullanılarak GPO bağlantılarını oluşturma ve kaldırma
- Powershell kullanarak GPO'yu düzenleme
- Powershell kullanarak GPO raporu oluşturma
- Powershell kullanarak Bağlantısı Kaldırılış GPO'yu Görüntüleme
- Powershell kullanarak GPO Listesini alma
- Powershell kullanarak GPO Bağlantı Raporu alma
- Powershell kullanarak GPO'yu yedekleme ve geri yükleme
-
Parola Yönetimi için
- PowerShell kullanarak AD kullanıcılarının parolasını değiştirme
- PowerShell kullanarak AD kullanıcısının son parola değiştirme tarihini bulma
- Powershell kullanarak AD hesapları için parola belirleme
- PowerShell ile AD kullanıcısının bir sonraki oturum açışında parolayı değiştirme gerekliliğini ayarlama
- Powershell kullanarak AD kullanıcı parolasını hiçbir zaman sona ermeyecek şekilde ayarlama
- Powershell kullanarak parola süresi dolmuş kullanıcıların listesini alma
- Powershell kullanarak parola süresi yakında dolacak kullanıcıları alma
- Powershell kullanarak parolalarının süresi hiçbir zaman sona ermeyecek AD Kullanıcılarının Listesini alma
- Powershell kullanarak AD Kullanıcılarının Parola Süresini Sona Erme Tarihini Alma
-
AD Grup Yönetimi için
- Powershell kullanarak Active Directory grupları oluşturma
- Powershell kullanarak Active Directory gruplarına kullanıcı ekleme
- Powershell kullanarak bir grubu başka bir AD Grubunun üyesi olarak ekleme
- Powershell kullanarak AD kullanıcıları için ana grup üyeliği ekleme
- PowerShell komut dosyalarını kullanarak AD grubu özniteliklerini değiştirme
- Powershell kullanarak Active Directory gruplarını silme
- PowerShell kullanarak bir grubu AD'deki başka bir gruptan kaldırma
- Powershell kullanarak dinamik dağıtım grupları oluşturma
- Powershell'i kullanarak dağıtım grupları oluşturma
- PowerShell kullanarak dağıtım gruplarına birden fazla üye ekleme
- Powershell kullanarak belirli bir AD kullanıcısının üyelik ayrıntılarını alma
- Powershell kullanarak AD'de grup üyeliği raporu
-
Dosya Erişim Yönetimi İçin
- Active Directory'de klasör izinlerini ayarlama ve değiştirme
- Powershell kullanarak AD'de dosya ve klasör izinlerini algılama
- Powershell'i kullanarak kullanıcının dosya ve klasör erişim izinlerini dışa aktarma
- Powershell kullanarak tüm AD nesnelerinin izinlerini alma
- Powershell kullanarak klasörler ve alt klasörler için ACL'yi alma
- Powershell'i kullanarak NTFS izinlerini alma
-
AD Bilgisayar Yönetimi için
- PowerShell kullanarak AD Bilgisayar hesapları oluşturma
- PowerShell kullanarak AD Bilgisayar özniteliklerini değiştirme
- PowerShell kullanarak AD Bilgisayar hesaplarını etkinleştirme
- PowerShell kullanarak AD Bilgisayar hesaplarını devre dışı bırakma
- Powershell kullanarak AD Bilgisayar hesaplarını taşıma
- PowerShell kullanarak AD Bilgisayar hesaplarını kaldırma
- PowerShell kullanarak etkin olmayan AD Bilgisayar hesaplarını bulma
- Powershell kullanarak AD Bilgisayarının son oturum açma zamanını bulma
- Powershell Kullanarak AD Etki Alanındaki Bilgisayarları Listeleme
-
Office 365 Yönetimi için
- Office 365 Powershell Modülüne Bağlanma Kılavuzu
- PowerShell kullanarak Office 365 gruplarına kullanıcı ekleme
- PowerShell kullanarak Office 365 kullanıcılarına lisans atama
- Office 365 kullanıcı lisanslarını Powershell kullanarak değiştirme
- Powershell'i kullanarak hesabınızdaki tüm Office 365 lisanslarını görüntüleme
- Powershell kullanarak Office 365 lisansını kullanıcı hesaplarından kaldırma
- Powershell kullanarak Office 365 kullanıcıları lisans raporu
- Powershell kullanarak tüm Office 365 grup üyelerini alma
- Powershell kullanarak dinamik dağıtım grubu üyeleri raporu
- Powershell kullanarak dinamik dağıtım grupları raporu
-
Exchange Yönetimi için
- Exchange Online PowerShell'e Bağlanmak için Hızlı Kılavuz
- Powershell ile Exchange Online'da Posta Kutuları Oluşturma
- Powershell kullanarak posta kutularını Exchange Online'dan kaldırma
- PowerShell kullanarak Exchange Online dağıtım grupları listesini dışarı aktarma
- Powershell ile Exchange Server'da Posta Kutuları Oluşturma
- Powershell kullanarak kullanıcı posta kutularını Exchange Server'dan kaldırma
- PowerShell kullanarak Dağıtım Grubu Üyeleri Raporunu Dışa Aktarma
