Bài giảng - Công nghệ Web và ứng dụng 5.1 Khac

22 72 0
Bài giảng - Công nghệ Web và ứng dụng 5.1 Khac

Đ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

Bài giảng - Công nghệ Web và ứng dụng 5.1 Khac tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về t...

Phân quyền người dùng Phân quyền người dùng  Phân quyền nhằm trả lời câu hỏi:  Người dùng nào? Được làm gì? Trên đối tượng nào?  Tổ chức phân quyền ứng dụng web trả lời câu hỏi  Sự phức tạp phân quyền người dùng phụ thuộc  Qui mô ứng dụng  Số lượng loại (nhóm) người dùng  Trình độ kinh nghiệm người thiết kế phát triển Phân quyền người dùng  Tổ chức kiểm tra người dùng dựa vào bảng mô tả Người dùng / Nhóm An, Hoa An, Hoa An, Hoa An, Hoa An An … Quyền Xem Thêm Sửa Xóa Xem Thêm … Tài nguyên / Module Tin Tin Tin Tin Loại tin Loại tin … Phân quyền người dùng  Về tổ chức liệu: cần bảng người dùng nhóm  Mỗi người dùng hay nhiều nhóm  Mỗi nhóm • Diễn tả hành động (xem, thêm, …) loại tài nguyên • Hoặc diễn tả khả quản lý liệu theo module (quản trị laptop, tin, quảng cáo, user) • Hoặc diễn tả theo phòng ban chức  Nhiều loại tài ngun, ví dụ: loại tin, tin, … • Số lượng tài ngun có cố định hay khơng  Quyền áp dụng cho nhóm hay tài nguyên riêng lẻ Phân quyền người dùng  Kiểm tra quyền  Được thực đầu trang php có nhu cầu kiểm tra quyền • Code kiểm tra quyền đặt file riêng, sau dùng require  Hàm kiểm tra quyền dựa vào group mà người dùng đăng nhập thành viên tra bảng Roles  Khi người dùng login, username userid lưu session Tăng tốc website Tăng tốc website  Website hoạt động nhanh hay chậm phụ thuộc vào nhiều yếu tố:      Khả server Băng thơng đường truyền Vị trí địa lý nơi đặt server Code website có tối ưu hay khơng Trong phạm vi môn quan tâm đến yếu tố code website Tăng tốc website  Giảm bớt request  Thiết kế đơn giản: sử dụng lượng vừa phải hình ảnh, flash, script, … website  Gom file CSS, JavaScript lại với  Sử dụng CSS sprites (gom nhiều ảnh lại với thành một) • Nên gom ảnh nhỏ thành cột dọc, để xác định tọa độ cho dễ • (http://www.csssprites.com, http://spritegen.com)  Sử dụng Image Maps: Gom ảnh nhỏ thành ảnh lớn Tăng tốc website  Sử dụng Content Delivery Network (CDN)  Đặt website vùng địa lý mà phần lớn người dùng website bạn  Sử dụng CDN hoạt động • Ví dụ Google lưu trữ framework jQuery, prototype, MooTools, Dojo, script.aculo.us hệ thống server Tăng tốc website  VD sử dụng jQuery CDN  VD sử dụng Bootstrap CDN Tăng tốc website Nén HTML với gzip: đa số trình duyệt có khả giải nén trang html  Các cách để nén với thư viện zlib compress php  php_flag zlib.output_compression On // htaccess zlib.output_compression = On // php.ini  Hoặc đặt lệnh sau đầu trang ini_set(“zlib.output_compression”, “On”) ob_start('ob_gzhandler') 11 Tăng tốc website  Cache client: có hai cách thức điều khiển cache client thơng qua http header: expire cache-control  Expire $offset = 3600 * 24; $expire = "Expires: " gmdate("D, d M Y H:i:s", time() + $offset) " GMT"; header($expire);  Cache-Control $expire = "Cache-Control: max-age=3600, must-revalidate"; header($expire); 12 Tăng tốc website  Tối ưu truy vấn sql  Giảm join bảng  Index hợp lý field  Chấp nhận liệu dư thừa để tăng tốc độ xử lý  Tuyệt đối không dùng SELECT *, select field cần dùng 13 Tăng tốc website  PHP Cache  Opcode: code trang PHP dịch xong lưu share memory để dùng lại mà thông dịch lệnh file có request Có nhiều giải pháp APC, XCache, eAccelerator  File caching: Nội dung file lưu nơi sau kết xuất lần Với request đến sau, đọc file kết trả 14 Tăng tốc website  PHP Cache  Memory cache • Những liệu riêng user, lưu vào session để dùng username, họ tên, email, giới tính… • Những liệu kết xuất lần đầu tiên, thay lưu file cache, bạn lưu table để dùng lại 15 Bảo mật website Bảo mật website  Bảo Mật Session:  Khi hàm session_start() gọi, session tạo  Sau php send header để tạo cookie tên PHPSESSID có giá trị sessionid  Mỗi lần request, sessionid gửi lại server  Nếu user A lấy sessionid user B login, coi A login với tư cách B Click here 17 Bảo mật website  Bảo Mật Session:  Giải pháp: • Gọi lại hàm session_regenerate_id() để sinh sessionid • Hoặc lưu thêm số thơng tin user vào session, kiểm tra lại 18 Bảo mật website  Chống SQL Injection (Database Security)  Khi login với username a' or 1=1 limit 0,1 # password 123 câu lệnh trở thành SELECT * FROM user WHERE username = 'a' OR = limit 0,1 # Password=123  ln có liệu, từ dấu # trở sau bị bỏ qua (nghĩa MySql không quan tâm # Password=123 ) 19 Bảo mật website  Chống SQL Injection  Giải pháp: • Bảo vệ câu lệnh SQL cách kiểm soát chặt chẽ tất liệu nhập nhận từ người dùng • Trong file php.ini cấu hình magic_quotes_gpc = On 20 Bảo mật website  SSL mã hóa liệu  SSL giao thức web dùng để thiết lập bảo mật webserver client  Tất liệu truyền mã hóa  Với SSL, browser server kiểm tra tính hợp lệ lẫn nhau, sau mã hóa liệu truyền  Cấu hình webserver hỗ trợ (httpd.conf) • LoadModule ssl_module modules/mod_ssl.so  Các website lớn dùng SSL Certificates (free thương mại) để xác thực 21 Bảo mật website  Chống công DDos (Distributed Denial of Service)  Chống iframe (mượn website để chuyển công) if (top.location != self.location) {top.location = self.location}  Thiết lập file htaccess  Giới hạn số kết nối website thời điểm  Sử dụng captcha image 22 ... http://spritegen.com)  Sử dụng Image Maps: Gom ảnh nhỏ thành ảnh lớn Tăng tốc website  Sử dụng Content Delivery Network (CDN)  Đặt website vùng địa lý mà phần lớn người dùng website bạn  Sử dụng CDN hoạt... Được làm gì? Trên đối tượng nào?  Tổ chức phân quyền ứng dụng web trả lời câu hỏi  Sự phức tạp phân quyền người dùng phụ thuộc  Qui mô ứng dụng  Số lượng loại (nhóm) người dùng  Trình độ kinh... time() + $offset) " GMT"; header($expire);  Cache-Control $expire = "Cache-Control: max-age=3600, must-revalidate"; header($expire); 12 Tăng tốc website  Tối ưu truy vấn sql  Giảm join bảng 

Ngày đăng: 11/12/2017, 18:49

Từ khóa liên quan

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

Tài liệu liên quan