Azure Queue Storage는 애플리케이션 구성 요소 간 메시지 큐잉을 제공합니다. 메시지는 종종 객체 식별자, 콜백 URL, 애플리케이션 상태 등 민감한 자원에 대한 참조를 포함하기 때문에, 큐 권한 부여와 메시지 내용 처리 모두를 보호해야 합니다.
메모
이 글에서는 Azure Queue Storage에 특화된 보안 관행을 다룹니다. 계정 수준의 보안 지침은 'Secure Your Azure Storage account.'를 참조하세요.
ID 및 액세스 관리
큐 생성자 및 소비자를 위한 관리 신원과 함께 Microsoft Entra ID를 사용하세요: 큐와 상호작용하는 각 서비스의 관리 신원에 내장된 스토리지 큐 데이터 메시지 송신자, 스토리지 큐 데이터 메시지 프로세서, 스토리지 큐 데이터 리더 역할을 할당합니다. 작전과 일치하는 역할을 선택하세요. 메시지 전송 서비스는 프로세서 권한을 보유해서는 안 됩니다. 자세한 내용은 Microsoft Entra ID를 이용한 큐 접근 권한 승인을 참조하세요.
특정 큐에 할당된 범위 기반 접근 제어(RBAC) 역할: 내장된 큐 데이터 역할에 큐 레벨 범위가 지원됩니다. 멀티큐 계정에서 서비스가 한 개의 큐에만 접근해야 할 때는 스토리지 계정이 아닌 큐 레벨에서 할당하세요.
SAS 토큰의 범위를 단일 큐와 특정 메시지 작업으로 지정: 큐 공유 액세스 서명(SAS)은
update,process,read,add권한을 개별적으로 지원합니다. 전화하는 사람이 필요로 하는 것만 허락하세요. 이벤트를 큐에 넣는 웹훅 수신기는add만 받아야 하며,process는 받지 않아야 합니다. 자세한 내용은 공유 액세스 서명을 사용하여 액세스 위임을 참조하세요.
데이터 보호
메시지는 계정의 암호화와 TLS 설정으로 정지시와 전송 중에 보호되지만, 큐 수준 권한 부여 외에는 개별 접근 제어가 되지 않습니다. 메시지 콘텐츠를 대기열에 민감한 데이터를 집중시키지 않도록 설계하세요.
큐 메시지에 비밀이나 자격 증명을 넣지 마세요: 비밀을 Azure Key Vault에 저장하고 메시지에 참조(비밀 식별자)를 넣으세요. 소비자는 처리 시 자신의 ID로 비밀을 가져옵니다. 메시지에 들어가는 모든 내용은 큐에 있거나
processread있는 모든 프린시펄이 볼 수 있으며, 스토리지 로그에 기록됩니다.애플리케이션 계층에서 민감한 메시지 페이로드 암호화: 민감한 데이터를 담아야 하는 메시지의 경우, 인큐 전에 Key Vault의 키로 페이로드를 암호화하세요. 이는 스토리지 측 암호화와 독립적인 층을 추가하여 소비자가 침해될 경우 노출을 제한합니다. 자세한 내용은 Azure Storage의 클라이언트 측 암호화를 참조하세요.
합리적인 메시지 생존 시간(TTL) 설정: 메시지는 처리되거나 만료되거나 큐가 소모될 때까지 유지됩니다. 긴 TTL은 오래된 민감한 데이터를 복구할 수 있는 창을 증가시킵니다. TTL을 예상 처리 지연 시간과 안전 여유율에 맞추세요.
로깅 및 모니터링
큐 작업에 대한 진단 설정을 활성화하세요: 개별
StorageWriteStorageDelete큐 작업이 감사 가능하도록 , 카테고리를 Log Analytics에 전송StorageRead하세요. 오용 감지를 위해 권한 부여 방법(Entra ID, 공유 키, SAS, 익명 등)을 추적하세요. 자세한 내용은 Azure Queue Storage 모니터링을 참조하세요.문제 메시지를 전용 큐로 이동: 디큐 횟수 임계값을 초과하는 메시지를 감지하여 오프라인 분석을 위해 전용
<queue-name>-poison큐로 옮기도록 소비자를 구성합니다. 독 큐 축적은 단순한 운영 신호가 아니라 보안 신호입니다. 자세한 내용은 큐 트리거 함수에서 독 메시지 처리를 참조하세요.독 큐 성장에 대한 경고: 각 독 큐의 메시지 수에 대해 Azure Monitor 알림을 설정하여 예상치 못한 성장이 조사를 촉발하도록 하세요.
비정상적인 디큐 및 삭제 패턴 경고: 예상치 못한 ID에서
DeleteMessage작업이 갑자기 급증하거나, 후속 처리 없이 디큐 작업만 대량으로 발생하는 경우 공격자가 활동을 숨기기 위해 큐를 비우고 있음을 나타낼 수 있습니다. 대기열의 정상 트래픽 패턴에서 벗어난 경우 경고합니다.
관련 보안 문서
- Azure Storage 계정을 안전하게 보호하세요 - 교차 적용된 Azure Storage 보안 가이드.
- Azure Blob Storage 보안 설정 - Blob별 보안.
- Azure Files - 파일 공유 보안을 안전하게 하세요.
- Azure Table Storage를 안전하게 보호하세요 - 테이블별 보안.