Danh mục tài liệu

Cải tiến CI/CD pipeline với các công cụ an toàn thông tin mã nguồn mở

Số trang: 5      Loại file: pdf      Dung lượng: 324.83 KB      Lượt xem: 25      Lượt tải: 0    
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Trong nghiên cứu này, tác giả trình bày một cách tiếp cận cải tiến CI/CD pipeline bằng cách tích hợp các công cụ an toàn thông tin được giới thiệu bởi Open Source Foundation for Application Security Project (OWASP). Ngoài ra, cũng trình bày những khía cạnh cần đánh đổi khi triển khai yếu tố an toàn thông tin vào CI/CD pipeline.
Nội dung trích xuất từ tài liệu:
Cải tiến CI/CD pipeline với các công cụ an toàn thông tin mã nguồn mở CẢI TIẾN CI/CD PIPELINE VỚI CÁC CÔNG CỤ AN TOÀN THÔNG TIN MÃ NGUỒN MỞ Võ Văn Lên 1, Nguyễn Thành Phương 1 1. Ban đề án Chuyển đổi số, Trường Đại học Thủ Dầu MộtTÓM TẮT Continuous Integration (CI) và Continuous Deployment (CD) là các khía cạnh quantrọng trong kỹ nghệ phần mềm hiện nay. Trong các mô hình tổ chức sản xuất phần mềm hiệnđại CI/CD pipeline đã trở thành một thành tố bắt buộc nhằm cải thiện tốc độ cũng như giảmthiểu công sức của đội ngũ trong việc tích hợp và triển khai các hạng mục công việc đã hoàntất. Trong bối cảnh các rủi ro về an toàn thông tin tăng cao, việc triển khai các công cụ an ninhcho CI/CD pipeline đã trở thành một xu hướng tất yếu. Việc triển khai các công cụ an toànthông tin xuyên suốt pipeline theo triết lý “Shift Left” sẽ giúp phát hiện sớm các vấn đề về antoàn thông tin nhằm xử lý kịp thời và tiết giảm chi phí chỉnh sửa. Trong nghiên cứu này, chínhtôi trình bày một cách tiếp cận cải tiến CI/CD pipeline bằng cách tích hợp các công cụ an toànthông tin được giới thiệu bởi Open Source Foundation for Application Security Project(OWASP). Ngoài ra, chúng tôi cũng trình bày những khía cạnh cần đánh đổi khi triển khai yếutố an toàn thông tin vào CI/CD pipeline. Từ khóa: CI/CD pipeline, DevSecOps, OWASP.1. ĐẶT VẤN ĐỀ DevOps được hình thành với mục đích đẩy nhanh việc cung cấp phần mềm chất lượngcao bằng cách đưa tự động hóa, tốc độ, phản hồi chặt chẽ và cộng tác đa chức năng vào vòngđời phát triển phần mềm (Myrbakken và nnk., 2017). DevSecOps tận dụng những triết lý tươngtự này kết hợp với yếu tố an toàn thông tin làm cho quá trình phát triển phần mềm trở nên antoàn hơn (Hình 1). Hình 1. Quy trình DevSecOps (Nguồn: www.atlassian.com) 477 Pipeline về bản chất là quy trình phát triển phần mềm thông qua lộ trình gồm các pha cốtlõi bao gồm nhưng không giới hạn các pha cài đặt, kiểm thử và triển khai (Zampetti và nnk.,2021). Bằng cách tự động hóa một phần hoặc toàn bộ pipeline, mục tiêu cơ bản là giảm thiểusai sót của cá nhân và duy trì quy trình nhất quán trong cách triển khai. Các công cụ được sửdụng trong pipeline thường bao gồm các công cụ biên dịch mã nguồn, kiểm thử đơn vị, phântích mã nguồn, kiểm thử an toàn và đóng gói. Về cơ bản, các nền tảng phát triển phần mềm và các pipeline có một số sự hỗ trợ mặc địnhvề an toàn thông tin. Tuy nhiên, các sự hỗ trợ mặc định không bao phủ hết các yêu cầu về an toànthông tin trong bối cảnh hiện nay. Do đó, hiện nay, các pipeline được bổ sung nhiều công cụ vềan toàn thông tin để đạt được các yêu cầu về an toàn thông tin. Tùy theo từng lĩnh vực phần mềmcụ thể, các công cụ khác nhau được cân nhắc sử dụng để đạt được hiệu quả cần thiết.2. PHƯƠNG PHÁP NGHIÊN CỨU Hiện nay, có nhiều công cụ triển khai CI/CD pipeline. Một số công cụ nổi bật có thể kểđến như Bitbucket Pipelines (Atlassian, n.d.), Jenkins (Jenkins, n.d.), AWS CodePipeline(Amazon, n.d.), CircleCI (CircleCI, n.d.), Azure Pipelines (Microsoft, n.d.), GitLab (GitLab,n.d.), Atlassian Bamboo (Atlassian, n.d.). Các công cụ có các đặc trưng rất riêng (Bảng 1) vàtùy theo tính chất của từng dự án mà nhóm dự án sẽ chọn lựa công cụ phù hợp. Bảng 1. Mô tả các công cụ triển khai CI/CD pipeline Công cụ Mô tả Đặc trưng Bitbucket Pipelines CI được tích hợp trực tiếp vào Dễ thiết lập và cấu hình Bitbucket do Atlassian cung cấp. Bitbucket Đồng nhất trải nghiệm với Pipelines là bước tiếp theo dễ dàng để kích hoạt CI Bitbucket Bitbucket Pipelines cho các dự án đã có sẵn trên Bitbucket. Bitbucket Dịch vụ đám mây cung cấp bởi Pipelines được quản lý dưới dạng mã để có thể dễ bên thứ 3 dàng xác định các định nghĩa pipeline và bắt đầu xây dựng. Bitbucket Pipelines cũng cung cấp CD. Jenkins là một công cụ CI đã được minh chứng qua On-premise quá trình lâu dài. Jenkins là công cụ mã nguồn mở Mã nguồn mở Jenkins và được duy trì bởi cộng đồng. Jenkins đặc biệt phù Addon/Plugin đa dạng hợp cho các dự án build trên môi trường on-premise. Amazon Web Service (AWS) là một nhà cung cấp Toàn bộ triển khai trên đám mây hạ tầng đám mây nổi bật. AWS cung cấp hoàn chỉnh Tích hợp với các dịch vụ khác bộ công cụ liên quan đến hạ tầng và phát triển phần của AWS AWS CodePipeline mềm. CodePipeline là công cụ CI chính của AW ...

Tài liệu được xem nhiều:

Tài liệu có liên quan: