InfoGrab DocsInfoGrab Docs

플로우 실행 보안 고려 사항

플로우가 GitLab CI/CD에서 실행될 때의 보안 특성과 agent-config.yml 파일이 갖는 보안상의 영향 및 권장 보호 조치를 설명합니다.

플로우가 GitLab CI/CD에서 실행될 때: 복합 ID 를 사용하여 액세스를 제한합니다. 임시 워크로드 파이프라인 을 생성하며, 이 파이프라인은 플로우가 완료되면 제거됩니다. 사용할 수 있는 도구는 해당 플로우의 목적에 맞게 한정됩니다. 이러한 도구에는 머지 리퀘스트 생성이나 실행 환경에서의 로컬 셸 명령어 실행이 포함될 수 있습니다. 기본적으로 플로우는 GitLab 인스턴스에 대한 네트워크 액세스만 갖습니다. 네트워크 액세스 규칙에 대한 자세한 내용은 네트워크 정책 구성 방법 을 참조하세요. 이렇게 분리된 환경은 셸 명령어 실행으로 인한 의도치 않은 결과로부터 보호합니다. GitLab UI에서 플로우가 자율적으로 실행되지 않도록 하려면, 플로우 실행을 끌 수 있습니다. agent-config.yml의 보안상 영향 # .gitlab/duo/agent-config.yml 파일은 setup_script 에서 실행되는 명령어를 포함하여 플로우가 CI/CD에서 실행되는 방식을 제어합니다. 플로우가 실행되는 방식 때문에, 이 파일의 변경은 파일을 커밋한 사용자 이상의 범위에 영향을 미칩니다. 사용자 간 실행 # 플로우는 복합 ID 를 통해 플로우를 트리거한 사용자의 ID로 실행됩니다. setup_script 의 명령어는 구성을 커밋한 사용자의 자격 증명이 아니라, 트리거한 사용자의 복합 ID 자격 증명으로 실행됩니다. .gitlab/duo/agent-config.yml 에 대한 쓰기 액세스 권한이 있는 사용자는 다른 사용자의 러너 환경에서 무엇이 실행되는지에 영향을 줄 수 있습니다. 이 파일을 수정하면 이후 프로젝트에서 플로우를 트리거하는 모든 사용자의 실행 컨텍스트에 영향을 미칩니다. 노출되는 환경 변수 # Anthropic Sandbox Runtime(SRT) 외부에서 실행되는 setup_script 실행 중에는 다음과 같은 민감한 변수가 환경에 존재합니다: GITLAB_OAUTH_TOKEN 및 GITLAB_TOKEN : 복합 ID를 통한 트리거 사용자의 OAuth 토큰. DUO_WORKFLOW_GIT_HTTP_PASSWORD : Git HTTP 비밀번호. DUO_WORKFLOW_SERVICE_TOKEN : 서비스 토큰. DUO_WORKFLOW_GIT_USER_EMAIL 및 DUO_WORKFLOW_GIT_USER_NAME : 트리거 사용자의 이메일과 이름. 노출되는 변수의 전체 목록은 플로우 실행 변수 를 참조하세요. 권장 보호 조치 # .gitlab/duo/agent-config.yml 파일에 대한 무단 변경 위험을 줄이려면: 직접 푸시를 방지하도록 기본 브랜치를 보호 합니다. 코드 소유자 를 사용하여 .gitlab/duo/agent-config.yml 에 대한 변경이 머지되기 전에 특정 소유자의 승인을 받도록 요구합니다. 예를 들어 CODEOWNERS 파일에 다음을 추가합니다: .gitlab/duo/agent-config.yml @your-group/security-reviewers 이 파일을 수정하는 머지 리퀘스트에 대해 신뢰할 수