Làm cách nào để tìm tài khoản Active Directory mới đã được tạo trong 90 ngày qua?


13

Làm cách nào để tìm tài khoản Active Directory mới được tạo trong 90 ngày qua?

Có ai biết ai làm việc này không? Tôi không thể tìm ra nó.

Cảm ơn trước.

Câu trả lời:


17

Đối với hậu thế, DSquery được thiết kế cho loại tìm kiếm này. AD không giữ trường 'khi được tạo', giúp bạn dễ dàng tìm kiếm bằng công cụ bạn chọn.

DSquery * -filter "(khi được tạo> = 20101022083730.0Z)"

Làm ví dụ Bạn có thể lập trình tạo dấu thời gian dựa trên bây giờ - 90 ngày.


8
+1 có thể muốn sử dụng "(&(objectClass=user)(whenCreated>=20101022083730.0Z))"để lọc ra các máy tính và các đối tượng khác.
jscott

Điều này là cực kỳ chậm đối với một thư mục hoạt động với số lượng tài khoản khổng lồ. Nó dường như làm một tuyến tính đi qua dữ liệu.
Nicholas DiP Square

8

Hãy thử các cách sau để kéo người dùng được tạo trong 30 ngày qua.

Get-ADUser -Filter * -Properties whenCreated | Where-Object {$_.whenCreated -ge ((Get-Date).AddDays(-30)).Date}

4
Mặc dù câu trả lời này về mặt kỹ thuật hoạt động, nó không hiệu quả lắm, đặc biệt là trong môi trường AD lớn với hàng ngàn người dùng. Về cơ bản, bạn đang truy vấn AD cho tất cả người dùng và sau đó trong bộ nhớ trên máy cục bộ của bạn lọc ra những người đáp ứng tiêu chí "ở đâu". Thay vào đó, bạn thực sự nên sử dụng đối số Bộ lọc (hoặc LDAPFilter) để lọc kết quả trước khi chúng quay lại máy của bạn và tránh hoàn toàn đường ống Where.
Ryan Bolger

5

Một thay thế cho phiên bản Powershell được hiển thị ở trên, hiệu quả hơn nhiều vì nó không tải tất cả người dùng vào bộ nhớ trước khi lọc chúng (bạn nên thực hiện bộ lọc trên lệnh ghép ngắn Get-ADUser và không sử dụng Where-Object):

$now = ((Get-Date).AddDays(-90)).Date
Get-ADUser -Filter {whenCreated -ge $now}

3

Sử dụng PowerShell và Quest ActiveRoles Tools cho AD (tìm thấy tại đây - http://www.quest.com/powershell/activeroles-server.aspx ),

Get-QADUser -CreatedAfter (Get-Date).AddDays(-90)

sẽ cung cấp cho bạn đầu ra cho bảng điều khiển hoặc bất cứ nơi nào bạn chuyển hướng của tất cả người dùng được tạo trong 90 ngày qua.


0

Đây là một ví dụ từ một trang web khác của một người nào đó đang truy xuất tất cả các tài khoản AD được sắp xếp theo ngày tạo:

http://www.experts-exchange.com/Security/Operating_Systems_Security/Windows/Q_21117191.html

Bạn có thể lấy ngày tạo cho mỗi tài khoản từ Active Directory. Mỗi đối tượng AD có thuộc tính KhiCreated và KhiChanged. Bạn có thể kết xuất các thuộc tính này vào một tệp phẳng bằng tiện ích LDIFDE hoặc bạn có thể kết xuất chúng vào một tệp được phân cách bằng dấu phẩy bằng CSVDE (cả hai tiện ích đều đi kèm với Windows 2000).

Đây là cú pháp để kết xuất hai thuộc tính cho các đối tượng người dùng trong OU có tên là Phoenix trong miền có tên Company.com để điều khiển để xem (toàn bộ mục nhập nên được nhập dưới dạng một dòng):

ldifde -d ou = phoenix, dc = company, dc = com -l đã được tạo ra, khi được trao đổi -p onelevel -r "(ObjectC Category = user)" -f con

Nếu bạn muốn lưu kết xuất vào một tệp, hãy thay đổi chuyển -f từ con sang tên tệp.

Dấu thời gian đăng nhập cuối cùng sử dụng định dạng này: YYYYMMDDHHMMSS, với giờ được hiển thị trong Giờ phối hợp chung. Một dấu thời gian 20040115182937.0Z tương ứng với ngày 15 tháng 1 năm 2004 18:29:37 UCT.

USRSTAT chậm và báo cáo bạn nhận được phải được hợp nhất với kết xuất LDIFDE. Vì vậy, tôi kết hợp một tập lệnh tìm kiếm các đối tượng người dùng ở mỗi bộ điều khiển miền, sau đó liệt kê thời gian đăng nhập cục bộ và thời gian tạo. Dấu thời gian đăng nhập người dùng yêu cầu chuyển đổi từ một số nguyên dài. Tôi đã mượn mã chuyển đổi đến từ Richard L. Mueller (www.rlmueller.net/Programs). Kịch bản đầy đủ của Richard cũng lấy múi giờ địa phương từ Cơ quan đăng ký và chuyển đổi thời gian từ UCT sang giờ địa phương. Tiện lợi


0

Trên thực tế tất cả những câu trả lời này sẽ không hoạt động cho một môi trường AD sản xuất lớn.

Câu trả lời là sử dụng DirSync: https://support.microsoft.com/en-us/help/891995/how-to-poll-for-object-attribution-changes-in-active-directory-on-window

Đây là một triển khai java của việc này: https://docs.ldap.com/ldap-sdk/docs/javadoc/com/unboundid/ldap/sdk/experimental/ActiveDirectoryDirSyncControl.html

Về cơ bản, bạn liên tục yêu cầu AD thay đổi dựa trên mã thông báo gia tăng.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.