Cloudflare가 웹 트래픽을 검사하는 보안 게이트웨이에 고객이 작성한 코드를 연결한다. 보안팀은 허용·차단 규칙만 고르는 대신 요청을 직접 가공하거나 민감 정보가 실제로 유효한지 확인하는 로직을 넣을 수 있다. 조직별 요구를 해결하기 위해 별도 프록시를 운영하던 부담을 줄이는 변화다.
1. 트래픽 가공과 탐지 검증의 공개 일정은 다르다
2026년 10월 15일 발표에서 트래픽을 코드로 보내는 Forward 동작은 공개 베타로 출시됐다. 정책 조건을 계산하는 Custom Function은 2026년 말 전에 제공할 예정이다. 두 기능은 정식 출시 때 모든 요금제에 제공할 계획이다.
이와 별개로 데이터 손실 방지인 DLP의 맞춤 검증 함수는 발표 당일부터 제공된다. 정책 조건을 만드는 기능과 탐지 결과를 검증하는 기능의 제공 시점을 구분해야 한다.
2. 요청을 바꿀지 판단 재료를 만들지 고른다
Forward는 웹 요청 정책에서 허용된 트래픽에 적용되며, 처음 일치한 전달 규칙이 요청을 연결된 Worker로 보낸다. Worker는 요청의 헤더와 본문을 받아 수정하고 원래 서버의 응답도 바꿀 수 있다. 요청을 바꾸지 않고 알림 같은 비동기 작업만 수행하는 용도로도 쓸 수 있다.
반면 Custom Function은 정책 평가 도중 실행돼 문자열·숫자·논리값을 돌려준다. 요청을 고치는 작업대가 아니라 판단에 쓸 값을 만들어 주는 계산기인 셈이다. 반환값은 정책 편집기에서 다른 조건과 함께 비교한다.
함수가 받는 정보는 정책 단계에 따라 달라진다. 사용자 신원이나 단말 보안 상태, 연결 정보를 활용하므로 HTTP에 한정되지 않고 네트워크 정책의 임의 포트와 프로토콜에도 적용할 수 있다.
3. 역할 정보를 정책 조건으로 돌려준다
다음은 원문이 제시한 맞춤 함수다. 요청의 인증 헤더에서 토큰을 풀고 첫 번째 그룹 값을 반환한다. 이 값을 허용 규칙의 조건으로 사용할 수 있지만, 토큰 서명 검증 절차는 이 예시에 제시되지 않았다.
export class GatewayCustomSelector extends WorkerEntrypoint {
async compute(ctx: GatewayContext): Promise<string> {
const authHeader = ctx.request.headers.get("Authorization");
if (!authHeader) return "anonymous";
const token = authHeader.replace("Bearer ", "");
const payload = JSON.parse(atob(token.split(".")[1]));
return payload.groups?.[0] ?? "unknown";
}
}다른 활용 예는 민감한 목적지로 접속할 때 사유 입력 화면을 보여주는 것이다. 입력 여부를 유효기간이 있는 저장소에 기록해 설정한 기간마다 한 번만 묻고, 사용자와 사유는 데이터베이스에 남겨 감사 기록으로 활용한다.
4. 패턴 일치 뒤에 실제 유효성을 확인한다
DLP의 정규식·단어 목록 탐지는 민감 정보와 닮은 패턴을 찾지만, 해당 데이터가 실제 유출이나 오용과 관련 있는지까지 알려주지는 않는다. 정확히 일치하는 데이터를 찾는 방식도 고객이 기준 데이터셋을 준비·유지·전달해야 하는 부담이 있다.
맞춤 검증 함수는 탐지 항목이 일치한 뒤 정책을 집행하기 전에 고객의 검증 로직을 실행한다. 예를 들어 GitHub 비밀값을 감지하면 해당 키의 상태를 조회하고 활성 키인지에 따라 탐지 일치 여부를 결정할 수 있다. 패턴 검사 뒤에 실제 사용 가능한 열쇠인지 확인하는 단계를 붙이는 방식이다.
5. 인프라 부담은 줄고 코드 설계 책임은 남는다
Gateway가 연결·암호화·인증서 관리를 맡으므로 고객 코드는 변환 로직에 집중할 수 있다. 대신 실시간 요청을 가공하는 코드는 사용자 경험을 해치지 않도록 대상을 좁혀 설계해야 한다. 맞춤 정책 함수는 빠르고 범위가 제한된 무상태 평가에 적합하며, 실패 시 대체 동작을 함수별로 정하고 기본 반환값을 지정해야 한다.
Cloudflare는 게이트웨이와 코드 실행 서비스가 같은 장비에서 동작해 호출에 추가 네트워크 구간이 없고 성능 영향은 코드 실행 시간에 한정된다고 설명한다. 구체적인 지연 측정값은 제시되지 않았다.
전달된 트래픽은 표준 Workers 요청으로 과금된다. 무료 요금제도 쓸 수 있지만 실행 시간과 일일 요청 한도가 있어 처리량을 늘릴 때 고려해야 한다.
이번 변화의 가치는 별도 프록시를 줄이면서 조직별 판단을 보안 정책에 넣는 데 있으며, 그 대가는 고객 코드의 설계와 실행 비용이다.
