Kiến trúc bảo mật: Định danh người sử dụng

Định danh người dùng

Định danh người dùng được thực hiện theo hệ thống cổ điển khi mà nhập tên người dùng và mật khẩu. Tên người dùng phải bao gồm ít nhất ba biểu tượng và mật khẩu ít nhất là 6 biểu tượng. Điều này đảm bảo được mức bảo vệ cao từ những kẻ muốn phá mật khẩu của bạn.

Sau khi đăng ký tài khoản người dùng, cơ sở dữ liệu lưu giữ tên người sử dụng trong form mở và một loại/sự phối hợp(hàm băm) biểu tượng đặc biệt được tính toán dựa vào mật khẩu sử dụng thuật toán MD5 và một thuật toán đặc biệt mà chỉ dành riêng cho mỗi site.

Hàm băm không thể được sử dụng để lưu giữ mật khẩu trong form khởi tạo. Ngoài ra nó nhấn mạnh vào người dùng mà có tên giống nhau trên các site khác nhau thì sẽ có hàm băm khác nhau, nó loại trừ việc khôi phục mật khẩu không được sử dụng thường xuyên đối với những người dùng đã đăng ký trên một hay nhiều site.

Những người dùng có tên trùng nhau không được đăng ký. Bản chất là kiểm tra cả trên mức phần mềm và cơ sở dữ liệu sử dụng khóa(key) duy nhất. hầu hết các sơ sở dữ liệu không linh hoạt với trường hợp tên người dùng. Trong phần mềm Bitrix Site Manager trường hợp này được quan tâm đến và xem chính xác được tên người dùng được yêu cầu.

Để lưu giữ các kết quả các tài khoản trên site giữa các khách hàng yêu cầu trên các trang khác nhau, một kỹ thuật phiên PHP được sử dụng. Nó được dựa trên các cookies phiên tạm thời, nó không được lưu giữ trong máy tính của người sử dụng và bị xóa khi trình duyệt đóng.

Các chú ý dành cho người quản trị:

Xem xét thực tế mà PTP lưu giữ các tệp tin session trên server trong các tệp tin tạm thời, bạn nên kiểm tra vùng lưu giữ trong tệp tin php.ini (biến session.save_path) và chắc chắn thư mục này được bảo mật rất cao. Nếu bạn sử dụng hosting được chia sẻ, chắc chắn các tệp tin cá nhân được sử dụng cho mỗi website và những người dùng khác không thể duyệt hay thay đổi thư mục này. Để bảo mật hơn nữa, bạn có thể sử dụng cơ chế lưu giữ dữ liệu phiên trong cơ sở dữ liệu hay bộ nhớ bằng cách biên soạn biến session.save_handler trong tệp tin php.ini.

Nó được đề xuất không bao gồm bộ nhận dạng phiên trong liên kết và đặc điểm này không thể bởi cài đặt tệp tin php.ini: session.use_trans_sid = 0. chú ý trong biến session.cache_expire. Thời gian yêu cầu là 180 giây.

Sau khi nhập tên người dùng và mật khẩu đúng, phiên khách hàng được đánh dấu khi tài khoản đăng nhập thành công. Không có chữ ký, các tên, các  mật khẩu được truyền vào mục cookie tới một khách, cho phép xác định phiên này để được ủy quyền hay làm sai các kết quả của tài khoản bằng cách chuyển đổi các biến trong cookie.

Sự xem xét các sự việc mà dữ liệu được truyền từ/ tới server trong form mở qua giao thức HTTP, dữ liệu có thể bị chặn lại về lý thuyết trên lớp vận chuyển(transport). Do đó khi phát triển doanh nghiệp, ngân hàng phức tạp hay các ứng dụng thiết yếu, nên sử dụng giao thức HTTPS khi làm việc với server và sự mã hóa SSL. Người dùng có thể bắt buộc phải sử dụng HTTPS server khi muốn truy cập vào mục site quản trị.




1.jpg
3.jpg
2.jpg