Làm việc với Active Directory - Lập trình Active Directory – Phần 2
Số trang: 11
Loại file: pdf
Dung lượng: 110.32 KB
Lượt xem: 10
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Username Nếu 1 người dùng khác với người dùng đương thời muốn truy xuất vào thư mục , một sự uỷ nhiệm người dùng phải được đặc tả trong tiến trình liên kết.với Active Directory ta có 1 số cách để thiết lập username. Downlevel Logon Với downlevel logon username có thể được đặc tả với tên domain window 2000 : domainusername Distinguished Name (Tên phân biệt )
Nội dung trích xuất từ tài liệu:
Làm việc với Active Directory - Lập trình Active Directory – Phần 2 Làm việc với Active Directory Lập trình Active Directory – Phần 2UsernameNếu 1 người dùng khác với người dùng đương thời muốn truy xuất vào thưmục , một sự uỷ nhiệm người dùng phải được đặc tả trong tiến trình liênkết.với Active Directory ta có 1 số cách để thiết lập username.Downlevel LogonVới downlevel logon username có thể được đặc tả với tên domain window2000 :domainusernameDistinguished Name (Tên phân biệt )Người dùng có thể được đặc tả bởi tên phân biệt của đối tượng ngườidùng,ví dụ :CN=Administrator, CN=Users, DC=eichkogelstrasse, DC=localUser Principal Name ( UPN)UPN của 1 đối tượng được định nghĩa với thuộc tính userPrincipalName.nhàquản trị hệ thống đặc tả cái này với thông tin đăng nhập trong Accounttabcủa thuộc tính User với những người dùng Active Directory và công cụ máytính. lưu ý rằng đây không phải là địa chỉ email của người dùng.Thông tin này cũng xác định duy nhất người dùng , và có thể được dùng đểđăng nhập :Nagel@eichkogelstrasse.localLiên kiết với lớp DirectoryEntryLớp System.DirectoryServices.DirectoryEntry có thể được dùng để đặc tấtcả thông tin liên kết. ta có thể dùng hàm dựng mặc định và định nghĩa thôngtin liên kết với thuộc tính Path, Username ,Password và AuthenticationType,hoặc truyền tất cả thông tin trong hàm dựng :DirectoryEntry de = new DirectoryEntry();de.Path = LDAP://celticrain/DC=eichkogelstrasse, DC=local;de.Username = nagel@eichkogelstrasse.local;de.Password = someSecret;// dùng sự uỷ nhiệm người dùng đương thờiDirectoryEntry de2 = new DirectoryEntry(LDAP://DC=eichkogelstrasse, DC=local);Thậm chí nếu đối tượng DirectoryEntry xây dựng thành công chưa chắc việcliên kết đã thành công . liên kết sẽ xảy ra lần đầu khi 1 thuộc tính đ ược đọcđể tránh việc lưu thông trên mạng không cần thiết.vào lần truy xuất đầu tiêncủa đối tượng, nó có thể được thấy nếu đối tượng tồn tại,và nếu sự uỷ nhiệmngười dùng được đặc tả đúngLấy các mục thư mụcTrong phần này ta sẽ biết cách đặc tả các thuộc tính liên kết đến 1 đối tượngtrong Active Directory, ta hãy đọc các thuộc tính của 1 đối tượngCác thuộc tính của các đối tượng người dùngLớp DirectoryEntry có 1 vài thuộc tính để lấy thông tin về đối tượng:cácthuộc tính Name ,Guid,và SchemaClassName .lần đầu ta truy xuất vào 1thuộc tính của đối tượng DirectoryEntry ,liên kết xuất hiện và cache của đốitượng ADSI bên dưới được điền .khi ta truy xuất các thuộc tính khác , ta chỉđang đọc chúng từ cache ,do đó giao tiếp với server không cần thiết cho dữliệu từ cùng đối tượng.Trong ví dụ ta đang truy xuất đối tượng User với tên chung Christian Nageltrong đơn vị có tổ chức Wrox Press:using (DirectoryEntry de = new DirectoryEntry()){de.Path = LDAP://celticrain/CN=Christian Nagel, +OU=Wrox Press, DC=eichkogelstrasse, DC=local;Console.WriteLine(Name: + de.Name);Console.WriteLine(GUID: + de.Guid);Console.WriteLine(Type: + de.SchemaClassName);Console.WriteLine();//...}Đối tượng Active Directory giữ nhiều thông tin hơn, với thông tin có giá trịtuỳ thuộc vào kiểu của đối tượng, thuộc tính Propertier trả về 1PropertyCollection .mỗi thuộc tính tự nó là 1 tập, bởi vì 1 thuộc tính đơn cóthể có nhiều giá trị, ví dụ , đối tượng user có thể có nhiều số điệnthoại.Trong ví dụ ta dùng vòng lặp foreach để quét qua các giá trị.tập màđược trả về từ properties [name] là 1 đối tượng mảng . thuộc tính giá trị cóthể là strings,numbers,hoặc các kiểu khác. ta sẽ dùng phương thứcToString() để trình bày các giá trị:Console.WriteLine(Properties: ); PropertyCollection properties = de.Properties; foreach (string name in properties.PropertyNames) { foreach (object o in properties[name]) { Console.WriteLine(name + : + o.ToString()); } }Trong kết quả ta thấy tất cả các thuộc tính của đối tượng user ChristianNagel. ta thấy otherTelephone là 1 thuộc tính nhiều giá trị mà có nhiều sốđiện thoại. vài giá trị thuộc tính chỉ trình bày kiểu của đốitượng,System.__ComObject, ví dụ lastLogoff,LastLogon, vànTSecurityDescriptor. để lấy giá trị của những thuộc tính này ta phải dùnginterface Active DirectorySICOM trực tiếp từ các lớp trong namespaceSystem.DirectoryServicesTruy xuất 1 thuộc tính trực tiếp từ tên của nóVới DirectoryEntry.Properties ta có thể truy xuất tất cả các thuộc tính. nếubiết tên thuộc tính ta có thể truy xuất giá trị 1 cách trực tiếp :foreach (string homePage in de.Properties[wWWHomePage])Console.WriteLine(Home page: + homePage);Object collectionsCác đối tượng chứa (container) chứa các đối tượng con .ta có thể lấy các đốitượng con này thông qua thuộc tính Children của lớp DirectoryEntry. và tacó thể lấy đối tượng chứa (container) của 1 đối tượng bằng thuộc tí ...
Nội dung trích xuất từ tài liệu:
Làm việc với Active Directory - Lập trình Active Directory – Phần 2 Làm việc với Active Directory Lập trình Active Directory – Phần 2UsernameNếu 1 người dùng khác với người dùng đương thời muốn truy xuất vào thưmục , một sự uỷ nhiệm người dùng phải được đặc tả trong tiến trình liênkết.với Active Directory ta có 1 số cách để thiết lập username.Downlevel LogonVới downlevel logon username có thể được đặc tả với tên domain window2000 :domainusernameDistinguished Name (Tên phân biệt )Người dùng có thể được đặc tả bởi tên phân biệt của đối tượng ngườidùng,ví dụ :CN=Administrator, CN=Users, DC=eichkogelstrasse, DC=localUser Principal Name ( UPN)UPN của 1 đối tượng được định nghĩa với thuộc tính userPrincipalName.nhàquản trị hệ thống đặc tả cái này với thông tin đăng nhập trong Accounttabcủa thuộc tính User với những người dùng Active Directory và công cụ máytính. lưu ý rằng đây không phải là địa chỉ email của người dùng.Thông tin này cũng xác định duy nhất người dùng , và có thể được dùng đểđăng nhập :Nagel@eichkogelstrasse.localLiên kiết với lớp DirectoryEntryLớp System.DirectoryServices.DirectoryEntry có thể được dùng để đặc tấtcả thông tin liên kết. ta có thể dùng hàm dựng mặc định và định nghĩa thôngtin liên kết với thuộc tính Path, Username ,Password và AuthenticationType,hoặc truyền tất cả thông tin trong hàm dựng :DirectoryEntry de = new DirectoryEntry();de.Path = LDAP://celticrain/DC=eichkogelstrasse, DC=local;de.Username = nagel@eichkogelstrasse.local;de.Password = someSecret;// dùng sự uỷ nhiệm người dùng đương thờiDirectoryEntry de2 = new DirectoryEntry(LDAP://DC=eichkogelstrasse, DC=local);Thậm chí nếu đối tượng DirectoryEntry xây dựng thành công chưa chắc việcliên kết đã thành công . liên kết sẽ xảy ra lần đầu khi 1 thuộc tính đ ược đọcđể tránh việc lưu thông trên mạng không cần thiết.vào lần truy xuất đầu tiêncủa đối tượng, nó có thể được thấy nếu đối tượng tồn tại,và nếu sự uỷ nhiệmngười dùng được đặc tả đúngLấy các mục thư mụcTrong phần này ta sẽ biết cách đặc tả các thuộc tính liên kết đến 1 đối tượngtrong Active Directory, ta hãy đọc các thuộc tính của 1 đối tượngCác thuộc tính của các đối tượng người dùngLớp DirectoryEntry có 1 vài thuộc tính để lấy thông tin về đối tượng:cácthuộc tính Name ,Guid,và SchemaClassName .lần đầu ta truy xuất vào 1thuộc tính của đối tượng DirectoryEntry ,liên kết xuất hiện và cache của đốitượng ADSI bên dưới được điền .khi ta truy xuất các thuộc tính khác , ta chỉđang đọc chúng từ cache ,do đó giao tiếp với server không cần thiết cho dữliệu từ cùng đối tượng.Trong ví dụ ta đang truy xuất đối tượng User với tên chung Christian Nageltrong đơn vị có tổ chức Wrox Press:using (DirectoryEntry de = new DirectoryEntry()){de.Path = LDAP://celticrain/CN=Christian Nagel, +OU=Wrox Press, DC=eichkogelstrasse, DC=local;Console.WriteLine(Name: + de.Name);Console.WriteLine(GUID: + de.Guid);Console.WriteLine(Type: + de.SchemaClassName);Console.WriteLine();//...}Đối tượng Active Directory giữ nhiều thông tin hơn, với thông tin có giá trịtuỳ thuộc vào kiểu của đối tượng, thuộc tính Propertier trả về 1PropertyCollection .mỗi thuộc tính tự nó là 1 tập, bởi vì 1 thuộc tính đơn cóthể có nhiều giá trị, ví dụ , đối tượng user có thể có nhiều số điệnthoại.Trong ví dụ ta dùng vòng lặp foreach để quét qua các giá trị.tập màđược trả về từ properties [name] là 1 đối tượng mảng . thuộc tính giá trị cóthể là strings,numbers,hoặc các kiểu khác. ta sẽ dùng phương thứcToString() để trình bày các giá trị:Console.WriteLine(Properties: ); PropertyCollection properties = de.Properties; foreach (string name in properties.PropertyNames) { foreach (object o in properties[name]) { Console.WriteLine(name + : + o.ToString()); } }Trong kết quả ta thấy tất cả các thuộc tính của đối tượng user ChristianNagel. ta thấy otherTelephone là 1 thuộc tính nhiều giá trị mà có nhiều sốđiện thoại. vài giá trị thuộc tính chỉ trình bày kiểu của đốitượng,System.__ComObject, ví dụ lastLogoff,LastLogon, vànTSecurityDescriptor. để lấy giá trị của những thuộc tính này ta phải dùnginterface Active DirectorySICOM trực tiếp từ các lớp trong namespaceSystem.DirectoryServicesTruy xuất 1 thuộc tính trực tiếp từ tên của nóVới DirectoryEntry.Properties ta có thể truy xuất tất cả các thuộc tính. nếubiết tên thuộc tính ta có thể truy xuất giá trị 1 cách trực tiếp :foreach (string homePage in de.Properties[wWWHomePage])Console.WriteLine(Home page: + homePage);Object collectionsCác đối tượng chứa (container) chứa các đối tượng con .ta có thể lấy các đốitượng con này thông qua thuộc tính Children của lớp DirectoryEntry. và tacó thể lấy đối tượng chứa (container) của 1 đối tượng bằng thuộc tí ...
Tìm kiếm theo từ khóa liên quan:
lập trình tài liệu lập trình kỹ thuật lập trình giáo trình C ngôn ngữ lập trình C tự học lập trình với CGợi ý tài liệu liên quan:
-
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 247 0 0 -
101 trang 198 1 0
-
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 188 0 0 -
Giới thiệu môn học Ngôn ngữ lập trình C++
5 trang 181 0 0 -
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 trang 147 0 0 -
Luận văn: Nghiên cứu kỹ thuật giấu tin trong ảnh Gif
33 trang 147 0 0 -
Tìm hiểu về ngôn ngữ lập trình C: Phần 1 - Quách Tuấn Ngọc
211 trang 146 0 0 -
161 trang 129 1 0
-
Bài giảng lập trình c căn bản - Trường Apptech - Chương 4
27 trang 117 0 0 -
Giáo trình Lập trình C căn bản - HanoiAptech Computer Education Center
136 trang 117 0 0