Làm việc với Active Directory

Kiến trúc Active Directory

Các đặc trưng của Active Directory có thể được nhóm theo các phần sau: - Dữ liệu trong Active Directory được nhóm theo bậc (hierarchically). các đối tượng có thể được lưu trữ trong các đối tượng chứa khác.thay vì có 1 danh sách người sử dụng lớn độc lập, những người sử dụng có thể được nhóm vào trong một thể thống nhất.1 thể thống nhất có thể chứa thể thồng nhất khác, vì vậy ta có thể xây dựng 1 cây. - Active Directory sử dụng 1 multi-master replication .trong các domain window NT4 domain controler chính, PDC, là chủ.Trong window 2000 với Active Directory mỗi domain controller,DC,là chủ.nếu PDC trong winnt 4 domain bị rớt, không người sử dụng nào có thể thay đổi

Active Directory Service Interface.người quản trị chỉ có thể cập nhật người sử dụng khi PDC được khôi phục và chạy.giao diện lập trình của Microsoft cho dịch vụ thư mục là ADSI. việc cập nhật có thể ứng dụng trên bất kì DC nào.dịch vụ Window 2000 Kerberos cũng có thể được dùng để xác nhận các Client của Unix.trái với LDAP API.Active Directory hổ trợ các tiêu chuẩn mở.LDAP.cách dữ liệu đưọc sao chép được tinh chỉnh bởi người quản trị domain. .điều này tất nhiên không phải là 1 chuẩn mở.LDAP API có thể đuợc dùng để truy nhập Active Directory bằng ngôn ngữ C.khuyết điểm của mô hình này là việc sao chép phức tạp hơn. .1 chuẩn khác mà được dùng trong Active Directory là Kerberos.mô hình này linh hoạt hơn.LDAP là 1 chuẩn internet mà có thể được sử dụng để truy nhập nhiều dịch vụ thư mục khác nhau. ADSI có khả năng truy nhập tất cả đặc tính của Active Directory. là một trong những tiêu chuẩn mà có thể được dùng để truy nhập dữ liệu trong Active Directory.password. để hổ trợ việc sao chép trên các đường truyền chậm trong WANs. .Replication topology thì linh hoạt.mà được dùng cho việc xác nhận. Ligthweigth Directory Access Protocol.với Active Directory . vì việc cập nhật có thể xảy ra trên những server khác nhau.

địa chỉ email.. ví dụ thuộc tính của ngưòi sử dụng có thể là tên. các đối tượng có những thuộc tính bắt buộc hay tuỳ chọn mà mô tả chúng. 1 chia sẽ mạng.mỗi đối tượng lưu trữ trong Active Directory có thể có 1 danh sách điều khiển truy nhập được kết hợp mà định nghĩa ai có thể làm gì với đối tượng đó..các thuộc tính có thể là bắt buộc hay tuỳ chọn Khái niệm Active Directory Trước khi lập trình Active Directory.mỗi đối tượng tham chiếu đến thứ gì đó như là người sử dụng.không thuộc tính nào mà không được chỉ định có thể được thêm vào đối tượng. các kiểu đối tượng giống như là 1 phần của đối tượng được định nghĩa.nghĩa là kiểu trong 1 đối tượng được định nghĩa 1 cách chính xác.số điện thọai.. trong Schema. ta cần bắt đầu với 1 số thuật ngữ và định nghĩa cơ bản Đối tượng Ta lưu trữ các đối tượng trong Active Directory.Với Active Directory ta có thể có 1 sự bảo mật tốt ( fine-grained security ). máy in. Các đối tượng trong thư mục có kiểu. .

chi tiết thuộc tính nào là bắt buộc hoặc tuỳ chọn mà đối tượng có.người quản trị Win 2000 không có đủ quyền để tạo ra 1 . schema định nghĩa các kiểu và tự nó lưu trữ trong các đối tượng trong Active attributeSchema.Hình sau 1 đối tượng chứa gọi là Wrox Press mà chứa vài đối tượng khác nhau : 2 đối tượng sử dụng. các kiểu của đối tượng được định nghĩa trong classSchema. 1 đối tượng hợp đồng .và cú pháp được cho phép trong 1 thuộc tính chỉ định là gì. và thêm chúng đến schema.và 1 đố tượng nhóm người sử dụng: Schema Mỗi đối tượng là 1 thể hiện của 1 lớp mà được định nghĩa trong Schema.attributeSchema định nghĩa 1 thuộc tính trông như thế nào.có thể đánh dấu nó không hoạt động để các đối tượng tồn tại của kiểu đó không thể bỏ các lớp hay thuộc tính mà được định nghĩa trong schema. Ta có thể định nghĩa các thuộc tính và các kiểu tuỳ chọn. 1 đối tượng máy in. tuy nhiên cần biết rằng 1 kiểu schema mới có thể không bao giờ được bỏ từ Active Directory.

vì thế ta có thể truy nhập thông tin cấu hình giống như là truy nhập tất cả các đối tượng khác trong Active Directory. các đối tượng được lưu trữ theo 1 cấu trúc có thứ tự.trong Active Directory domain . Cấu hình Bên cạnh việc định nghĩa các đối tượng và các lớp mà được lưu như là đối tượng.mỗi hình oval trong hình chỉ 1 đối tượng.books có thể lưu các đối tượng khác. cấu hình của Active Directory được lưu trong chính Active Directory.cấu hình của Active Directory lưu thông tin về tất cả các site.với các dòng kẻ giữa các đối tượng trình bày mối quan hệ cha con. Active Directory domain 1 domain là 1 ranh giới bảo mật của 1 mạng windows. ví dụ .các đối tưọng chứa như là users.mà cần phải có 1 người quản trị domain Win 2000 làm việc này.books . đưọc thiết lập bởi người quản trị hệ thống.mà 1 domain được trình bày bởi 1 hình tam giác. cấu hình được lưu trong Active Directory .mục schema mới . như là khoảng thời gian giữa các lần sao chép.cấu trúc thứ tự của các đối tượng trong domain trình bày trong hình bên dưới.Active Directory đưọc tạo thành từ 1 hay nhiều domain. computers.

nếu ta có nhiều vị trí trong xí nghiệp.NET và Java. Pro C# . và tất cả DC đểu bình đẳng như nhau.NET là con c ủa đối tưọng . ta có mô hình multi-master. mỗi các lưu tất cả các đối tượng trong domain . các đối tượng được sao chép giữa các server bên trong domain Site 1 site là 1 vị trí trong mạng mà giữ ít nhất 1 DC.vì lí do sao lưu hay khả năng co giãn mà mỗi site có thể . ta có thể dùng nhiều site trong 1 domain đơn.không có cái nào làm chủ. mà được kết nối trên đường truyền chậm.là cha của .NET Domain controller 1 domain đơn lẻ có thể có nhiều domain controller.Beg C# và ASP.

com và uk. 1 schema chung và 1 cấu hình chung nghĩa là 1 dữ liệu được sao chép khắp các domain.các đối tượng không được sao chép trên toàn domain Các domain được kết nối theo dạng cây domain.Việc sao chép được chỉnh để xuất hiện vào khoảng thời gian lớn hơn giữa các server ở bên kia site .có 1 hay nhiều DC đang chạy.com. giữa các domain . các domain trong cây domain có không gian tên theo câu trúc và liên hệ với nhau.wrox. những domain này chia sẻ 1 schema chung . Domain tree Nhiều domain có thể đưọc kết nối bởi mối quan hệ đáng tin cậy. Việc sao chép giữa các server trong 1 site có thể xảy ra trong các khoảng thời gian ngắn hơn nếu kết nối nhanh hơn. tất nhiên người quản trị có thể chỉnh điều này. Ví dụ . Cây domain chia sẻ cùng lớp và thuộc tính schema.thì giao thức Kerberos được thiết lập. mà là cha của india. tuỳ thuộc vào tốc độ mạng. nghĩa là tên domain của domain con là tên của domain con kết thêm với tên domain cha.com .wrox. ta có domain gốc wrox. 1 cấu hình chung và 1 global catalog .

đưọc gọi là rừng. bắt đầu với wrox.com và india. nhưng nó có thể có sự quản lý chung.wrox.com.dùng GC.com.và có thể cho người sử dụng từ asptoday. sau đó đến uk.wrox. Để tìm kiếm nhanh hơn.com . Global catalog ( GC ) Việc tìm kiếm 1 đối tượng có thể phải dàn trải ra ở nhiều domain.ta có thể có nhiều hơn 1 GC server trong 1 domain.GC.việc tìm kiếm 1 đối tượng có thể tìm tất cả các đối tượng chỉ trên 1 server đơn. nếu đường truyền chậm ta phải tìm kiếm trong 1 khoảng thời gian khá lâu.1 rừng là 1 tập cây domain.nếu ta tìm 1 đối tượng người dùng với 1 vài thuộc tính ta phải tìm trên mỗi domain.GC được sao chép vào mỗi domain trong 1 rừng. 1 rừng được dùng nếu công ty có 1 công ty con nằm ở 1 tên domain khác nên được sử dụng. ta nói asptoday.com độc lập với domain wrox.com.Forest Nhiều cây domain nối với nhau dùng chung schema. vì lí do hiệu suất .com truy nhập vào các tài nguyên từ domain wrox. tất cả các đối tượng được sao chép vào global catalog. chung cấu hình.có ít nhất là 1 server trong mỗi domain giữ 1 GC. .và 1 global catalog không có không gian tên gắn kết nhau.

các domain controller phải được cập nhật.bởi vì ta sẽ không bao giờ tìm 1 bức ảnh.mà chỉ có thể sử dụng trong tìm kiếm. .ta cũng có thể định nghĩa 1 thuộc tính được lập chỉ mục để truy vấn nhanh hơn. quyết định này tuỳ thuộc vào việc nó có hay được dùng thường xuyên trong tìm kiếm hay không. xuyên suốt các site đưọc thiết lập là 180 phút. mặc định là mỗi 5 phút bên trong 1 site nếu vài thuộc tính thay đổi.Replication latency định nghĩa khoảng thời gian 1 lần cập nhật được thi hành. Không phải tất cả các thuộc tính đều được lưu trong GC. ta có thể định nghĩa có hay không 1 thuộc tính được lưu với 1 đối tượng. việc cập nhật có thể và sẽ xảy ra đối với mọi domain controller trong domain. số điện thọai thì hữu ích hơn.GC là 1 vùng cache chỉ đọc của tất cả các đối tượng .thời gian thông báo thay đổi.vì thế DC thứ tư có thể nhận thông báo thay đổi sau 7 phút. Replecation ( sự sao chép) Active Directory dùng kiến trúc multi-master server.DC nơi 1 thay đổi xuất hiện thông báo đến 1 server sau các server khác trong mỗi 30 giây. 1 hình ảnh của người sử dụng không hữu ích trong 1 GC. . mặc định.Thông báo thay đổi khả năng cấu hình xảy ra.

Trong 1 sao chép chỉ có những thay đổi được sao chép đến DC.và lần cuối cùng việc sao chép xuất hiện là với 1 USN có giá trị 47. Vào khoảng thơì gian thông báo.điều này được sử dụng để giúp cho việc giải quyết xung đột nếu cập nhật xảy ra đối với cùng 1 thuộc tính trên những server khác nhau.trong khi các DC khác vẫn giữ số 47.thông báo xảy ra bởi vì USN của thuộc tính thay đổi. . Bây giờ nếu 1 người quản trị khác thay đổi thuộc tính số điện thọai và ở đây 1 DC khác đưọc chọn bởi vì người quản trị nhận 1 đáp ứng nhanh hơn từ server DC2.với mỗi thay đổi của 1 thuộc tính .điều này đảm bảo không 1 thông báo thay đổi nào bị bỏ sót.Nếu không có thay đổi. USN của thuộc tính này trên server DC2 cũng thay đổi thành 48. sao chép xuất hiện mỗi 60 phút bên trong 1 site. 1 bản số ( USN. số USN mới của thuộc tính này trên server DC1 là 48. giá trị cũ có thể được đọc cho đến khi việc sao chép đến tất cả các domain controller xảy ra. nếu ai đó vẫn đang đọc thuộc tính này.. Ví dụ : số điện thọai của John Doe có số USN 47.cập nhật số liên tếp) và tem thời gian được ghi lại.1 người quản trị hệ thống thay đổi số điện thoại. việc thay đổi xuất hiện trên server DC1. giá trị này được sao chép đến tất cả các DC.

Dữ liệu nên được sử dụng dạng read-mostly.Dữ liệu nên là global đối với enterprise. Đặc tính của dữ liệu trong Active Directory Active Directory không thay thế 1cơ sở dữ liệu quan hệ hay Registry nhưng loại dữ liệu nào ta sẽ lưu trong đó ? . . .cơ chế sao chép thăm dò thấy server DC1 và DC2 đều có USN của thuộc tính này là 48.ta không thể chắc rằng ta sẽ đọc dữ liệu được cập nhật chưa.Ta có dữ liệu có cấu trúc (hierarchical data ) trong Active Directory. ta có thể có các đối tượng chứa mà lưu những đối tượng chứa khác và cũng là các đối tượng.nhưng sẽ có 1 server thắng. điều này bởi vì việc thêm 1 kiểu dữ liệu mới đến schema sẽ sao chép đến tất cả các server trong enterprise. đối với các kiểu dữ liệu mà chỉ được quan tâm bởi 1 số nhỏ người . bởi việc sao chép xuất hiện vào các khảng thời gian cố định. trong ứng dụng ta phải nhận ra rằng thông tin ta đọc có thể không phải là thông tin mới nhất.bởi vì thay đổi xảy ra sau trên DC2 nên giá trị được lưu trong domain controller DC2 sẽ được sao chép. server nào thắng không quan trọng.để giải quyết xung đột này tem thời gian được dùng.

tuy nhiên nếu dữ liệu thay đổi hàng giờ.1 lớp là tập hợp các thuộc tính . nếu dữ liệu là 100k.với các lớp . Trong lớp gốc top ta có thể thấy mỗi đối tượng có thể có chung thuộc tính tên ( cn ). thuộc tính bắt buộc hay tuỳ chọn.organizationalPerson là lớp con của person . thì kích thước này là quá lớn.dùng .như ta thấy trong biểu đồ lớp sau . lớp user dẫn xuất từ lớp organizationalPerson.displayname.trong schema phân biệt giữa đối tượng lớp schema và thuộc tính Schema. objectGUID. phải luôn nghĩ đến việc sao chép trên nhiều server khác nhau.nếu có dữ liệu lớn thì có thể chỉ lưu liên kết của nó vào Active Directory.và lớp cơ sở là top.Dữ liệu đưọc lưu trữ phải có kích thước hợp lí bởi vấn đề sao chép. . và cú pháp và ràng buộc trên các thuộc tính. kế thừa đơn được hổ trợ. whenChanged. lớp . lớp schema mà định nghĩa 1 lớp mô tả các thuộc tính với thuộc tính systemMayContain. và whenCreated.sẽ tốt nếu nó được lưu trong Active Directory và chỉ thay đổi 1 lần 1 tuần . Schema Schema định nghĩa các kiểu của các đối tượng. và chứa dữ liệu đó trong nơi khác. người quản trị domain enterprise sẽ không thường xuyên cài đặt các kiểu schema mới.

1 đối tượng person cũng có 1 userPassword và 1 telephonenumber. thêm vào đó thuộc tính của person có manager.department và company. OrganizationalPerson dẫn xuất từ person. .person dẫn xuất từ top. 1 user có các thuộc tính thêm cần để đăng nhập vào hệ thống.