19장. GitLab Runner를 신뢰 구역별로 나눈다
GitLab Runners는 hosted와 self-managed, shell·Docker·Kubernetes executor를 지원한다. shell executor는 host 상태와 credential을 공유하므로 높은 신뢰 job에만 제한한다. protected runner와 protected variable은 protected ref에서만 사용하게 한다.
runner-public-test untrusted MR / no private network
runner-build protected build / registry write
runner-prod manual deploy / production environment only
tag만으로 보안을 보장하지 않는다. 누가 job에 tag를 지정할 수 있는지와 protected status를 연결한다. registration/authentication token을 문서나 image에 넣지 않고 rotation한다. autoscaling runner의 stale VM과 cache bucket 접근을 폐기한다.