Làm việc với Active Directory
Lập trình Active Directory – Phần 1
Để phát triển chương trình trong Active Directory ta dùng các lớp trong
namespace System.DirectoryServices phải tham chiếu assembly
System.DirectoryServices .với các lớp này ta thtruy vấn các đối tượng
,xem cập nhật c thuộc tính, tìm các đối tượng và di chuyn các đối
tượng đến một chổ chứa đối tượng khác.
ta sẽ học các phần sau :
- Các lớp trong namespace System.DirectoryServices
- Tiến trình kết nối đến Active Directory -
- Lấy các mục trong thư mục, tạo đối ợng mi và cập nhật các mục tồn
tại
- Tìm kiếm trong Active Directory
Các lớp trong System.DirectoryServices
- DirectoryEntry : lớp này lớp chính trong namespace
System.DirectoryServices .1 đối tượng của lớp này trình bày 1 đối tượng
trong Active Directory lưu trữ.ta dùng lớp này để liên kết đến 1 đối tượng,và
để xem và cập nhật thuộc tính. các thuộc tính của đối tượng được trình y
trong PropertyCollection. mỗi mục trong PropertyCollection 1
PropertyValueCollection
- DirectoryEntries : DirectoryEntries 1 tp hợp các đối tượng
DirectoryEntry.thuộc tính Children của đối tượng DirectoryEntry trả về 1
danh sách các đối tượng trong tập DirectoryEntries
DirectorySearcher : lớp này lớp cnh dùng trong việc tìm kếm các đối
tượng với thuộc tính đặc trưng. lớp SortOption và kiểu lit kê
SearchScope,SortDirection ReferalChasingOption th được dùng để
định nghĩa việc tìm kiếm.kết quả tìm kiếm trong 1 SearchResult hoặc
SearchResultCollection. ta cũng các đối tượng ResultPropertyCollection
và ResultPropertyValueCollection.
Binding ( sliên kết )
Để lấy giá trcủa 1 đối tượng trong Active Directory , ta phải kết nối đến
Active Directory. tiến trình kết nối gọi là binding.đưòng dn của binding có
thể là :
LDAP://dc01.globalknowledge.net/OU=Marketing, DC=GlobalKnowledge,
DC=Com
với tiến trình biding ta có thể đặc tả các mục sau:
- Protocol đặc tả provider được dùng
- Server Name ( tên server ) của domain controller
- Port number ( số cổng) của tiến trình server
- Distinguished Name ( n phân biệt ) của đối tượng,để xác định đối
tượng ta muốn truy xuất
- Username Password nếu người dùng nếu một tài khoản khác với
tài khon đang chạy cần truy xuất Active Directory
- Kiu Authentication thể được đặc tả nếu cần mã hoá
Chi tiết các tuỳ chọn này là :
Protocol ( giao thức)
Phn đầu tiên đặc tả provider ADSI.provider thực thi như 1 COM server ,
việc định danh 1 progID thể được tìm trong Registry trong
HKEY_CLASSES_ROT .c provider trong Window 2000 là:
LDAP : LDAP server, như thư mục Exchange và Window 2000 Active
Directory server
GC: GC được dùng để truy xuất global catalog trong Active Directory.
được dùng cho các truy vn nhanh
IIS: vi provider ADSI cho IIS ta thể tạo các website mi và qun trị
trong IIS catalog
WinNT : để truy xuất cơ sdữ liu người dùng trong c domain Window
NT 4 cũ ta thể dùng provider ADSI trong WinNT .cũng thể dùng giao
thức này để kết nối với domain Window 2000 nhưng ta cũng bgiới hạn đối
với các thuộc tính mà có giá trị với NT4
NDS : ProID này được dùng để giao tiếp với các dịch vụ Novell Directory
NWCOMPAT : vi NWCOMPAT ta có thể truy xuất các thư mục Novell cũ
như là Novell Netware 3.x
Server Name
Server name tuchọn nếu ta đăng nhập vào 1 domain Active Directory .
không server name Window 2000 s tìm domain controller 'tốt nhất '
trong domain kết hợp vi người dùng để kết nối , nếu không có server
trong site , domain controller đầu tiên tìm thấy sẽ được dùng .
dụ 1 binding không có server :LDAP://OU=Sales, DC=GlobalKnowledge,
DC=Com.
Port number ( số cổng )
Sau server name là port number . cú pháp : xxx. scổng mặc định cho
server LDAP cng 389: LDAP://dc01.globalknowledge.net:389. server
Exchange dùng cùng sport như server LDAP . nếu server Exchange được
cài đặt trên cùng h thống - d như 1 domain controller của Active
Directory - có thể cấu hình số cng khác .
Distinguished name (tên phân biệt, DN )