BẢO MẬT HỆ THỐNG THÔNG TIN

Tài liệu tương tự
Stored Procedures Stored Procedures Bởi: Khoa CNTT ĐHSP KT Hưng Yên Trong những bài học trước đây khi dùng Query Analyzer chúng ta có thể đặt tên và s

PowerPoint Template

HỌC VIỆN KỸ THUẬT QUÂN SỰ KHOA CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập Tự do Hạnh phúc ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN CÔNG NGHỆ CLI

Microsoft Word - cu_phap_sqlite.docx

Kết nối và thao tác với CSDL trong ASP Kết nối và thao tác với CSDL trong ASP Bởi: Khoa CNTT ĐHSP KT Hưng Yên Qui tắc chung - Tạo đối tượng Connection

View, Procedure, Function & Trigger

Thực hành hàm kết hợp và gom nhóm Thực hành hàm kết hợp và gom nhóm Bởi: Khoa CNTT ĐHSP KT Hưng Yên Nhắc lại lý thuyết Hàm kết hợp Hàm count(), min(),

WICELL User Guide Smart Cloud Wicell Controller Standard Version Manual version

Cách tạo User và Thiết kế Database Cách tạo User và Thiết kế Database Bởi: Khoa CNTT ĐHSP KT Hưng Yên Cách tạo một User Database Chúng ta có thể tạo m

Tìm hiểu ngôn ngữ lập trình Visual Basic Tìm hiểu ngôn ngữ lập trình Visual Basic Bởi: Khuyet Danh Tìm hiểu ngôn ngữ lập trình Visual Basic Tổng quan

KẾ HOẠCH THỰC TẬP CƠ SỞ DỮ LIỆU I. MỤC ĐÍCH, YÊU CẦU Mục đích: Giúp sinh viên rèn luyện các kỹ năng về xây dựng cơ sở dữ liệu, cài đặt, quản trị, thao

Slide 1

Chương 1:

Microsoft Word - su_dung_sqlite_voi_php.docx

mySQL - Part 1 - Installation

Điểm ĐỀ THI HK 1 ( ) Môn: Kỹ thuật số Thời gian: 110 phút (SINH VIÊN KHÔNG ĐƯỢC SỬ DỤNG TÀI LIỆU) Chữ kí giám thị HỌ TÊN:. MSSV: NHÓM:.. SINH

Microsoft Word - Template distribute.doc

Nhúng mã-cách khai báo biến Nhúng mã-cách khai báo biến Bởi: Khoa CNTT ĐHSP KT Hưng Yên Nhúng mã javascript trong trang HTML Bạn có thể nhúng JavaScri

Co s? d? li?u (Database)

Bài 4 Tựa bài

NGÔN NGƯ LÂ P TRIǸH Biên tập bởi: nguyenvanlinh

Slide 1

Microsoft Word - form_trong_html.docx

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH ĐỀ CƯƠNG MÔN HỌC 1. THÔNG TIN VỀ MÔN HỌC 1.1. Tên môn học: QUẢN TRỊ HỆ CƠ SỞ DỮ LIỆU 1.

HEADING 1: PHẦN 1: QUẢN LÝ VÀ DUY TRÌ HỆ ĐIỀU HÀNH

Hướng dẫn chuyển hoặc rút tiền Tài khoản FXCM Nic

HỌC VIỆN KỸ THUẬT QUÂN SỰ

Lớp và đối tượng-các hàm và các lớp friend Lớp và đối tượng-các hàm và các lớp friend Bởi: Thanh Hiền Vũ CÁC HÀM VÀ CÁC LỚP friend Một hàm friend của

Bài tập thực hành NNLT Visual Basic GV. Nguyễn Thị Hải Bình BÀI THỰC HÀNH ÔN TẬP 1. Sinh viên ĐỌC CẨN THẨN TẤT CẢ NỘI DUNG trong bài thực hành trước k

Microsoft Word - Tailieu win2003.doc

Chương trình dịch

PowerPoint Template

Các thao tác với CSDL Các thao tác với CSDL Bởi: Khoa CNTT ĐHSP KT Hưng Yên Đọc (Select) dữ liệu trong bảng CSDL & hiển thị ra màn hình. Để đọc dữ liệ

Tài liệu Hướng dẫn sử dụng

BÀI TẬP THỰC HÀNH

ĐIỂM THI KHỐI A ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG ầ ươ ữ ặ ố ả ườ ườ ườ ễ ướ ườ ườ ầ ườ ễ ữ ấ ồ ấ ứ ấ ố ấ ễ ấ ễ ả ấ ễ ướ ấ ễ ấ ễ ấ ễ ấ ễ ấ ấ ồ ố ấ ạ ấ ầ ấ ầ ấ

Truy vấn, Ràng buộc, Trigger Truy vấn, Ràng buộc, Trigger Bởi: Ths. Phạm Hoàng Nhung SQL (Structured Query Language) là ngôn ngữ truy vấn cấu trúc đượ

Microsoft Word - cau-truc-du-lieu-hang-doi.docx

Microsoft Word - Lab09 - WebSieuthisach.doc

Microsoft Word - Huong dan su dung Mailchimp.docx

OpenStax-CNX module: m Giới thiệu về ngôn ngữ C và môi trường turbo C 3.0 ThS. Nguyễn Văn Linh This work is produced by OpenStax-CNX and licens

Làm quen với chương trình Microsoft Excel Làm quen với chương trình Microsoft Excel Bởi: unknown Làm quen với chương trình Những thao tác đầu tiên với

Thực hành trên Rose Thực hành trên Rose Bởi: Đoàn Văn Ban Xây dựng biểu đồ thành phần + Tạo lập mới hoặc mở một biểu đồ thành phần đã được tạo lập trư

THƯ VIỆN TRUNG TÂM ĐHQG-HCM PHÒNG PHỤC VỤ ĐỘC GIẢ * I. CỔNG TRA CỨU & TRUY CẬP TÀI LIỆU KHOA HỌC 3 I. MỤC LỤC TRỰC TUYẾN TVTT Tìm lướt:

Các Vấn Đề Cơ Sở Của Khoa Học Máy Tính Th.S GVC Tô Oai Hùng BAØI TAÄP CHÖÔNG 1 1. Viết giải thuật để mô tả thói quen mỗi buổi sáng của bạn, từ lúc ngh

Lập trình cấu trúc trong Visual Basic Lập trình cấu trúc trong Visual Basic Bởi: Nguyễn Sơn Học xong chương này, sinh viên phải nắm bắt được các vấn đ

Công văn số 879/VTLTNN-NVĐP ngày 19/12/2006 của Cục Văn thư và Lưu trữ Nhà nước v/v hướng dẫn tổ chức tiêu hủy tài liệu hết giá trị

HỘI THI TIN HỌC TRẺ TỈNH AN GIANG ĐỀ CHÍNH THỨC ĐỀ THI LÝ THUYẾT BẢNG A - KHỐI TIỂU HỌC Khóa ngày: Thời gian : 20 phút (không kể thời gian

Microsoft Word - Cau hoi on tap.doc

ĐỀ CƯƠNG MÔN HỌC NHẬP MÔN TIN HỌC

Microsoft Word - Co so du lieu - cap nhat

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 13. Hàm Nội dung 1. Khái niệm hàm 2. Khai báo và sử dụn

ĐỀ CƯƠNG MÔN HỌC NHẬP MÔN TIN HỌC

TRƯỜNG Đ CK Joel Murach lay Harris TÜ SACH BẢN QUYỄN FPT Polytechnic P H P v ä MySQL Murach's PHP and MySQL Khởi động nhanh với PHP & MySQL

HƯỚNG DẪN SỬ DỤNG HỆ THỐNG E-LEARNING Version 2.9 Công Ty TNHH Uratek Website: TP.HCM, 7/2018

XJ-UT311WN_XJ-UT351WN

Microsoft Word - Khai thac AWS EC2_Web hosting.docx

Ch­ng I

Xóa và cập nhật dữ liệu dạng mảng trong PHP Xóa và cập nhật dữ liệu dạng mảng trong PHP Bởi: Phạm Hữu Khang Trong bài trước chúng ta đã làm quen với c

Microsoft Word - co_ban_ve_jquery.docx

MCSA 2012: Distributed File System (DFS) MCSA 2012: Distributed File System (DFS) Cuongquach.com Ở bài học hôm nay, mình xin trình bày về Distributed

Bài 15: QUẢN LÝ BẢNG TÍNH 15.1 Các khái niệm Ô (cell) là đơn vị cơ sở của bảng tính, mỗi ô có địa chỉ riêng, địa chỉ gồm Chỉ số cột Chỉ số dòng, ví dụ

Microsoft PowerPoint - Chuong_06.ppt

CHƯƠNG TRÌNH ĐÀO TẠO

TDDBR CẨM NANG THAO TÁC KIỂM SOÁT, ĐẢM BẢO CHẤT LƯỢNG (XÁC MINH BẰNG ẢNH VỆ TINH)

Hướng dẫn sử dụng

Hướng dẫn sử dụng Virtualmin

Slide 1

ITS Project

Giới thiệu về ADO.NET Giới thiệu về ADO.NET Bởi: phamvanviet truonglapvy Trong thực tế, có rất nhiều ứng dụng cần tương tác với cơ sở dữ liệu..net Fra

9-KiemThu

Hướng dẫn chuyển tiền trong và ngoài Techcombank Chức năng này giúp Quý khách chuyển tiền giữa các tài khoản của doanh nghiệp; hoặc chuyển tiền cho cá

Công cụ trong VB6 Công cụ trong VB6 Bởi: FPT Software Để tìm hiểu về các công cụ trong VB chúng ta sẽ đề cập tới Add-in Các công cụ trong add-in Trình

Backup Cloud Server

PHẦN 8: LỊCH TUẦN I. Giới thiệu: Chương trình lịch tuần với các tính năng như sau: Lịch chạy trên giao diện WEB với CSDL chạy tập trung. Theo dõi lịch

Chương 1:

CÔNG BÁO/Số /Ngày PHẦN VĂN BẢN QUY PHẠM PHÁP LUẬT CHÍNH PHỦ CHÍNH PHỦ Số: 92/2011/NĐ-CP CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc l

Hãy chọn phương án đúng CÂU HỎI TRẮC NGHIỆM TIN HỌC 7 HK1 Câu 1: Bảng tính thường được dùng để: a. Tạo bảng điểm của lớp em b. Bảng theo dõi kết quả h

QUỐC HỘI Luật số: /201 /QH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc Dự thảo 2 LUẬT CHỨNG KHOÁN Căn cứ vào Hiến pháp nước Cộng hò

Hướng dẫn sử dụng SSI Pro Trading dành cho MG

Những cơ sở của ngôn ngữ C# Những cơ sở của ngôn ngữ C# Bởi: phamvanviet truonglapvy Trong chương này sẽ trình bày về hệ thống kiểu trong C#; phân biệ

TRƯỜNG ĐH KH XH& NV TRUNG TÂM TIN HỌC CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập Tự do Hạnh phúc TP.Hồ Chí Minh, ngày 23 tháng 02 năm 2013 ĐỀ CƯƠNG CH

Bài tập thực hành Chuyên đề 1 CNPM - Java Khoa CNTT- Trường ĐH Công nghệ TP.HCM Lab 01: LẬP TRÌNH JAVA CƠ BẢN VỚI NET BEANS A. MỤC TIÊU: Hướng dẫn tải

Microsoft Word - dinh_dang_smartart_trong_powerpoint_2010.docx

DỰ ÁN THÚC ĐẨY THÀNH LẬP TRUNG TÂM SỐNG ĐỘC LẬP DÀNH CHO NGƯỜI KHUYẾT TẬT TẠI THÀNH PHỐ HỒ CHÍ MINH, VIỆT NAM (01/02/ /01/20

ĐỀ cương chương trình đẠi hỌc

Array, Indexer và Collection Array, Indexer và Collection Bởi: phamvanviet truonglapvy Mảng (Array) Mảng là một tập hợp các phần tử có cùng kiểu, được

Cách thức sử dụng phần mềm MT4 của FxPro

Kiểu dữ liệu văn bản Kiểu dữ liệu văn bản Bởi: PGS. TS. NGƯT Phạm Văn Huấn Ngoài những dữ liệu số như các số nguyên, số thực, máy tính còn có thể lưu

Microsoft Word - 8. Practical IT Deparment Plan Guidance_Final

Hệ điều hành Bài tập tuần 6 1 Quản lý bộ nhớ Bài tập 1 : Xem thông tin bộ nhớ 1. Sử dụng top, ps đọc thông tin về kích thước vùng nhớ của 1 tiến trình

Microsoft Word - Co so du lieu phan tan - cap nhat

Chương II - KIẾN TRÚC HỆ ĐIỀU HÀNH

I

Microsoft Word - TNC VIETNAM - Huong dan tong quat PM.doc

Các giá trị của chúng ta Khuôn khổ cho hoạt động kinh doanh thường ngày của chúng ta Chúng ta chia sẻ ba giá trị cốt lõi - Tập Thể, Niềm Tin và Hành Đ

Bài 3 Tựa bài

MÁY TOÀN ĐẠC ĐIỆN TỬ LEICA TCR1101

ĐÊ CƯƠNG CHI TIẾT HỌC PHẦN

Chương trình dịch

Bản ghi:

Bài thực hành số 8 ORACLE LABEL SECURITY (3) Tóm tắt nội dung: Che dấu cột thông tin chính sách Sử dụng hàm gán nhãn Các view của OLS I. Một số kỹ thuật nâng cao trong OLS A. Lý thuyết 1. Che giấu cột thông tin nhãn dữ liệu Để tránh việc hiển thị cột chứa thông tin nhãn của chính sách 1, người quản trị có thể thiết lập tùy chọn HIDE khi gán chính sách cho bảng. Một khi chính sách đã được áp dụng, trạng thái ẨnKhông Ẩn của cột không thể được thay đổi trừ khi ta remove chính sách khỏi bảng với tham số DROP_COLUMN bằng TRUE. Sau đó chính sách có thể được áp dụng lại với trạng thái mới. Khi người dùng INSERT dữ liệu vào bảng có trạng thái ẩn cột chính sách, giá trị của cột chứa nhãn sẽ không bị yêu cầu phải insert. Câu lệnh SELECT * sẽ không tự động trả về giá trị của cột ẩn, trừ khi nó được truy xuất trực tiếp. Câu lệnh DESCRIBE cũng sẽ không hiển thị thông tin cột ẩn. 2. Hàm gán nhãn Trong bài lab 7 sinh viên đã được giới thiệu một số cách để gán nhãn chính sách cho một hàng dữ liệu và đã được thực hành gán tường minh nhãn cho từng dòng dữ liệu. Tuy nhiên, có những bảng dữ liệu lớn, không thể gán nhãn cho từng trường hợp. Thay vào đó, ta có thể sử dụng một hàm (function) do mình hiện thực để OLS 1 Sinh viên xem lại khái niệm label tag ở lab 6. BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 1

sẽ tự động gán nhãn mỗi khi có hàng mới được insert vào bảng dữ liệu được bảo vệ. Xem phần thực hành để hiểu rõ hơn về cách thức làm việc này. Hàm gán nhãn sẽ override 2 tùy chọn LABEL_DEFAULT và LABEL_UPDATE. Kết quả trả về của hàm gán nhãn thuộc kiểu dữ liệu LBACSYS.LBAC_LABEL. Hàm TO_ LBAC_DATA_LABEL dùng để chuyển đổi một nhãn ở kiểu chuỗi thành kiểu LBACSYS.LBAC_LABEL. Lưu ý, tài khoản LBACSYS phải có quyền EXECUTE trên hàm gán nhãn. Chủ sỡ hữu của hàm gán nhãn phải có quyền EXECUTE trên hàm TO_ LBAC_DATA_LABEL với tuỳ chọn WITH GRANT OPTION. B. Thực hành 1. Che dấu cột thông tin chính sách Do trong bài lab trước, ta đã áp dụng chính sách cho bảng mà không có tùy chọn HIDE nên trong bài lab này ta phải remove chính sách (xóa cả cột thông tin chính sách), thực hiện lại đoạn code gán nhãn trong bài lab trước và gán lại chính sách. sa_policy_admin.remove_table_policy (policy_name => 'ACCESS_LOCATIONS', schema_name => 'HR', table_name => 'LOCATIONS', drop_column => true); SELECT * FROM hr.locations; Ta nhận thấy bây giờ cột OLS_COLUMN đã được xóa. Gán lại chính sách cho bảng với NO_CONTROL và HIDE: sa_policy_admin.apply_table_policy BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 2

(policy_name schema_name table_name table_options => 'ACCESS_LOCATIONS', => 'HR', => 'LOCATIONS', => 'HIDE,NO_CONTROL'); Gán lại nhãn cho dữ liệu trong bảng (do lúc remove đã xóa mất cột chứa thông tin chính sách): ('ACCESS_LOCATIONS', 'CONF'); ('ACCESS_LOCATIONS', 'CONF::US') WHERE country_id = 'US'; ('ACCESS_LOCATIONS', 'CONF::UK') WHERE country_id = 'UK'; ('ACCESS_LOCATIONS', 'CONF::CA') WHERE country_id = 'CA'; ('ACCESS_LOCATIONS', 'CONF:SM:UK,CA') WHERE (country_id = 'CA' and city = 'Toronto') or (country_id = 'UK' and city = 'Oxford'); ('ACCESS_LOCATIONS', 'CONF:HR:UK') WHERE country_id = 'UK' and city = 'London'; BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 3

('ACCESS_LOCATIONS', 'SENS:HR,SM,FIN:CORP') WHERE country_id = 'CH' and city = 'Geneva'; COMMIT ; Tiếp theo ta cần gán lại chính sách với tùy chọn HIDE và READ_CONTROL: sa_policy_admin.remove_table_policy (policy_name => 'ACCESS_LOCATIONS', schema_name => 'HR', table_name => 'LOCATIONS'); sa_policy_admin.apply_table_policy (policy_name => 'ACCESS_LOCATIONS', schema_name => 'HR', table_name => 'LOCATIONS', table_options => 'HIDE,READ_CONTROL,WRITE_CONTROL,CHECK_CONTROL'); Bây giờ ta thử truy xuất bảng Locations: SELECT * FROM hr.locations; no rows selected DESCRIBE hr.locations; Name Null? Type --------------- ---------- ------ LOCATION_ID NOT NULL NUMBER(4) STREET_ADDRESS VARCHAR2(40) POSTAL_CODE VARCHAR2(12) BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 4

CITY NOT NULL VARCHAR2(30) STATE_PROVINCE VARCHAR2(25) COUNTRY_ID CHAR(2) Kết quả của lệnh SELECT là no rows selected. Chỉ có lệnh DESCRIBE có trả về kết quả. Nguyên nhân là do bây giờ bảng này đã được bảo vệ, chỉ những người được cấp quyền OLS cụ thể mới có thể truy xuất. Ta log in lại bằng user SKING: CONN skingsking; SELECT * FROM hr.locations WHERE city = 'Bern'; SELECT label_to_char (ols_column) as label, locations.* FROM hr.locations WHERE city = 'Bern'; Ta thấy trong câu lệnh SELECT thứ 2, ta có chỉ định rõ cột ols_column nên cột này mới xuất hiện. Trong kết quả truy vấn của câu SELECT thứ nhất không có cột thông tin chính sách này. 2. Dùng hàm gán nhãn Trong phần thực hành này, ta sẽ dùng bảng Employees của schema HR để minh họa. Cấp các quyền cần thiết cho sec_admin trên bảng Employees: CONN systemsystem; GRANT select, insert, update ON hr.employees TO sking; GRANT select, insert, update ON hr.employees TO sec_admin; GRANT create procedure TO sec_admin; CONN lbacsyslbacsys; GRANT execute ON to_lbac_data_label TO sec_admin WITH GRANT OPTION; Tiếp theo ta viết một hàm gán nhãn dựa trên điều kiện của thông tin nhân viên: CREATE OR REPLACE FUNCTION sec_admin.gen_emp_label (Job varchar2, Sal number) BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 5

RETURN LBACSYS.LBAC_LABEL AS i_label varchar2(80); ************* Xác định level ************* IF Sal > 17000 THEN i_label := 'SENS:'; ELSIF Sal > 10000 THEN i_label := 'CONF:'; ELSE i_label := 'PUB:'; END IF; ************* Xác định compartment ************* IF Job LIKE '%HR%' THEN i_label := i_label 'HR:'; ELSIF (Job LIKE '%MK%') OR (Job LIKE '%SA%') THEN i_label := i_label 'SM:'; ELSIF Job LIKE '%FI%' THEN i_label := i_label 'FIN:'; ELSE i_label := i_label ':'; END IF; ************* Xác định groups ************* i_label := i_label 'CORP'; RETURN TO_LBAC_DATA_LABEL('ACCESS_LOCATIONS',i_label); Ta cần gán cho LBACSYS quyền thực thi trên hàm gán nhãn vừa được tạo: GRANT execute ON sec_admin.gen_emp_label TO lbacsys; Ta chỉ định thủ tục vừa hiện thực làm hàm gán nhãn cho bảng Employees: BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 6

SA_POLICY_ADMIN.APPLY_TABLE_POLICY ( policy_name => 'ACCESS_LOCATIONS', schema_name => 'HR', table_name => 'EMPLOYEES', table_options => 'READ_CONTROL,WRITE_CONTROL,CHECK_CONTROL', label_function => 'sec_admin.gen_emp_label (:new.job_id, :new.salary)', PREDICATE => NULL); Sinh viên tự kiểm tra kết quả của hàm gán nhãn, bằng cách log in vào tài khoản có quyền thao tác trên bảng EMPLOYEES (ví dụ SKING) rồi insert, update một dòng dữ liệu trong bảng và xem xét giá trị của cột chứa nhãn dữ liệu. II. Các view thông tin của OLS Các thông tin về các chính sách của OLS được lưu trong data dictionary. Ta có thể xem các thông tin này thông qua các view của OLS. View DBA_SA_USERS: hiển thị thông tin về tất cả các chính sách có trong CSDL. DBA_SA_USER_LEVELS: hiển thị thông tin level của mọi người dùng. DBA_SA_USER_COMPARTMENTS: hiển thị thông tin compartment của mọi người dùng. DBA_SA_USER_GROUPS: hiển thị thông tin group của mọi người dùng. Để xem tất cả các view trên cần log in vào tài khoản LBACSYS hoặc được cấp quyền SELECT từ LBACSYS. conn lbacsyslbacsys; select * from DBA_SA_USERS; select * from DBA_SA_USER_LEVELS; select * from DBA_SA_USER_COMPARTMENTS; select * from DBA_SA_USER_GROUPS; BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 7

III. Bài tập 1. Viết hàm gán nhãn GET_CUSTOMER_LABEL cho các khách hàng trong bảng CUSTOMERS đã tạo ở bài lab 7 theo điều kiện sau: Credit > 2000: level 3; 500 < credit <= 2000: level 2; còn lại level 1. Cust_type = Platinum thì compartment là Manager, còn lại là Employee. Group gán theo region. 2. Thực hiện các câu lệnh cần thiết để bảng trên được gán nhãn và được áp dụng chính sách REGION_POLICY đã tạo trong bài lab 6. 3. Thực hiện một số câu lệnh để kiểm tra tác dụng của chính sách. BM Hệ Thống Thông Tin Khoa KH & KTMT ĐH Bách Khoa HCM 8