Thiết lập một vùng SQL với DB2 pdf

40 172 0
Thiết lập một vùng SQL với DB2 pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Thiết lập một vùng SQL với DB2 Express-C, WTP Eclipse, và Máy chủ Ứng dụng WebSphere, Bản Cộng đồng V1.1 Thực hiện bảo mật cơ sở dữ liệu với gói khởi công Java (Java kick-start) Krishnakumar Balachandar, Kỹ sư phần mềm, IBM Tóm tắt: Hướng dẫn này chỉ cho bạn biết cách lập ra một vùng SQL (SQL realm) để thực hiện bảo mật cơ sở dữ liệu cho một ứng dụng Web bằng cách sử dụng gói phần mềm miễn phí để khởi công Java ™ (Java kick-start package). Trước khi bạn bắt đầu Khi triển khai thực hiện bảo mật trong một ứng dụng Web, cần phải có một mô- đun JAAS dành riêng để xử lý việc xác thực và cấp quyền cho người dùng. Máy chủ Ứng dụng WebSphere Bản Cộng đồng (WebSphere Application Server Community Edition) cung cấp một vùng SQL, có thể kết nối đến một cơ sở dữ liệu để thu thập các quyền hạn của người sử dụng. Trong hướng dẫn này bạn sẽ thấy cách thiết lập các bảng để tạo một vùng SQL trong DB2 Express-C, cách thiết lập một môi trường phát triển bằng cách sử dụng nền công cụ Web của Eclipse (Eclipse Web Tooling Platform) để tạo một ứng dụng Web, và cách triển khai ứng dụng Web từ Eclipse lên Máy chủ Ứng dụng WebSphere Bản Cộng đồng. Tất cả các ứng dụng Web sẽ áp dụng một mức độ bảo mật nào đó đối với việc xác thực và cấp quyền người sử dụng để xác minh nhận dạng của người sử dụng và cho phép truy cập các chức năng của ứng dụng, áp dụng được đối với vai trò của người sử dụng này. Các ứng dụng Web có thể sử dụng LDAP, cơ sở dữ liệu, hệ thống tệp tin, Kerberos, hoặc các hệ thống tương tự như vậy, để cung cấp việc xác thực và cấp quyền. Để truy cập dữ liệu bảo mật từ phương thức hoặc hệ thống được chọn, một vùng SQL được thiết lập ra bằng cách tạo các bảng trong một cơ sở dữ liệu và xác lập cấu hình cho một mô đun dịch vụ xác thực và cấp quyền trong Java (Java Authentication and Authorization Service - JAAS) để truy cập vào các bảng ấy từ một máy chủ ứng dụng. Hình 1 cho thấy các thành phần khác nhau trong Máy chủ Ứng dụng WebSphere Bản Cộng đồng (sau đây gọi tắt là Bản Cộng đồng) được sử dụng để cung cấp một vùng SQL. Các ứng dụng Web sử dụng một vùng SQL kết nối vào cơ sở dữ liệu bằng cách sử dụng một pool hoặc trình điều khiển cơ sở dữ liệu. Quyền hạn của người sử dụng được lưu trong bảng trong cơ sở dữ liệu và được chuyển tải về khi thực hiện các lời gọi, bằng cách sử dụng vùng SQL JAAS. Hình 1. Các thành phần của một vùng SQL Dịch vụ xác thực và cấp quyền trong Java (Java Authentication and Authorization Service - JAAS) là một bộ các API cho phép các ứng dụng Java truy cập vào các dịch vụ xác thực và dịch vụ kiểm soát truy cập mà không bị buộc vào dịch vụ mà nó sử dụng. Thiết lập một vùng cơ sở dữ liệu Thiết lập một vùng cơ sở dữ liệu bao gồm việc thực hiện các bước chung sau đây:  Tạo các bảng cho người sử dụng và các nhóm trong DB2 Express-C.  Triển khai một pool cơ sở dữ liệu trong máy chủ Bản Cộng đồng, nếu vùng đó định sử dụng một pool để kết nối với cơ sở dữ liệu.  Triển khai sơ đồ vùng SQL trong máy chủ Bản cộng đồng.  Lập cấu hình và triển khai ứng dụng Web mà sử dụng vùng SQL này. Phần còn lại của hướng dẫn này giải thích chi tiết các nhiệm vụ ấy. Thiết lập một cơ sở dữ liệu Trong phần này, bạn sẽ thấy cách thiết lập cơ sở dữ liệu và các bảng cơ sở dữ liệu cần có cho vùng SQL. Bạn có thể tạo cơ sở dữ liệu và các bảng hoặc bằng cách sử dụng Trung tâm điều khiển (Control Center) hoặc thông qua việc chạy một kịch bản lệnh SQL. Sử dụng Trung tâm điều khiển Tạo cơ sở dữ liệu 1. Trong DB2 Express-C, mở Trung tâm điều khiển. 2. Nhấn chuột phải vào All Databases, sau đó chọn Create Database => Standard. 3. Gõ nhập WASCE làm tên cơ sở dữ liệu. 4. Nhấn Finish. Bạn vừa tạo ra một cơ sở dữ liệu mới có tên WASCE và sẽ thấy nó được liệt kê dưới mục All Databases (Hình 2). Hình 2. Cơ sở dữ liệu mới được tạo Tạo các bảng Bây giờ, hãy tạo các bảng cho người dùng (USERS) và cho các nhóm (GROUP) trong cơ sở dữ liệu mới WASCE: 1. Dưới mục WASCE trong liệt kê thư mục, nhấn chuột phải vào Tables, sau đó chọn Create. 2. Gõ nhập làm tên bảng USERS, sau đó nhấn Next. 3. Thêm một cột: a. Chọn Add để thêm một cột mới vào bảng. b. Gõ nhập USERNAME làm tên cột. c. Chọn kiểu dữ liệu của cột là VARCHAR. d. Đối với mục Nullable or not, chọn No. e. Nhấn Apply. 4. Lặp lại bước 3 để thêm một cột EMAIL và một cột PASSWORD vào bảng USERS, với các giá trị như thấy trong Hình 3. Khi hoàn tất, nhấn OK. 5. Lặp lại các bước từ 1 đến 4 để tạo ra một bảng GROUPS mới với hai cột: GROUPNAME và USERNAME. 6. Nhấn Next => Next => Next để đến các phím Define trên ô hình bảng mới. 7. Chọn Add Primary. Từ các cột có sẵn, chọn cột nào định làm khoá chính cho mỗi bảng: a. Đối với bảng USERS, chọn USERNAME và đối với bảng chọn USERNAME/GROUPNAME làm khóa chính. b. Đối với bảng GROUPS, chọn Add foreign => USERNAME. Nhấn nút > để chuyển nó vào khoá ngoại. Chọn USERNAME làm khóa chính trong bảng Cha (Schema/Name - ADMINISTRATOR/USERS). 8. Nhấn Finish và bảng được tạo ra. Áp dụng các bước trên đây và các định nghĩa lược đồ như thấy trong Hình 3 và Hình 4 để tạo ra các bảng USERS và GROUPS. Đối với bảng USERNAME thì USERNAME là khóa chính. Đối với bảng GROUPS thì GROUPNAME và USERNAME là các khóa chính, và USERNAME là một khoá ngoại (tham chiếu đến USERNAME trong bảng USERS). Lược đồ USERS Hình 4. Lược đồ GROUPS Trong các bước nói trên đây, các bảng USERS và GROUPS được tạo ra dưới lược đồ ADMINISTRATOR. Nếu bạn đã đăng nhập dưới tên db2admin, các bảng sẽ được tạo ra dưới lược đồ DB2ADMIN. Điền giá trị vào các bảng 1. Chọn WASCE => Tables => USERS. 2. Nhấn chuột phải vào bảng USERS, sau đó chọn Open => Add row. 3. Gõ nhập các giá trị thử vào từng trường trong bản ghi cơ sở dữ liệu, sau đó chọn Commit. 4. Lặp lại các bước 2 và 3 đối với từng bản ghi thử mà bạn muốn tạo ra, sau đó nhấn Close. 5. Lặp lại các bước từ 1 đến 4 đối với bảng GROUPS (Hình 5). Hình 5. Tạo các bản ghi dữ liệu thử Sử dụng các kịch bản lệnh Thay vì sử dụng Trung tâm điều khiển DB2, bạn có thể tạo cơ sở dữ liệu, bảng, và dữ liệu thử bằng cách sử dụng một kịch bản lệnh SQL. Tệp tin tải về kèm trong hướng dẫn này chứa một tệp tin kịch bản lệnh mẫu, db2_realm.sql. Hãy thực hiện kịch bản lệnh này từ dòng lệnh DB2 để tạo ra cơ sở dữ liệu và bảng: 1. Mở một cửa sổ lệnh Windows hoặc chạy tệp tin bó (batch file) DB2 /<db2 install directory>bin/db2cw.bat. 2. Thực hiện tệp tin kịch bản lệnh mẫu bằng lệnh này: db2 -tvfdb2-realm.sql. Nếu không gặp lỗi, các thông báo thực hiện thành công sẽ được tạo ra cho SQL này (Hình 6). Hình 6. Tạo cơ sở dữ liệu, bảng, và dữ liệu thử thông qua sử dụng kịch bản lệnh Tạo ứng dụng Web Trong phần này, bạn sẽ sử dụng Nền Công cụ Web của Eclipse (Eclipse Web Tools Platform - WTP) để tạo ra một ứng dụng Web đơn giản. Tuy nhiên trước khi bắt đầu với ứng dụng, bạn cần phải định nghĩa một máy chủ mới trong Eclipse (mà các ứng dụng mới sẽ được triển khai lên nó) và tạo một Môi trường Java Runtime (JRE). Sau đó, bạn có thể sử dụng WTP Eclipse để tạo ra các thành phần ứng dụng (như các tệp tin WAR và EAR). Tệp tin tải về kèm hướng dẫn này chứa một tệp tin EAR nguồn của một ứng dụng mẫu mà bạn có thể nhập khẩu vào WTP Eclipse. Xác định một máy chủ mới Để triển khai một ứng dụng, bạn cần định nghĩa một máy chủ trong Eclipse: 1. Trong Eclipse, nhấn chuột phải vào phiếu Server và chọn New Server để mở thủ thuật New Server (Hình 7). [...]... triển khai một vùng SQL mà kết nối với cơ sở dữ liệu Sơ đồ vùng chứa Geronimo GBeans cần có để tạo ra một vùng SQL GBean "sql- login" có các thuộc tính mà bạn sử dụng để xác định kiểu vùng loginModuleClass = org.apache.geronimo.security.realm.providers.SQLLoginModule, và các tùy chọn để bạn xác định các thuộc tính JDBC cần thiết để kết nối với cơ sở dữ liệu Bạn có thể sử dụng sơ đồ này để kết nối với bất... khai sơ đồ vùng Máy chủ Bản Cộng đồng kết nối vào các cơ sở dữ liệu SQL, sử dụng JAAS theo mặc định, để cung cấp một vùng SQL cho các ứng dụng được triển khai trong máy chủ Bạn có thể tạo kết nối này bằng cách sử dụng một trình điều khiển JDBC kết nối trực tiếp vào cơ sở dữ liệu, hoặc bằng cách sử dụng một pool cơ sở dữ liệu để nhận một kết nối từ pool để kết nối với cơ sở dữ liệu Sơ đồ vùng (xem Liệt... sở dữ liệu Liệt kê 2 cho thấy một sơ đồ vùng SQL có sử dụng một pool cơ sở dữ liệu (DB2Realm) mà được triển khai bằng cách sử dụng thủ thuật bàn điều khiển Sơ đồ chứa trong tệp tin tải về tên là sqlpoolplan.xml Liệt kê 2 Sơ đồ vùng SQL bằng cách sử dụng pool cơ sở dữ liệu db2 pool-realm... nguồn dữ liệu (DataSource) để kết nối với cơ sở dữ liệu Sử dụng trình điều khiển JDBC Liệt kê 1 cho thấy một sơ đồ vùng SQL sử dụng trình điều khiển JDBC để kết nối với cơ sở dữ liệu Sơ đồ này chứa trong tệp tin tải về tên là sqlplan.xml Trong các câu lệnh in đậm trong Liệt kê 1, hãy thay ADMINISTRATORS bằng tên lược đồ trong đó các bảng được tạo ra Liệt kê 1 Sơ đồ vùng SQL thông qua việc sử dụng trình... org.apache.geronimo security.realm.providers.SQLLoginModule true jdbcUser=db2admin jdbcPassword=db2admin jdbcURL=jdbc :db2: WASCE jdbcDriver=com.ibm .db2. jcc.DB2Driver userSelect=select username,... nhấn Next c Chọn IBM đối với JRE, và di chuyển đến thư mục cài đặt máy chủ ứng dụng thích hợp, sau đó nhấn Finish 5 Click Finish Triển khai ứng dụng Với ứng dụng được tạo ra, bạn có thể triển khai nó lên môi trường chạy máy chủ bản cộng đồng Tuy nhiên để chạy ứng dụng này, bạn cần có một pool cơ sở dữ liệu và một sơ đồ vùng: Triển khai pool cơ sở dữ liệu Để kết nối DB2, bạn cần có một pool cơ sở dữ liệu,... máy chủ mới 7 Bên cạnh mục Runtime, chọn Edit 8 Đối với mục JRE, chọn IBM (Hình 11), sau đó chọn Finish Hình 11 Chọn JRE IBM Phát triển một ứng dụng Ứng dụng Web sẽ gồm các trang web dành cho ứng dụng (trong một tệp tin WAR) và sẽ được bổ sung vào một ứng dụng doanh nghiệp (trong một tệp tin EAR) Để phục vụ cho hướng dẫn này, bạn có thể sử dụng một ứng dụng mà bạn phát triển từ ban đầu, hoặc bạn có... theo 6 Đối với Context Root, nhập /SQLRealmWeb, sau đó nhấn Next 7 Cấu hình cho kế hoạch triển khai Geronimo bằng cách nhập vào các giá trị sau: o Group ID: wasce o Artifact ID: sqlrealm o Version: 1.0 o Artifact Type: WAR 8 Nhấn Finish (Hình 13) Hình 13 Thiết lập máy chủ đã hoàn tất Nhập khẩu ứng dụng mẫu vào WTP Eclipse Nếu bạn chọn nhập khẩu dự án mẫu, tệp tin tải về kèm hướng dẫn này chứa một tệp... này chứa một tệp tin EAR mà bạn có thể nhập khẩu vào vùng làm việc WTP Eclipse: 1 Trong Eclipse, chọn File => Import => J2EE 2 Đối với Source File, nhập SQLRealmAppSrc.ear, sau đó nhấn Next 3 Gõ nhập hoặc chọn các giá trị sau: o EAR Project: SQLRealmApp o Web Project: SQLRealmWeb o Target Runtime: WebSphere Community Edition v1.1 4 Nếu bạn cần tạo ra một tùy chọn môi trường chạy dành cho Máy chủ Ứng dụng... (Hình 17) Hình 17 Triển khai vùng cơ sở dữ liệu 4 Triển khai sơ đồ vùng cơ sở dữ liệu SQL có sử dụng pool cơ sở dữ liệu (sqlpoolplan.xml như trong Liệt kê 2) 5 Kiểm tra xem hai sơ đồ này đã được triển khai thành công chưa bằng cách chọn Systems Modules dưới mục Applications trong bàn quản trị (Hình 18) Hình 18 Kiểm tra triển khai vùng thành công Triển khai ứng dụng Với ứng dụng và cấu hình máy chủ . cung cấp một vùng SQL, có thể kết nối đến một cơ sở dữ liệu để thu thập các quyền hạn của người sử dụng. Trong hướng dẫn này bạn sẽ thấy cách thiết lập các bảng để tạo một vùng SQL trong DB2 Express-C,. nó sử dụng. Thiết lập một vùng cơ sở dữ liệu Thiết lập một vùng cơ sở dữ liệu bao gồm việc thực hiện các bước chung sau đây:  Tạo các bảng cho người sử dụng và các nhóm trong DB2 Express-C mật từ phương thức hoặc hệ thống được chọn, một vùng SQL được thiết lập ra bằng cách tạo các bảng trong một cơ sở dữ liệu và xác lập cấu hình cho một mô đun dịch vụ xác thực và cấp quyền trong

Ngày đăng: 07/08/2014, 09:22

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan