
130
2
부
시스템 설계
5.4.6
절충안
전부는 아니지만 [표
5
-
2
]에서 나열한 옵션의 대부분은 보안과 안전성을 자동화 절차에 추가
하는 기능을 제공한다. 여전히 공격자가 임의의 설정을 밀어 넣어 웹서버 역할을 탈취할 수는
있지만 보다 작은
API
를 선택한다는 것은 공격자가 설정을 임의로 밀어 넣어도 서버를 탈취할
수 없다는 것을 의미한다.
자동화 절차에서 서버로 밀어 넣는 설정을 독립적인 서명으로 최소 권한을 더 견고하게 설계할
수 있다. 이 방법은 역할 간의 신뢰를 구분해서 설정을 밀어 넣는 자동화 도구를 탈취하더라도
악의적인 설정을 보내서 웹서버를 탈취할 수는 없도록 보장한다. 맥길로이, 핀슨, 타구의 조언
을 떠올려 시스템의 각 부품이 하나의 작업만 제대로 실행하도록 설계하면 신뢰 관계를 분리할
수 있다.
또한 적용 범위가 좁은
API
로 제어할 수 있는 영역을 더 세분화하면 자동화 도구의 버그로부
터 시스템을 보호할 수 있다. 서명으로 설정을 검증하는 것과 더불어 중앙식 사용률 제한 시스
템
rate
limiter
이 자동화 도구와 각 대상 호스트별로 독립적으로 생성한 베어러 토큰
bearer
token
17
을
확인하는 과정도 추가할 수 있다. 단위 테스트를 이용하면 사용률 제한 시스템을 더 꼼꼼히 테
스트할 수 있다. 만일 사용률 제한 시스템이 독립적으로 ...