Xây dựng các dịch vụ web với an ninh ở mức chuyển tải bằng cách sử dụng Rational Application Developer V7, Phần 2 : Định cấu hình cho xác thực cơ sở HTTP

Phần 1 của loạt bài hướng dẫn này đã hướng dẫn bạn từng bước xây dựng một dịch vụ web cho một ứng dụng máy tính cầm tay đơn giản. Bạn đã tạo ra các dịch vụ web và kiểm thử hai loại hình trình khách dịch vụ Web khác nhau - trình khách Java ™ Platform, Enterprise Edition (Java EE) và trình khách Java độc lập - và xử lý các trường hợp ngoại lệ do người dùng định nghĩa trong các dịch vụ web. Bài thứ hai này của loạt bài gồm ba phần chỉ cho bạn cách định cấu hình xác thực cơ sở HTTP cho các dịch vụ web của bạn và trình khách dịch vụ web và giám sát các thông tin xác thực cơ sở HTTP bằng cách sử dụng trình giám sát TCP/IP.

Henry Cui, Kỹ sư phần mềm, IBM

Henry Cui làm việc cho nhóm dịch vụ và hỗ trợ Rational Application Developer tại phòng thí nghiệm của IBM tại Toronto. Ông là chuyên gia về các vấn đề chủ thể (subject) của nhóm hỗ trợ trong lĩnh vực dịch vụ web, nơi ông đã giúp nhiều khách hàng giải quyết các vấn đề về thiết kế, phát triển, và các vấn đề di trú của các dịch vụ web. Henry là đồng tác giả của cuốn sách được ưu chuộng "Hướng dẫn lập trình Rational Application Developer V7", một trong những cuốn sách đỏ của IBM



28 08 2009

Trước khi bạn bắt đầu

Về loạt bài hướng dẫn này

Nếu bạn đã qua phần 1 của loạt bài hướng dẫn này, thì bạn đã:

  • Thiết lập các máy chủ.
  • Tạo Java bean.
  • Tạo các dịch vụ web.
  • Tạo trình khách Java EE của dịch vụ web.
  • Tạo trình khách Java độc lập của dịch vụ Web.

Phần 2 của hướng dẫn này được xây dựng dựa trên Phần 1, chỉ cho các bạn cách làm thế nào để định cấu hình cho xác thực cơ sở HTTP. Tại đây bạn sẽ:

  • Bật cho phép bảo đảm an ninh của WebSphere® Application Server của IBM®.
  • Định cấu hình việc xác thực cơ sở HTTP cho các bên cung cấp dịch vụ web.
  • Định cấu hình việc xác thực cơ sở HTTP cho trình khách dịch vụ web bằng cách sử dụng một bộ miêu tả triển khai.
  • Định cấu hình việc xác thực cơ sở HTTP cho trình khách dịch vụ web bằng lập trình.
  • Giám sát các thông tin về xác thực cơ sở của HTTP bằng cách sử dụng trình giám sát TCP/IP.

Phần 3 của hướng dẫn này cho bạn biết cách định cấu hình cho HTTPS. Trong phần 3, bạn sẽ:

  • Tạo kho lưu trữ các khóa, kho ủy thác, và chứng thực bên cung cấp dịch vụ web.
  • Tạo cấu hình của giao thức Secure Sockets Layer (SSL) cho bên cung cấp dịch vụ web.
  • Tạo một móc xích chuyển tải các thùng chứa Web mới để sử dụng cấu hình SSL mới cho bên cung cấp dịch vụ web.
  • Định cấu hình cho HTTPS cho trình khách dịch vụ Web.
  • Kiểm thử dịch vụ Web qua HTTPS từ trình khách Java EE.
  • Kiểm thử dịch vụ Web qua HTTPS từ trình khách Java độc lập.

Mục tiêu

Tìm hiểu cách định cấu hình cho xác thực cơ sở HTTP cho dịch vụ web và trình khách dịch web và giám sát các thông tin xác thực cơ sở HTTP bằng cách sử dụng trình giám sát TCP/IP.

Một số yêu cầu

Bạn cần phải có một số hiểu biết cơ sở về công nghệ Java và các dịch vụ web để làm theo hướng dẫn này.

Yêu cầu về hệ thống

Bạn cần phải cài đặt sản phẩm Rational Application Developer V7 của IBM, bản mới nhất. (Bạn có thể tải về bản Rational Application Developer dùng thử tại trang developerWorks nếu bạn chưa mua sản phẩm này.) Nếu bạn không chắc rằng bản Rational Application Developer V7 của mình là bản mới nhất, bạn có thể vào trình quản lý cài đặt IBM (IBM Installation Manager) và chọn mục Update Packages để xem phần cập nhật mới nếu đã có. Vào thời điểm tôi viết hướng dẫn này, phiên bản mới nhất của Rational Application Developer là 7.0.0.5. (Lưu ý: Cứ khoảng ba tháng một lần IBM phát hành một gói vá lỗi. Bạn có thể thấy một phiên bản mới hơn của Rational Application Developer tại thời điểm cài đặt. Mỗi phiên bản mới của Rational Application Developer có chứa số lượng lớn các phần đã sửa chữa. Chúng tôi khuyên bạn nên cài đặt các phiên bản mới nhất để tránh gặp các vấn đề đã được sửa chữa.)


Kích hoạt bảo đảm an ninh của WebSphere Application Server

Trong các phiên bản trước của WebSphere Application Server, khi một người dùng bật chế độ bảo đảm an ninh tổng thể, thì cả bảo đảm an ninh về quản trị và bảo đảm an ninh ứng dụng đều được bật. Từ WebSphere Application Server phiên bản V6.1 trở đi, khái niệm bảo đảm an ninh tổng thể được chia thành bảo đảm an ninh về quản trị và bảo đảm an ninh ứng dụng, bạn có thể kích hoạt riêng rẽ từng chế độ bảo đảm an ninh. Bảo đảm an ninh ứng dụng chỉ có hiệu lực khi bảo đảm an ninh về quản trị được kích hoạt. Để kích hoạt tính năng xác thực cơ sở HTTP, thì máy chủ WebSphere Application Server phải chạy khi cả hai loại bảo đảm an ninh quản trị và bảo đảm an ninh ứng dụng được kích hoạt.

Trong phần này, bạn kích hoạt chế độ bảo đảm an ninh trên máy chủ. Bạn sử dụng sổ đăng ký người sử dụng của hệ điều hành tại máy cục bộ để xác thực người dùng. Sau khi bảo đảm an ninh được kích hoạt, bạn cần phải thông báo các cài đặt quản trị của bạn từ môi trường phát triển tới máy chủ đang chạy thi hành để bạn có thể thiết lập một quan hệ tin cậy giữa bàn làm việc (workbench) phát triển và máy chủ.

Bật chế độ bảo đảm an ninh trên máy chủ

Trước tiên, bạn định cấu hình cho máy chủ chạy với chế độ bảo đảm an ninh đã được kích hoạt:

  1. Bạn phải chắc chắn rằng WAS v6.1 for Web services provider (máy chủ ứng dụng WebSphere v6.1 cho bên cung cấp dịch vụ Web) đã khởi chạy.
  2. Tại khung nhìn Servers, nhấn chuột phải vào WAS v6.1 for Web services provider và chọn Run administrative console (chạy bàn quản trị).
  3. Nhấn Log in. Bạn không cần phải nhập ID người dùng, vì mục này không phải kiểm tra.
  4. Trong ô bên trái, mở rộng Security > Secure administration, applications, and infrastructure, như ở hình 1.
    Hình 1. Bảo đảm an ninh quản trị, các ứng dụng và cơ sở hạ tầng
    Security administration, applications, and infrastructure
  5. Nhấn Security Configuration Wizard.
  6. Tại trang Specify extent of protection, nhấn chọn Enable application security sau đó nhấn Next.
  7. Tại trang Select user repository chọn Local operating system sau đó nhấn Next.
  8. Tại trang Configure user repository, nhập Primary administrative user name. Tên người dùng phải có các quyền ưu tiên về quản trị đối với hệ điều hành tại máy tính của bạn. Nhấn Next.
  9. Tại trang Summary nhấn Finish sau đó nhấn Save. Bạn sẽ thấy cả hai, bảo đảm an ninh quản trị lẫn bảo đảm an ninh ứng dụng đã được kích hoạt.
  10. Nhấn Logout để thoát khỏi bàn quản trị.
  11. Ngừng hoạt động của máy chủ WebSphere Application Server V6.1 cho các bên cung cấp dịch vụ web.

Định cấu hình bảo đảm an ninh tại bàn làm việc

Bạn cần phải biên tập cấu hình máy chủ để xác định rõ rằng chế độ bảo đảm an ninh được kích hoạt:

  1. Tại khung nhìn Servers, nhấn đúp chuột vào WAS v6.1 for Web services provider. Trình biên tập cấu hình máy chủ mở ra.
  2. Mở rộng phần Security và chọn Security is enabled on this server.
  3. Nhập ID của người sử dụng và mật khẩu. ID của người dùng xác định quản trị viên của bàn điều khiển quản trị của WebSphere. Nó phải giống như ID mà bạn đã nhập trong hộp thoại Security Configuration Wizard của bàn điều khiển quản trị của WebSphere. Bạn chọn Automatically trust server certificate during SSL handshake như ở hình 2.
    Hình 2. Chỉ rõ thông tin về bảo đảm an ninh trong trình biên tập cấu hình của máy chủ
    Chỉ rõ thông tin về bảo đảm an ninh trong trình biên tập cấu hình của máy chủ
  4. Ghi lưu và đóng trình biên tập cấu hình của máy chủ lại.
  5. Khởi chạy máy chủ WebSphere Application Server V6.1 cho bên cung cấp dịch vụ web.
  6. Nhấn chuột phải vào WAS v6.1 for Web service provider và chọn Run administrative console.
  7. Bạn sẽ thấy bàn điều khiển quản trị đã được bảo mật như ở hình 3. Nhập ID người sử dụng của bạn và mật khẩu để đăng nhập.
    Hình 3. Bàn điều khiển quản trị đã được bảo mật
    Bàn điều khiển quản trị đã được bảo mật

Xác định cấu hình xác thực cơ sở HTTP cho nhà cung cấp dịch vụ web

Việc xác thực cơ sở HTTP sử dụng mô hình xác thực hiện có của Java EE. Trình biên tập bộ miêu tả triển khai Web được sử dụng để cấu hình thông tin về ai là người có quyền để truy cập vào các dịch vụ web, kiểu phương thức xác thực nào được sử dụng, và các mẫu URL và các phương thức HTTP nào được bảo vệ. Trình biên tập bộ miêu tả triển khai ứng dụng được sử dụng để thu thập các vai trò bảo mật, thêm người sử dụng hoặc các nhóm vào các vai trò đó.

Định cấu hình cho bộ mô tả triển khai Web

  1. Tại khung nhìn Project Explorer, mở rộng dự án web Calculator, sau đó nhấn đúp chuột vào Deployment Descriptor: Calculator. Bộ mô tả triển khai Web mở ra.
  2. Nhấn vào thẻ Servlets.
  3. Nhấn servlet com_ibm_calculator, sau đó kiểm tra phần URL Mappings. Bạn sẽ thấy servlet com_ibm_Calculator được ánh xạ đến địa chỉ URL services/Calculator, bạn lưu ý địa chỉ URL này vì bạn bảo vệ nó trong các bước sau.
  4. Nhấn thẻ Pages.
  5. Tại phần Login, nhấn danh sách thả xuống Authentication method và chọn Basic.
  6. Nhập HTTP basic authentication tại mục realm name như ở hình 4.
    Hình 4. Cấu hình Đăng nhập
    Cấu hình đăng nhập
  7. Phấn phiếu Security.
  8. Tại phần Security Roles nhấn Add. Hộp thoại Add Security Role mở ra.
  9. Nhập webservicesrole vào mục name và Authenticated Web service user vào mục description của hộp thoại. Sau đó nhấn Finish.
  10. Nhấn vào mục vai trò bảo mật webservicesrole mà bạn vừa xác định. Sau đó tại mục Add.
  11. Nhập WSConstraint làm tên của ràng buộc và nhấn Next.
  12. Tại hộp thoại Add Web Resource bạn nhập ws_resource làm tên của tài nguyên.
  13. Nhập Protected Web service resource làm nội dung mô tả. Tại mục HTTP Methods, bạn nhấn chọn GETPOST.
  14. Tại phần Pattern, nhấn Add, và nhập /services/Calculator làm tên như ở hình 5.
  15. Nhấn OK.
    Hình 5. Thêm tài nguyên Web
    Thêm tài nguyên Web
  16. Nhấn Finish.
  17. Tại phần Authorized Roles nhấn Add.
  18. Nhập Valid role vào làm nội dung mô tả, chọn webservicesrole (xem hình 6), sau đó nhấn Finish.
    Hình 6. Thêm ràng buộc về cấp quyền
    Thêm ràng buộc về cấp quyền
  19. Ghi lưu và đóng bộ mô tả triển khai Web.

Định cấu hình cho bộ mô tả triển khai ứng dụng

  1. Tại khung nhìn Package Explorer, mở rộng dự án ứng dụng doanh nghiệp CalculatorEAR, và nhấn đúp chuột vào mục Deployment Descriptor: CalculatorEAR. Trình biên tập bộ mô tả triển khai ứng dụng mở ra.
  2. Nhấn phiếu Security sau đó nhấn Gather. Thao tác này thu thập tất cả các vai trò bảo đảm an ninh được định nghĩa trong tất cả các mô-đun. Bạn sẽ thấy vai trò webservicesrole đã được bổ sung.
  3. Bây giờ bạn nhấn mục webservicesrole, mà bạn vừa thu thập được. Sau đó tại mục WebSphere Bindings, bạn chọn Users/Groups.
  4. Tại phần Users, bạn nhấn Add.
  5. Tại hộp thoại Users, bạn nhập một tên người dùng hợp lệ. Vì máy chủ WebSphere Application Server được cấu hình để sử dụng sổ đăng ký người sử dụng của hệ điều hành tại máy cục bộ, bạn phải nhập một tài khoản người dùng hợp lệ có thể được hệ điều hành của bạn xác thực. Để đơn giản, bạn có thể chỉ cần sử dụng tên người quản trị chính mà bạn đã sử dụng trong thủ thuật định cấu hình bảo đảm an ninh vì rằng tên người sử dụng này là có giá trị. Trình biên tập bộ mô tả triển khai ứng dụng của bạn phải trông giống như hình 7.
  6. Ghi lưu và đóng trình biên tập lại.
    Hình 7. Trình biên tập bộ mô tả triển khai ứng dụng
    Trình biên tập bộ mô tả triển khai ứng dụng

Kiểm thử dịch vụ web với xác thực cơ sở HTTP đã được bật

Vì dịch vụ Web được bật chế độ xác thực cơ sở HTTP, nên chỉ có người sử dụng được xác thực mới có thể truy cập các dịch vụ web của bạn. Bạn đã không định cấu hình trình khách dịch vụ Web phía với các ủy quyền cần thiết, do đó bạn hẳn sẽ nhận được một thông báo lỗi không có quyền nếu bạn cố gắng gọi thực hiện các hoạt động trong dịch vụ web. Chúng ta hãy kiểm thử các trình khách JavaServer Pages (JSP) để xem xác thực cơ sở HTTP có hiệu lực hay không.

  1. Bạn đảm bảo rằng WAS v6.1 for Web services provider (máy chủ ứng dụng WebSphere cho bên cung cấp dịch vụ Web) đã được khởi động.
  2. Bạn đảm bảo rằng máy chủ WAS v6.1 for Web services consumer (máy chủ ứng dụng WebSphere cho bên tiêu dùng dịch vụ Web) đã được khởi động.
  3. Tại khung nhìn Project Explorer, mở rộng CalculatorWebClient, WebContentsampleCalculatorProxy. Nhấn chuột phải vào TestClient.jsp > Run As > Run on server.
  4. Tại hộp thoại Define new server, chọn mục WAS v6.1 for Web services consumer, và nhấn chọn Set server as project default (do not ask again), như tại hình 8.
  5. Nhấn Finish. Trình khách JSP mẫu xuất hiện
    Hình 8. Xác định một máy chủ mới
    Xác định một máy chủ mới
  6. Nhấn phương thức add(int,int) và nhập các giá trị để kiểm tra. Kết quả sẽ hiển thị ngoại lệ: ( 401 ) Unauthorized.
  7. Hãy xem bàn điều khiển của máy chủ WebSphere Application Server. Bạn sẽ thấy lỗi như trong liệt kê 1.
Liệt kê 1. Lỗi không được cấp phép
                                 WebServicesFault
 faultCode: HTTP
 faultString: ( 401 ) Unauthorized
 faultActor: http://localhost:9080
 faultDetail: 
	null: WSWS3192E: Error: return code:  ( 401 ) Unauthorized
.

( 401 ) Unauthorized

Xin chúc mừng! Dịch vụ Web đã được bật chế độ xác thực cơ sở HTTP và chỉ người sử dụng được phép mới có thể truy cập các dịch vụ web.


Xác định cấu hình xác thực cơ sở HTTP cho trình khách dịch vụ Web bằng cách sử dụng bộ mô tả triển khai

Bạn có thể định cấu hình xác thực cơ sở HTTP hoặc bằng cách sử dụng trình biên tập bộ mô tả triển khai hoặc thiết lập nó bằng mã lệnh trong chương trình. Trong phần này, bạn định cấu hình xác thực cơ sở HTTP bằng cách sử dụng trình biên tập bộ mô tả triển khai Web.

  1. Tại khung nhìn Package Explorer, mở rộng dự án web CalculatorWebClient, và nhấn đúp chuột vào Deployment Descriptor: CalculatorWebClient. Bộ mô tả triển khai Web mở ra.
  2. Nhấn phiếu WS Binding Tại phần Port Qualified Name Binding Details, tìm đến mục xác thực cơ sở HTTP. Nhập ID người sử dụng hợp lệ và mật khẩu, như tại hình 9.
    Hình 9. Định rõ xác thực cơ sở HTTP
    Định rõ xác thực cơ sở HTTP
  3. Ghi lưu bộ mô tả triển khai.
  4. Tại khung nhìn Project Explorer, mở rộng CalculatorWebClient, WebContentsampleCalculatorProxy. Sau đó, nhấn chuột phải vào TestClient.jsp và chọn Run As > Run on server.
  5. Thử nghiệm trình khách JSP mẫu. Lần này bạn sẽ có thể sử dụng thành công các dịch vụ web.

Xác định cấu hình xác thực cơ sở HTTP cho trình khách dịch vụ web bằng chương trình

Bạn cũng có thể định cấu hình xác thực cơ sở HTTP cho trình khách dịch vụ web bằng mã lệnh trong chương trình.

Nếu bạn định cấu hình xác thực cơ sở HTTP bằng cả hai cách: sử dụng bộ mô tả triển khai và bằng mã lệnh trong chương trình, thì các giá trị được thiết lập theo chương trình sẽ có mức ưu tiên cao hơn so với các giá trị được định nghĩa tại phần kết buộc của bộ mô tả triển khai.

  1. Bạn hủy bỏ các thông tin xác thực cơ sở HTTP mà bạn thiết lập ở phiếu WS Binding của bộ mô tả triển khai Web và ghi lưu nó.
  2. Tại khung nhìn Project Explorer, mở rộng CalculatorWebClient, Java Resources: srccom.ibm. Sau đó, mở tệp CalculatorProxy.java.
  3. Thêm câu lệnh nhập khẩu này ở phía trên cùng của tệp CalculatorProxy.java: :
    import javax.xml.rpc.Stub;
  4. Xác định vị trí các dòng lệnh trong tệp CalculatorProxy.java như tại liệt kê 2.
    Liệt kê 2. Mã lệnh cần được thay đổi
    if (_useJNDI) {
       try {
         javax.naming.InitialContext ctx = new javax.naming.InitialContext();
         __calculator = ((com.ibm.CalculatorService)ctx.
         lookup("java:comp/env/service/CalculatorService")).getCalculator();
    }
  5. Thực hiện các thay đổi như được tô đậm trong liệt kê 3.
    Liệt kê 3. Thiết lập các thông tin xác thực cơ sở bằng mã lệnh trong chương trình

    Nhấp vào để xem mã nguồn

    Liệt kê 3. Thiết lập các thông tin xác thực cơ sở bằng mã lệnh trong chương trình

     if (_useJNDI) {
       try {
         javax.naming.InitialContext ctx = new javax.naming.InitialContext();
         __calculator = ((com.ibm.CalculatorService)ctx.
         lookup("java:comp/env/service/CalculatorService")).getCalculator();
        ((javax.xml.rpc.Stub)__calculator)._setProperty(javax.xml.rpc.Stub.USERNAME_PROPERTY, "xxxxxxxx");((javax.xml.rpc.Stub)__calculator)._setProperty(javax.xml.rpc.Stub.PASSWORD_PROPERTY, "xxxxxxxx");
    }

    Lưu ý: Bạn cần phải thay thế các chữ "xxxxxxxx" bằng tên người dùng và mật khẩu của riêng bạn.

  6. Ghi lưu tệp tin này.
  7. Thử nghiệm trình khách JSP mẫu một lần nữa. Lần này bạn sẽ có thể sử dụng thành công các dịch vụ web.
  8. Đối với loại hình Java client đứng độc lập, bạn có thể sao chép và dán mã từ liệt kê 4 vào tệp TestCalculator.java của bạn trong dự án CalculatorJavaClient. Dòng lệnh mới được thêm sẽ được tô sáng. Lưu ý: Bạn cần phải thay các chữ "xxxxxxxx" bằng tên người dùng và mật khẩu của riêng bạn.
  9. Ghi lưu tập tin này. Kiểm thử tệp TestCalculator.java để chắc chắn rằng nó làm việc.
    Liệt kê 4. Tệp TestCalculator.java

    Nhấp vào để xem mã nguồn

    Liệt kê 4. Tệp TestCalculator.java

    package com.ibm;
    
    import java.rmi.RemoteException;
    
    public class TestCalculator {
    	public static void main(String[] args) {
    		try {
    			CalculatorProxy proxy = new CalculatorProxy();
    			Calculator calculator = proxy.getCalculator();((javax.xml.rpc.Stub)calculator)._setProperty(javax.xml.rpc.Stub.USERNAME_PROPERTY, "xxxxxxxx");((javax.xml.rpc.Stub)calculator)._setProperty(javax.xml.rpc.Stub.PASSWORD_PROPERTY, "xxxxxxxx");
    			System.out.println("2 + 2 = " + proxy.add(2, 2));
    			System.out.println("2 - 2 = " + proxy.subtract(2, 2));
    			System.out.println("4 * 2 = " + proxy.multiply(4, 2));
    			System.out.println("4 / 2 = " + proxy.divide(4, 2));
    			System.out.print("4 / 0 = ");
    			System.out.print(proxy.divide(4, 0));
    		} catch (DivideByZeroException e) {
    			System.out.println("Error: can't divide by zero!");
    		} catch (RemoteException e) {
    			e.printStackTrace();
    		}
    	}
    }

Giám sát thông tin xác thực cơ sở HTTP bằng cách sử dụng trình giám sát TCP/IP

Bạn có thể giám sát tiêu đề của HTTP và lưu lượng SOAP của dịch vụ web bằng cách sử dụng trình giám sát TCP/IP. Để thiết lập trình giám sát TCP/IP, bạn cần:

  1. Chọn Window > Preferences > Run/Debug > TCP/IP Monitor, sau đó nhấn Add. Hộp thoại New Monitor mở ra.
  2. Tại trường Local monitoring port, bạn nhập một số hiệu cổng duy nhất trên máy tính của bạn, mà chưa tiến trình nào sử dụng cổng này (ví dụ: 9089).
  3. Tại trường Host name, bạn nhập localhost.
  4. Đối với trường Port, bạn nhập số hiệu cổng của máy chủ WebSphere Application Server V6.1 cho các nhà cung cấp dịch vụ web. Đó là số 9080 (xem hình 10).
    Hình 10. Thiết lập trình giám sát TCP/IP
    Thiết lập trình giám sát TCP/IP
  5. Nhấn OK.
  6. Chọn trình giám sát TCP/IP mới được tạo ra. Nhấn Start và sau đó nhấn OK.
  7. Tại trang trình khách JSP mẫu, nhấn phương thức getEndpoint() và nhấn Invoke. Kết quả sẽ như sau:
    http://localhost:9080/Calculator/services/Calculator
  8. Sao chép đường dẫn URL này.
  9. Nhấn setEndpoint() tại trình khách JSP mẫu, nhập đường dẫn http://localhost:9089/Calculator/services/Calculator, và nhấn Invoke. Trình khách JSP mẫu gửi yêu cầu SOAP tới cổng 9089, là cổng mà trình giám sát TCP/IP lắng nghe. Trình giám sát TCP/IP sau đó chuyển hướng yêu cầu SOAP tới cổng 9080, là cổng mà dịch vụ web chạy.
  10. Nhấn phương thức add(int,int) và nhập các giá trị để kiểm thử. Các yêu cầu và đáp ứng sẽ được hiển thị tại phiếu TCP/IP Monitor.
  11. Nhấn biểu tượng Menu (hình tam giác có đỉnh quay xuống phía dưới) ở góc phía trên bên phải, sau đó chọn Show Header, như ở hình 11.
    Hình 11. Hiển thị tiêu đề HTTP tại khung nhìn giám sát TCP/IP.
    Hiển thị tiêu đề HTTP tại khung nhìn giám sát TCP/IP
  12. Cả tiêu đề HTTP và phong bì SOAP được hiển thị trên phiếu TCP/IP monitor (xem hình 12).
    Hình 12. Sử dụng trình giám sát TCP/IP để giám sát tiêu đề HTTP và phong bì SOAP
    Sử dụng trình giám sát TCP/IP để giám sát tiêu đề HTTP và phong bì SOAP
  13. Liệt kê 5 cho biết các thông tin về tiêu đề HTTP của các yêu cầu dịch vụ web.
    Liệt kê 5. Thông tin về tiêu đề HTTP của các yêu cầu dịch vụ web.
    POST /Calculator/services/Calculator HTTP/1.1
    Host: localhost:9080
    Accept: application/soap+xml,multipart/related,text/*
    User-Agent: IBM WebServices/1.0
    Cache-Control: no-cache
    Pragma: no-cache
    SOAPAction: "add"
    Authorization: Basic aGVucnk6b3BlbnNlc2FtZQ==
    Connection: Keep-Alive
    Content-Type: text/xml; charset=utf-8
    Content-Length: 597
    Date: Fri, 23 Nov 2007 22:18:07 GMT

    Bạn lưu ý rằng dòng lệnh này chứa các thông tin về ID và mật khẩu của người sử dụng:
    Authorization: Basic aGVucnk6b3BlbnNlc2FtZQ==

  14. Nếu bạn tìm bộ giải mã cho xác thực cơ sở HTTP, trên Google, bạn sẽ thấy một vài công cụ để giải mã xác thực cơ sở của HTTP. Nếu bạn tìm công cụ mã/giải mã Base64 trực tuyến (Online Base64 encode/Decode Utility) tại địa chỉ URL http://www.securitystats.com/tools/base64.php, và dán dòng aGVucnk6b3BlbnNlc2FtZQ== vào trường giải mã, bạn sẽ có kết quả như trong hình 13.
    Hình 13. Công cụ mã/giải mã Base64 trực tuyến
    Công cụ Online Base64 encode/Decode

Ối chà! Tên người dùng và mật khẩu của bạn bị lộ ra cho mọi người. Quá dễ để giải mã! Vì thế, bạn nên sử dụng HTTPS để mã hóa các thông tin xác thực cơ sở. Bạn hãy tìm hiểu thêm về cấu hình HTTPS tại phần ba của loạt bài hướng dẫn gồm ba phần này. Chúc bạn thành công!


Tóm tắt

Việc xác thực cơ sở HTTP cung cấp một phương cách đơn giản để xác thực trình khách dịch vụ Web. Tại phần này của loạt bài hướng dẫn, bạn đã học cách định cấu hình xác thực cơ sở HTTP cho dịch vụ Web và trình khách bằng cách sử dụng Rational Application Developer V7 và máy chủ WebSphere Application Server V6.1. Phần 3 của loạt bài hướng dẫn này cung cấp các chỉ dẫn từng bước một về cách định cấu hình cho HTTPS.


Tải về

Mô tảTênKích thước
Solution in project interchange format1Part2Solution.zip59KB

Ghi chú

  1. Để nhập khẩu các giải pháp, bạn chọn File > Import > Other > Project Interchange.

Tài nguyên

Học tập

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

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=SOA và dịch vụ Web, Rational
ArticleID=424075
ArticleTitle=Xây dựng các dịch vụ web với an ninh ở mức chuyển tải bằng cách sử dụng Rational Application Developer V7, Phần 2 : Định cấu hình cho xác thực cơ sở HTTP
publish-date=08282009