Các dịch vụ Web dữ liệu: Xây dựng các dịch vụ Web, cách thức mới để truy cập vào máy chủ dữ liệu IBM

Tính năng dịch vụ cho phép bạn truy cập vào DB2 và Máy chủ dữ liệu Informix (Informix Dynamic Server)

Trong bài viết này, chúng ta sẽ nhận được một cái nhìn khái quát về công nghệ mới thú vị này được gọi là Dịch vụ Web dữ liệu, và sẽ đi qua một số bước của nó về các tính năng và khả năng.

Vijay Bommireddipalli, Kiến trúc sư giải pháp của nhóm Data Studio Enablement, IBM

V. Bommireddipalli photoVijay Bommireddipalli là kiến trúc sư giải pháp của nhóm Enablement Data Studio của IBM tại Phòng thí nghiệm ở Thung lũng Silicon của IBM, San Jose, California, tại đây ông phát triển công nghệ Data Studio cho khách hàng và đối tác. Trước khi gia nhập nhóm, Vijay là thành viên của đội phát triển pureXML. Ông gia nhập hãng IBM vào năm 2000, sau khi nhận bằng thạc sĩ về kỹ thuật máy tính và điện tại Trường đại học Massachusetts Dartmouth



20 05 2009

Giới thiệu

Các dịch vụ WEB đã được thiết lập như là một cơ chế chính cho các trao đổi dữ liệu, truy cập, và thao tác dữ liệu. Các tiêu chuẩn này là chín chắn, và một số các lợi ích, như phân hoạch và ảo hóa, đã đi một chặng đường dài hướng tới cách thức đạt được một kiến trúc hướng dịch vụ (SOA). Một số cuộc điều tra cho biết những khó khăn của việc triển khai thực hiện như là một trong những nguyên nhân chính của sự chậm trễ hoặc thậm chí đôi khi không thành công của các dự án SOA. Nhiều dịch vụ WEB theo định hướng dữ liệu thực hiện một điều - kích hoạt một câu lệnh đối với một cơ sở dữ liệu, hoặc gọi một thủ tục lưu trữ (stored procedure), và khi nào được nêu ra, chúng ta cần phải gói các hoạt động cơ sở dữ liệu trong một logic ứng dụng để thực hiện điều tương tự. Phát triển các ứng dụng WEB theo định hướng dữ liệu có thể là một thách thức khi mà chúng yêu cầu từ cả hai việc phát triển WEB và chuyên môn về cơ sở dữ liệu. Nhà phát triển truy cập dữ liệu mà phát triển các ứng dụng theo định hướng dữ liệu có thể nhận ra mộ thực tế là nó thường đòi hỏi gói các lệnh DML (ngôn ngữ thao tác dữ liệu) trong một số mã nguồn nhất định. Hơn thế nữa, logic của các mã được lặp đi lặp lại, như: mở kết nối, thực hiện lệnh, xử lý tập kết quả trả về, đóng kết nối, và một số thứ khác. Chúng ta mong muốn là nếu có thể thực hiện những hoạt động cơ sở dữ liệu hiện hành, và làm cho chúng hoạt động như là các dịch vụ WEB mà không cần phải làm như đã nêu ở trên. Đây là nơi dịch vụ Web dữ liệu có thể có các trợ giúp hữu ích.


Dịch vụ WEB Dữ liệu là gì?

Dịch vụ Web Dữ liệu (DWS) là giải pháp thế hệ kế tiếp để dễ dàng đóng góp vào sự phát triển, triển khai, và quản lý các truy cập dựa trên dịch vụ WEB vào cơ sở dữ liệu DB2 và máy chủ CSDL IDS. DWS cho phép chúng ta thực hiện các lệnh DML (như Lựa chọn, Chèn, Cập nhật, Xóa, và XQuery) và các lời gọi thủ tục lưu trữ, và tạo ra các dịch vụ WEB mà không cần viết một dòng mã. DWS cung cấp một giao diện dịch vụ WEB đầy đủ, bao gồm hỗ trợ cho SOAP và kết nối theo kiểu REST. Tất cả những điều này là một phần của Data Studio Developer, trong đó có nghĩa là chúng ta có thể phát triển các dịch vụ WEB và các ứng dụng cơ sở dữ liệu trong một môi trường phát triển. Các dịch vụ WEB tạo ra được đóng gói trong một khuôn dạng sẵn sàng để triển khai ứng dụng WEB, mà sau đó có thể được triển khai để hỗ trợ các máy chủ ứng dụng.

Các khía cạnh chính của DWS

  • Tạo các dịch vụ WEB bằng cách sử dụng DWS không yêu cầu phải lập trình!
    • DWS cho phép chúng ta tạo ra các dịch vụ WEB bằng cách sử dụng giao diện kéo và thả: Kéo và thả bất kỳ hành động DML hoặc lời gọi thủ tục lưu trữ vào một bộ khung chứa dịch vụ WEB để tạo ra các dịch vụ WEB sẵn sàng để triển khai.
    • DWS cũng hỗ trợ môi trường kiểm tra tích hợp cho phép chúng ta triển khai và thử nghiệm các dịch vụ đã tạo ra bằng cách sử dụng một vài lần nhấp chuột.
  • DWS hỗ trợ SOAP trên HTTP và thế hệ mới WSDL.
    • DWS tự động tạo ra tệp WSDL chứa mô tả về các dịch vụ WEB.
  • DWS hỗ trợ giao diện dịch vụ theo kiểu REST.
    • Bên cạnh hỗ trợ SOAP qua HTTP, DWS hỗ trợ HTTP kết nối GET/POST cho các dịch vụ thử nghiệm theo kiểu REST đến máy chủ cơ sở dữ liệu.
  • DWS có thể áp dụng XSLT phía máy chủ tới các yêu cầu, phản hồi dịch vụ XML đang đến và đang gửi đi.
    • DWS cho phép chúng ta áp dụng XSLT phía máy chủ để phù hợp với bất cứ yêu cầu về định dạng dịch vụ nào mà chúng ta có thể có. Điều này có một số khả năng thú vị trong thế giới Web 2.0, như bạn sẽ nhìn thấy trong phần sau.
  • Không thế hệ mã nguồn!
    • DWS bao gồm một kích hoạt siêu dữ liệu hướng điều khiển chung, và không có mã nguồn "hộp đen" là mã được tạo ra dưới các bao đóng. Kết quả này ở trong một ứng dụng có độ tin cậy cao và gọn nhẹ.

Phát triển các dịch vụ WEB Dữ liệu

Như được hiển thị trong Hình 1, Phát triển các dịch vụ WEB dữ liệu thường bao gồm các bước sau:

  1. Phát triển các lệnh SQL, thủ tục lưu giữ (stored procedure), hay câu lệnh XQuery.
  2. Tạo ra dịch vụ WEB.
  3. Kéo và thả các thao tác yêu cầu tới dịch vụ WEB này.
  4. Triển khai dịch vụ tới các máy chủ ứng dụng.
  5. Kiểm tra các dịch vụ Web bằng cách sử dụng môi trường kiểm tra tích hợp hoặc khách hàng dịch vụ Web.
Hình 1. Lược đồ tiêu biểu của sự phát triển dịch vụ Web dữ liệu
Lược đồ tiêu biểu của sự phát triển dịch vụ Web dữ liệu

Hướng dẫn từng bước

Bài viết này không phải là một hướng dẫn đầy đủ, nhưng hãy xem xét các bước được liệt kê ở trên trong bối cảnh của một ví dụ.

Cài đặt và thiết lập

Chú ý: Các bước chi tiết tại đây cung cấp cho chúng ta một ý tưởng tốt hơn về quá trình phát triển với các dịch vụ Web dữ liệu . Đây không phải là một hướng dẫn toàn diện với một mô tả đầy đủ các bước. Để thử làm theo các bước sau trên máy tính của chúng ta, cần cài đặt IBM Data Studio và môi trường kiểm tra với IBM WebSphere Application Server - Community Edition. Nó cũng đòi hỏi phải có DB2 với mẫu cơ sở dữ liệu mẫu đã cài đặt.

Kiểm tra các hướng dẫn "IBM Data Studio: Bắt đầu với các dịch vụ Web Dữ liệu" (developerWorks, tháng 11, 2007), theo từng bước hướng dẫn về các dịch vụ Web dữ liệu, và làm theo nó để có được chương trình đầu tiên của chúng ta với các dịch vụ Web dữ liệu.

Các lựa chọn tài nguyên cũng có phần liên kết để tải về miễn phí DB2 Express C, WebSphere Application Server - Community edition, và Data Studio. Kiểm tra trang chủ IBM Data Studio để tìm thêm thông tin liên quan đến Data Studio.

  1. Bắt đầu trong IBM Data Studio: Tạo mới Dự án phát triển dữ liệu mới. Đối với ví dụ này, tiêu đề của dự án là Bản trình diễn.
    Hình 2. Dữ liệu mới tạo ra một Dự án phát triển dữ liệu trong Data Studio
    Dữ liệu mới tạo ra một Dự án phát triển dữ liệu trong Data Studio
  2. Tiếp theo, tạo ra một lệnh SQL đơn giản mà trả về một bản ghi nhân viên. Bạn có thể sử dụng hoặc SQL editor/builder trong Data Studio, hoặc đơn giản chỉ sao chép-dán (copy-paste) lệnh hiện có vào chương trình biên tập. Data Studio cung cấp chương trình xây dựng truy vấn tích hợp và có thể cung cấp sự trợ giúp dựa trên bối cảnh (như được thấy trong hình 3) trong khi gõ những lệnh đó. Lưu lệnh này như là getmyEmp.sql.
    Hình 3. Tạo lệnh getmyEmp.sql
    Trợ giúp ngữ cảnh đối với SQL trong Data Studio
  3. Bây giờ làm cho lệnh SQL này sẵn sàng như là một dịch vụ Web. Để làm như vậy, nhấp chuột phải vào thư mục dịch vụ Web, chọn New Webservices, và đặt tên nó myfirstService. Dịch vụ Web này, myfirstService, chỉ là một khung chứa các hoạt động được đưa ra như các dịch vụ Web.
    Hình 4. Khung chứa các dịch vụ Web
    Khung chứa các dịch vụ Web mà sẽ nuôi dưỡng phương thức SQL
  4. Tiếp theo, kéo và thả lệnh SQL mà bạn đã tạo lệnh dịch vụ Web vừa đưa ra. Dịch vụ Web myfirstService chứa thao tác getmyEmp.sql. Trong trường hợp này, thao tác là lệnh SQL đưa vào ở trên (getmyEmp.sql); tuy nhiên, chúng ta có thể chọn để kéo nhiều hơn một "dịch vụ" (bao gồm cả các thủ tục lưu trữ) lên dịch vụ Web này.
  5. Nhấp chuột phải vào dịch vụ Web myfirstService, và chọn Build and Deploy.
    Hình 5. Xây dựng và triển khai dịch vụ Web lên WS-CE
    Xây dựng và triển khai dịch vụ Web lên WS-CE
  6. Tiếp theo, chọn máy chủ WS-CE mà chúng ta đã cài đặt trên hệ thống như là mục tiêu để triển khai dịch vụ Web của chúng ta. Theo mặc định, Dịch vụ Web dữ liệu tạo ra cả hai ràng buộc REST và SOAP. Tất nhiên, nó có thể được thay đổi để tạo ra chỉ có một ràng buộc. Với tùy chọn, chúng ta cũng có thể chọn bắt đầu Explorer Dịch vụ Web sau khi triển khai như vậy Data Studio kích hoạt bằng cách sử dụng chương trình thám hiểm các dịch vụ Web được xây dựng để kiểm tra các dịch vụ.
  7. Cuối cùng, chọn Finish.

    Các dịch vụ Web dữ liệu tạo ra ứng dụng Web và tạo ra các tập tin cấu hình được cụ thể cho các máy chủ Web mà bạn đã chọn. Ứng dụng Web sau đó sẽ triển khai đến máy chủ cục bộ WS-CE.
    Hình 6. Triển khai dịch vụ Web tới WAS-CE
    Triển khai dịch vụ Web tới WAS-CE

    Lưu ý: Chúng ta có lựa chọn thay thế để tạo một tệp ứng dụng Web (. war) để triển khai. Dịch vụ Web dữ liệu sẽ tạo ra sau đó một ứng dụng Web "sẵn sàng để triển khai" tới các máy chủ ứng dụng web bằng cách sử dụng các mặc định thông minh. Tất nhiên, tất cả những điều này có thể được tùy biến đầy đủ trước khi triển khai.
  8. Sau khi triển khai dịch vụ Web, Data Studio kích hoạt chương trình thám hiểm dịch vụ WEB, mà chúng ta có thể sử dụng để thử nghiệm cả hai REST và SOAP điểm kết thúc. Chọn SOAP bindings (kết dính), và chỉ định một giá trị cho tham số empno.

    Lưu ý: Lệnh SELECT được chỉ ra trong ví dụ này có một tham số gọi là điểm đánh dấu: empno. Giá trị này được gửi trong như là một phần của dịch vụ Web yêu cầu thông báo. Những phản ứng của dịch vụ Web được hiển thị, như được thấy trong Hình 7. Bạn có thể nhấp chuột vào liên kết mã nguồn trong Web Services Explorer để xem các mã nguồn XML.
    Hình 7. Kiểm tra dịch vụ Web bằng cách sử dụng Web Services Explorer
    Kiểm tra dịch vụ Web bằng cách sử dụng Web Services Explorer
  9. Để kiểm tra các ràng buộc REST, trong khi chúng ta có thể sử dụng Web Services Explorer để kiểm tra tương tự, hãy sử dụng một trình duyệt Web thay thế. Các trình duyệt có xây dựng hỗ trợ cho phương thức GET. Chỉ trình duyệt của chúng ta đến URL hiển thị trong Ví dụ 1 dưới đây. Máy chủ Web trả về một XML chứa các câu trả lời kết quả của lời gọi getmyEmp lệnh SQL với giá trị 000130 đối với tham số empno .
    Ví dụ 1. Sử dụng trình duyệt để kiểm tra ràng buộc REST
      http://localhost:8080/DemomyfirstService/rest/myfirstService/getmyEmp?empno=000130

Kiến trúc

Bài viết này đã nói ở trên rằng dịch vụ Web dữ liệu không đòi hỏi bất kỳ công việc lập trình nào để tạo ra các dịch vụ Web; hiện nó không tạo ra bất kỳ mã nguồn. Vì vậy, chúng ta có thể thắc mắc - cái gì là kỳ diệu ở đây, và làm thế nào các dịch vụ Web được thực hiện?

Hãy hãy xem kiến trúc của DWS để hiểu những gì đang xảy ra bên trong:

DWS hỗ trợ cả các điểm kết thúc theo kiểu SOAP và REST, như bạn đã thấy. Các yêu cầu dịch vụ Web đi đến được xử lý theo mã số đó là việc chỉ ra đến điểm kết thúc. Vì vậy, bất cứ khi nào có một yêu cầu đi đến, như REST hoặc SOAP, DWS xử lý nó để tạo ra một biểu diễn chung của yêu cầu. Yêu cầu này sau đó sẽ được xử lý bởi thực hiện định hướng siêu dữ liệu chung, điều này quyết định làm thế nào để ánh xạ thông báo dịch vụ Web với một yêu cầu cơ sở dữ liệu. Không có bước ánh xạ trung lập của các tham số và kết quả trong các thông báo dịch vụ Web đến các kiểu dữ liệu Java như thường làm trong thế hệ dịch vụ Web. Tại đây, các kiểu dữ liệu XML trong các thông báo dịch vụ Web được ánh xạ trực tiếp vào các kiểu dữ liệu của cơ sở dữ liệu. Bỏ qua ánh xạ nhiều lần của các kiểu dữ liệu từ một định dạng tới các kết quả khác trong ứng dụng hoạt động tốt hơn và hiệu quả.

Ứng dụng dịch vụ Web dữ liệu được đóng gói như là một ứng dụng Web J2EE có thể được triển khai lên các máy chủ ứng dụng hỗ trợ. Triển khai nó trong môi trường của chúng ta cũng giống như việc triển khai các ứng dụng Web khác. Chúng ta có thể tận dụng được tối đa cơ sở hạ tầng đã có tại chỗ. Tạo ra các ứng dụng thông thường bao gồm một tệp chương trình chung JAR và các tệp cấu hình. Các tệp cấu hình XML chứa các thông tin máy chủ - cụ thể ứng dụng với các thông tin khác. Một trong những tệp cấu hình chứa thông tin cụ thể cho các hoạt động dịch vụ Web mà chúng ta đã chọn. Các hoạt động rất năng động trong thời gian xác định làm thế nào để thực hiện các dịch vụ dựa trên các hoạt động DML đã được lựa chọn để được đưa ra như các dịch vụ Web. Khi thực hiện chương trình chung, kết hợp với tệp cấu hình này, tạo nên một ứng dụng gọn nhẹ có thái độ tin cậy và nhất quán khi không có hộp đen tạo mã mỗi khi bạn tạo ra các dịch vụ Web mới. Mã nguồn hướng siêu dữ liệu chung này có khả năng đa dạng, nhưng vẫn thực hiện nhẹ nhàng về thời gian vận hành.

Hình 8. Kiến trúc tổng quan về các Dịch vụ Web dữ liệu
Kiến trúc tổng quan of DWS

Tùy biến các dịch vụ Web bằng cách sử dụng XSLT

Một tính năng thú vị và hiệu quả của DWS là khả năng để áp dụng XSL phía-máy chủ (server-side) để chuyển đổi các yêu cầu dịch vụ Web và các phản hồi. Tính năng này cho phép chúng ta tùy chỉnh định dạng của các thông báo mà khách hàng nhìn thấy. Điều này đặc biệt hữu ích trong những trường hợp như các yêu cầu định dạng dịch vụ Web từ doanh nghiệp, ngành công nghiệp chỉ ra những gì các thông báo dịch vụ Web phải thể hiện.

DWS có một định dạng thông báo mặc định khi nó gửi đến yêu cầu dịch vụ Web và các thông báo phản hồi. Các định dạng thông báo và các tên thẻ XML trong các thông báo này phụ thuộc vào tên hoạt động dịch vụ Web, tập kết quả tên-cột, loại ràng buộc được sử dụng,... Trong một số trường hợp, chúng ta có thể không muốn các khách hàng để các tên thẻ mặc định, hoặc là do các yêu cầu định dạng thông báo, hoặc chỉ dấu đơn giản cho tên thẻ mặc định. Bằng cách sử dụng tính năng phía-máy chủ XSLT, các yêu cầu XML gửi đến và các kết quả có thể được xem xét khác với định dạng thông báo mặc định dữ liệu dịch vụ Web.

Nói chung, các dịch vụ Web có thể được xây dựng bằng cách sử dụng phương pháp tiếp cận hoặc từ trên xuống hoặc dưới lên. Trong phương pháp tiếp cận từ trên xuống, chúng ta nên bắt đầu với một đặc tả kỹ thuật của dịch vụ (ví dụ, một tệp WSDL) và sau đó thực hiện cài đặt các mã nguồn để phù hợp với đặc tả kỹ thuật. Trong phương pháp tiếp cận từ dưới lên, chúng ta nên bắt đầu bằng một chương trình Java hoặc lệnh SQL và đưa ra chức năng như các dịch vụ Web. Trong DWS, bắt đầu với các hoạt động DML (như các truy vấn) và đưa ra chúng như các dịch vụ Web. Vì vậy, sự phát triển chắc chắn là theo tiếp cận từ dưới lên của các dịch vụ Web. Tuy nhiên, bằng cách áp dụng XSLT vào các thông báo dịch vụ, trong nhiều trường hợp, chúng ta có thể ánh xạ định dạng dịch vụ của các thông báo kiểu dưới lên với thiết kế từ trên xuống. Điều này sẽ làm giảm bớt một số yêu cầu định dạng dịch vụ từ trên xuống, trong khi cho phép chúng ta để phát triển các dịch vụ Web từ dưới lên. Việc chuyển đổi cũng có thể được sử dụng để cung cấp dữ liệu cho máy khách trong định dạng con người có thể đọc được như HTML, XHTML, hoặc bất kỳ định dạng văn bản mà có thể là kết quả từ một chuyển đổi XSL.

Hình 9. Các định dạng tùy chỉnh - Ứng dụng XSLT
Ứng dụng XSLT tới các thông báo vào ra

SOA

Khi nói đến môi trường SOA, các cơ sở dữ liệu không chuyển đến trước suy nghĩ của rất nhiều người. Tuy nhiên, một lợi ích chính của SOA là việc tái sử dụng các thành phần hiện có. Các doanh nghiệp đã xây dựng các logic nghiệp vụ của họ trong các thủ tục lưu trữ và các truy vấn hiệu suất cao, bây giờ có khả năng để làm cho các thủ tục này ngay lập tức có sẵn trong môi trường SOA bằng cách sử dụng DWS. Tái sử dụng các thao tác DML hiện tại và các thủ tục lưu trữ đã được phát triển trong thời gian để bao đóng các logic nghiệp vụ và được biết để thực hiện tốt sẽ tiết kiệm chi phí phát sinh trong các ứng dụng phát triển mới. Ngoài ra, các dịch vụ Web ảo hóa quyền truy cập cho bất kỳ người tiêu dùng nào, mà làm dễ dàng hơn để cắm máy chủ cơ sở dữ liệu vào môi trường SOA.

Tuy nhiên, chỉ cho phép dịch vụ Web hiện không giải quyết được bất cứ điều gì và chúng ta sẽ không đi gần hơn đến một kiến trúc hướng dịch vụ. Thảo luận SOA phải bắt đầu ở cấp độ nghiệp vụ và sau đó đến các thành phần cần thiết để đạt được khi kết thúc. Các cuộc thảo luận nghiệp vụ để xác định các dịch vụ tái sử dụng, tổng hợp tại cấp độ nhiệm vụ và một thiết kế chi tiết bao gồm nhiều thành phần của việc tạo ra một SOA. Các dịch vụ Web sau đó có thể là một cách để thực hiện các dịch vụ nghiệp vụ này. Cách dễ dàng phát triển bằng cách sử dụng truy vấn tích hợp Data Studio và thủ tục lưu trữ, với khả năng cho ra những dịch vụ Web sau đó giúp chúng ta đạt được mục tiêu đó.

Phục vụ dữ liệu trong thế giới Web 2.0

Web đang trải qua một trong những chuyển đổi lớn nhất của nó từ khi khởi đầu. Ứng dụng Web sử dụng trí tuệ của con người vào các ứng dụng bằng cách sử dụng các mục như gắn thẻ, cộng tác xã hội, và các ứng dụng Internet phong phú tương tác với hạ tầng phía sau không đồng bộ được thay đổi kinh nghiệm người dùng cuối cùng cho tốt hơn. Được gọi chung là Web 2.0, các ứng dụng này được thay đổi cách thức các trang web cung cấp nội dung cho người dùng cuối. Trong khi một cuộc thảo luận chi tiết về Web 2.0 là vượt ra ngoài phạm vi của bài viết này, có một số công nghệ tiên tiến quan trọng được tiến hành của các ứng dụng theo phong cách Web 2.0. Dịch vụ Web theo kiểu REST, định dạng nguồn cấp dữ liệu theo chuẩn như RSS và ATOM, và các định dạng gọn nhẹ như JSON là một số công nghệ mà dường như rất phổ biến của ứng dụng Web 2.0. Cung cấp dữ liệu cho các ứng dụng Web 2.0 từ kho dữ liệu là điều then chốt để tạo ra thế hệ kế tiếp của các ứng dụng.

Các công cụ dịch vụ Web dữ liệu hỗ trợ dịch vụ theo kiểu REST. DWS hỗ trợ cả hai yêu cầu GET và POST. Như bạn thấy trong Ví dụ 1, GET mã hóa URL cho phép chúng ta gọi các dịch vụ Web và xem các kết quả trong một cửa sổ trình duyệt. Tương tự như vậy, POST mã hóa URL, được sử dụng rộng rãi bởi Web biểu mẫu cũng được hỗ trợ. Ràng buộc HTTP POST XML là một ràng buộc hỗ trợ để cho phép các máy trạm để gửi và nhận XML. Điều này đặc biệt hữu ích với máy khách như XForms, AJAX, vv. Nói tóm lại, DWS hỗ trợ ba loại ràng buộc theo kiểu REST:

  • Ràng buộc HTTP GET
  • Ràng buộc HTTP POST
  • Ràng buộc HTTP POST XML

Hơn nữa, khả năng để áp dụng XSLT phía máy chủ cho thông báo dịch vụ Web có thể được sử dụng để cung cấp dữ liệu kết quả trong các định dạng Web 2.0 khác nhau như JSON, RSS, vv.

Bảo mật

Ngữ cảnh tin cậy

Tham khảo bài viết "Use trusted context in DB2 client applications (Sử dụng ngữ cảnh tin cậy của các ứng dụng DB2)" (developerWorks, tháng 9, 2006) để có được sự hiểu biết chi tiết về ngữ cảnh đáng tin cậy và khả năng của nó.

Tham khảo bài viết "Enabling trusted context for DB2 databases(Kích hoạt ngữ cảnh tin cậy cho cơ sở dữ liệu DB2)" (IBM, tài liệu WebSphere Application Server(máy chủ ứng dụng), tháng 11, 2007) để biết các thông tin về việc làm thế nào để kích hoạt tính năng ngữ cảnh tin cậy giữa WebSphere Application Server(máy chủ ứng dụng) và DB2.

Bảo mật luôn là mối quan tâm khi bạn kích hoạt dịch vụ Web truy cập vào cơ sở dữ liệu của các dịch vụ Web. Sự cân nhắc cẩn thận phải được trao cho những gì được đưa ra và khi ràng buộc đến dữ liệu doanh nghiệp. Dịch vụ định hướng dữ liệu Web bằng cách sử dụng các dịch vụ Web được cho là không có khác nhau. Những tin tốt với các dịch vụ Web dữ liệu là phục vụ lên kho dữ liệu trong trường hợp này (nói cách khác, cơ sở dữ liệu) có một mô hình an ninh vững chắc, có thể xác nhận và cho thi hành ủy quyền, và truy cập dựa trên vai trò được cấp.

Như đã đề cập ở trên, với một ứng dụng DWS, chúng ta có thể tận dụng lợi thế của các cơ sở hạ tầng J2EE, và chúng ta có thể áp dụng cùng một chính sách an ninh có thể áp dụng cho bất kỳ ứng dụng Web nào. Trong một số trường hợp, các cơ sở dữ liệu và máy chủ ứng dụng có sự tích hợp chặt hơn về an ninh. Ví dụ, IBM WebSphere® Application Server (máy chủ dịch vụ) và IBM DB2® có một tính năng gọi là ngữ cảnh tin cậy cung cấp các xác thực cuối từ các máy trạm vào cơ sở dữ liệu. Với dịch vụ Web dữ liệu, bối cảnh tin cậy cho phép máy trạm dịch vụ Web xác thực bằng cách sử dụng một USERID, và nó cho phép các cơ sở dữ liệu phục vụ cho yêu cầu này bằng cách sử dụng quyền hạn của cùng USERID này. Ngữ cảnh tin cậy, như là một tính năng, được áp dụng nhiều hơn cho dịch vụ Web dữ liệu. Để biết thêm thông tin, hãy kiểm tra thanh sách (sidebar) "Ngữ cảnh tin cậy."

Trong một số trường hợp, các yêu cầu kiểm toán hoặc an ninh ủy thác các thông tin bổ sung trong yêu cầu dịch vụ Web khác với nội dung SOAP. Giao thức thông báo SOAP định nghĩa phần SOAP tiêu đề, nơi mà các thông tin có thể được thông qua. DWS cho phép sự thông qua của các thẻ an ninh trong tiêu đề thông báo SOAP. Các tiêu đề SOAP nói chung được xử lý bởi máy SOAP, nhưng, bên cạnh đó DB2 cho phép thẻ thu thập thêm thông tin như User ID, ứng dụng, thông tin về tài khoản,...

Thẻ an ninh và ngữ cảnh tin cậy là các tính năng quan trọng cần xem xét khi lựa chọn và triển khai thực hiện các mô hình an ninh cho môi trường dịch vụ Web.


Kết luận

Dịch vụ Web dữ liệu cho phép chúng ta triển khai hoạt động cơ sở dữ liệu và dễ dàng làm cho chúng sẵn sàng như các dịch vụ. Điều này làm cho rất dễ dàng để phát triển giải pháp gọn nhẹ, nhưng vẫn hiệu quả, để cho phép các dịch vụ Web truy cập vào các cơ sở dữ liệu. Máy chủ cơ sở dữ liệu có thể trở thành một nhà cung cấp dịch vụ Web tới các máy trạm SOA truyền thống cũng như các máy trạm Web 2.0. Mở khóa dữ liệu, và logic nghiệp vụ trong kho dữ liệu bằng cách sử dụng các dịch vụ Web dựa trên chuẩn cho phép các kịch bản sử dụng dữ liệu khác nhau. Máy chủ cơ sở dữ liệu bây giờ có thể phục vụ tích cực vào cơ sở hạ tầng SOA.

Lời cảm ơn

Tác giả muốn cảm ơn Michael Schenker cho tất cả giúp đỡ với dịch vụ Web dữ liệu và các minh họa. Tác giả cũng muốn cảm ơn tất cả các đồng nghiệp của mình những người kiên nhẫn xem xét lại bài viết này và đã cung cấp thông tin phản hồi có giá trị.

Tài nguyên

Học tập

Lấy sản phẩm và công nghệ

  • IBM Data Studio: Tải xuống Data Studio miễn phí.
  • DB2 Express-C: Bây giờ, bạn có thể sử dụng DB2 miễn phí. Tải xuống DB2 Express-C, một phiên bản không mất phí của DB2 Express Edition cho các cộng đồng mà hỗ trợ cùng các đặc điểm dữ liệu lõi như là DB2 Express Edition và cung cấp một cơ sở rõ ràng để xây dựng và triển khai các ứng dụng.
  • Xây dựng dự án phát triển mới của bạn với IBM trial software, có sẵn để tải xuống trực tiếp từ developerWorks.

Thảo luận

Bình luận

developerWorks: Đăng nhập

Các trường được đánh dấu hoa thị là bắt buộc (*).


Bạn cần một ID của IBM?
Bạn quên định danh?


Bạn quên mật khẩu?
Đổi mật khẩu

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Ở lần bạn đăng nhập đầu tiên vào trang developerWorks, một hồ sơ cá nhân của bạn được tạo ra. Thông tin trong bản hồ sơ này (tên bạn, nước/vùng lãnh thổ, và tên cơ quan) sẽ được trưng ra cho mọi người và sẽ đi cùng các nội dung mà bạn đăng, trừ khi bạn chọn việc ẩn tên cơ quan của bạn. Bạn có thể cập nhật tài khoản trên trang IBM bất cứ khi nào.

Thông tin gửi đi được đảm bảo an toàn.

Chọn tên hiển thị của bạn



Lần đầu tiên bạn đăng nhập vào trang developerWorks, một bản trích ngang được tạo ra cho bạn, bạn cần phải chọn một tên để hiển thị. Tên hiển thị của bạn sẽ đi kèm theo các nội dung mà bạn đăng tải trên developerWorks.

Tên hiển thị cần có từ 3 đến 30 ký tự. Tên xuất hiện của bạn phải là duy nhất trên trang Cộng đồng developerWorks và vì lí do an ninh nó không phải là địa chỉ email của bạn.

Các trường được đánh dấu hoa thị là bắt buộc (*).

(Tên hiển thị cần có từ 3 đến 30 ký tự)

Bằng việc nhấn Gửi, bạn đã đồng ý với các điều khoản sử dụng developerWorks Điều khoản sử dụng.

 


Thông tin gửi đi được đảm bảo an toàn.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=70
Zone=Information Management, SOA và dịch vụ Web
ArticleID=387508
ArticleTitle=Các dịch vụ Web dữ liệu: Xây dựng các dịch vụ Web, cách thức mới để truy cập vào máy chủ dữ liệu IBM
publish-date=05202009