

# SEC11-BP07 定期評估管道的安全屬性
<a name="sec_appsec_regularly_assess_security_properties_of_pipelines"></a>

 採用 Well-Architected 安全原則保護您的流程，特別注意權限的區隔。定期評估管道基礎設施的安全屬性。有效管理管道*的*安全，就能讓您的軟體*通過*管道中重重的安全性考驗。

 **預期成果：**用於建置與部署軟體的管道，皆遵循針對環境中其他任何工作負載所建議的相同做法。您在管道中實作的測試，無法由使用管道的團隊編輯。您只提供使用臨時憑證進行部署時所需的許可權給管道。您可以實作防護措施，以避免將管道部署到錯誤的環境。您可以將管道設定為發出狀態，如此才能驗證建置環境的完整性。

**常見的反模式：**
+  安全測試可能遭建置人員避開。
+  部署管道的權限過於廣泛。
+  管道未設定進行輸入驗證。
+  未定期審查與 CI/CD 基礎設施關聯的許可。
+  使用長期有效或硬式編碼的登入資料。

**建立此最佳實務的優勢：**
+  經由此類管道完成建置與部署的軟體完整性具備更高的可信度。
+  可在發現可疑活動時停止部署作業。

** 未建立此最佳實務時的風險暴露等級：**高 

## 實作指引
<a name="implementation-guidance"></a>

 您的部署管道是軟體開發生命週期的重要元件，應遵循與環境中其他任何工作負載相同的安全原則和做法。這包括實作適當的存取控制、驗證輸入，以及定期審查與稽核與您的 CI/CD 基礎設施相關聯的許可權。

 確認負責建置和部署應用程式的團隊，無法編輯或略過管道中實作的安全測試和檢查。這種將有疑慮的分隔的做法，有助於維護建置和部署程序的完整性。

 剛開始，請考慮採用 [AWS 部署管道參考架構](https://aws.amazon.com/blogs/aws/new_deployment_pipelines_reference_architecture_and_-reference_implementations/)。要在 AWS 上建置 CI/CD 管道，此參考架構提供了安全且可擴展的基礎。

 此外，您可以使用 [AWS Identity and Access Management Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) 等服務，為兩種管道許可產生最低權限 IAM 政策，並做為管道中用於驗證工作負載許可權的步驟。這有助於確認您的管道和工作負載僅擁有其特定功能所需的必要許可權，以降低未經授權的存取或動作風險。

### 實作步驟
<a name="implementation-steps"></a>
+  從 [AWS 部署管道參考架構](https://aws.amazon.com/blogs/aws/new_deployment_pipelines_reference_architecture_and_-reference_implementations/)開始行動。
+  考慮使用 [AWS IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html)，以程式設計方式產生管道的最低權限 IAM 政策。
+  將您的管道與監控和警示功能整合，以便在 AWS 受管服務發生意外或異常活動時收到通知，[Amazon EventBridge](https://aws.amazon.com/eventbridge/) 可讓您將資料路由至 [AWS Lambda](https://aws.amazon.com/lambda/) 或 [Amazon Simple Notification Service](https://aws.amazon.com/sns/) (Amazon SNS) 等目標。

## 資源
<a name="resources"></a>

 **相關文件：**
+  [AWS 部署管道參考架構](https://aws.amazon.com/blogs/aws/new_deployment_pipelines_reference_architecture_and_-reference_implementations/) 
+  [監控 AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/monitoring.html) 
+  [ 的安全最佳實務AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/security-best-practices.html) 

 **相關範例：**
+  [DevOps 監控儀表板](https://github.com/aws-solutions/aws-devops-monitoring-dashboard) (GitHub) 