Điều 14. An toàn phần mềm ứng dụng
14.1. Yêu cầu chung:
14.1.1. Tài liệu kỹ thuật:
- Tài liệu đối với phần mềm do đơn vị tự xây dựng gồm:
■ Yêu cầu người sử dụng;
■ Phân tích thiết kế hệ thống;
■ Quá trình phát triển
■ Thử nghiệm
■ Triển khai
■ Quản lý phiên bản và hướng dẫn vận hành;
- Tài liệu kèm theo phần mềm đóng gói do bên ngoài cung cấp gồm:
■ Tài liệu kỹ thuật
■ Tài liệu hướng dẫn sử dụng phần mềm.
14.1.2. Phần mềm phải tích hợp các giải pháp xác thực, kiểm soát truy nhập và mã hoá dữ liệu theo các quy định tại các Điều 8, Điều 9 và Điều 10 của Quy chế này;
14.1.3. Phần mềm phải vận hành ổn định, xử lý chính xác và đảm bảo tính nhất quán của dữ liệu;
14.1.4. Các phần mềm nghiệp vụ và tài liệu kỹ thuật phải được nhân bản và lưu giữ an toàn tối thiểu tại hai địa điểm tách biệt.
14.2. Phân tích, thiết kế và viết phần mềm:
14.2.1. Các yêu cầu an toàn, bảo mật của nghiệp vụ phải được xác định trước và tổ chức, triển khai vào toàn bộ quy trình phát triển phần mềm từ khâu phân tích thiết kế đến triển khai vận hành, sao lưu dự phòng và bảo trì khắc phục sự cố;
14.2.1. Các tài liệu về an toàn, bảo mật của phần mềm phải được hệ thống hoá và lưu trữ, sử dụng theo chế độ “Mật”.
14.3. Kiểm tra, thử nghiệm phần mềm:
Mọi phần mềm triển khai vào thực tế phải qua các bước kiểm tra, thử nghiệm sau:
14.3.1. Lập và phê duyệt kế hoạch, kịch bản thử nghiệm. Việc thử nghiệm phải đảm bảo không ảnh hưởng đến hoạt động bình thường của nghiệp vụ và các hệ thống CNTT khác;
14.3.2. Tiến hành thử nghiệm trên môi trường riêng biệt. Lập báo cáo kết quả thử nghiệm trình cấp lãnh đạo phê duyệt đưa vào sử dụng;
14.3.3. Việc sử dụng dữ liệu thật trong quá trình thử nghiệm phải có biện pháp phòng ngừa tránh bị lợi dụng hoặc gây nhầm lẫn.
14.4. Triển khai, vận hành phần mềm:
14.4.1. Việc triển khai phần mềm không được ảnh hưởng đến an toàn, bảo mật của các hệ thống CNTT đã có;
14.4.2. Trước khi triển khai phần mềm, phải đánh giá những rủi ro của quá trình triển khai đối với hoạt động nghiệp vụ, các hệ thống CNTT liên quan và lập, triển khai các phương án hạn chế, khắc phục rủi ro.
14.5. Quản lý phiên bản phần mềm:
14.5.1. Đối với mỗi yêu cầu thay đổi phần mềm, phải phân tích đánh giá ảnh hưởng của việc thay đổi đối với nghiệp vụ và các hệ thống CNTT có liên quan khác của đơn vị;
14.5.2. Các phiên bản phần mềm sau khi thử nghiệm thành công phải được quản lý chặt chẽ, tránh bị sửa đổi bất hợp pháp và sẵn sàng cho việc triển khai;
14.5.3. Đi kèm với phiên bản phần mềm mới phải có các chỉ dẫn rõ ràng về nội dung thay đổi, hướng dẫn cập nhật phần mềm và các thông tin liên quan khác:
14.5.4. Chỉ được triển khai vào hoạt động nghiệp vụ phiên bản phần mềm đã được lãnh đạo đơn vị phê duyệt cho triển khai.
14.6. Quản lý mã nguồn phần mềm:
14.6.1. Mã nguồn phần mềm phải được quản lý chặt chẽ để tránh bị sử dụng hoặc sửa đổi trái phép;
14.6.2. Phải có các thoả thuận, ràng buộc pháp lý về việc quản lý, chỉnh sửa mã nguồn dùng cho bảo trì, sửa chữa, cập nhật lỗ hổng bảo mật, cập nhật tính năng trong trường hợp những phần mềm đó do đối tác bên ngoài phát triển và không bàn giao mã nguồn.
14.7. Cơ sở dữ liệu của phần mềm ứng dụng không nên được nằm cùng máy chủ vận hành ứng, dụng, mà phải nằm riêng tại máy chủ cơ sở dữ liệu trong vùng An toàn và được kiểm soát bởi hệ thống bức tường lửa.