반응형
공유 접근 시그니처(SAS, Shared Access Signature)는
Azure Storage 리소스에 대한 제한적이고 시간 제한된 액세스를 안전하게 부여하는 메커니즘입니다.
이를 통해 전체 계정 키를 노출하지 않고도 특정 리소스에 대한 세분화된 권한을 설정할 수 있습니다.
🔐 SAS의 주요 유형
- 계정 SAS (Account SAS)
스토리지 계정 전체에 대한 액세스를 부여합니다. Blob, 파일, 큐, 테이블 등 다양한 서비스에 대한 권한을 설정할 수 있습니다. - 서비스 SAS (Service SAS)
특정 서비스(예: Blob 컨테이너, 파일 공유 등)에 대한 액세스를 제공합니다. 예를 들어, 특정 컨테이너 내의 파일에만 접근하도록 제한할 수 있습니다. - 사용자 위임 SAS (User Delegation SAS)
Azure Active Directory(AAD) 자격 증명을 기반으로 생성되며, 보안성이 가장 높습니다. AAD 토큰을 사용하여 SAS를 생성하므로, 계정 키를 사용하지 않아도 됩니다.
⚙️ SAS 토큰 구성 요소
- 리소스 URI: 액세스 대상 리소스의 경로
- 권한: 읽기, 쓰기, 삭제 등 허용할 작업
- 시작 및 만료 시간: 토큰의 유효 기간
- IP 주소 범위: 허용할 클라이언트 IP 범위
- 프로토콜 제한: HTTP 또는 HTTPS로 제한 가능
- 서명: 지정된 매개변수를 기반으로 생성된 해시값
🛡️ 보안 모범 사례
- 최소 권한 원칙 적용 필요한 최소한의 권한만 부여
- 짧은 만료 시간 설정 토큰 유효 기간을 가능한 짧게 설정
- IP 및 프로토콜 제한 사용 특정 IP 범위와 HTTPS 프로토콜로 제한
- 사용자 위임 SAS 권장 가능한 경우 AAD 기반의 사용자 위임 SAS 사용
🧪 SAS 생성 예시 (Azure CLI)
az storage blob generate-sas \
--account-name <계정명> \
--container-name <컨테이너명> \
--name <파일명> \
--permissions r \
--expiry 2025-04-14T00:00Z \
--https-only \
--output tsv
이 명령은 지정된 Blob 파일에 대해 읽기 권한을 부여하는 SAS 토큰을 생성합다.
🧩 활용 사례
- *일시적인 파일 공유: 특정 사용자에게 일정 기간 동안 파일 다운로드 권한 부여
- *제한된 업로드 권한 제공: 외부 사용자에게 특정 컨테이너에 대한 업로드 권한 부여
- *자동화된 백업 및 복원: 스크립트나 애플리케이션에서 SAS를 사용하여 스토리지 리소스 접근
관련 문제 예시
Question :
여러분의 스토리지 계정 키를 주지 않고 누군가에게
여러분의 Azure 스토리지 계정 내 한 컨테이너의 접근 권한을 주려면 어떻게 해야 할까요?
반응형
'인공지능,프로그래밍 > MS Azure' 카테고리의 다른 글
Azure 104 연습 문제 8 (0) | 2025.04.14 |
---|---|
Azure 104 연습 문제 7 (1) | 2025.04.14 |
Azure 104 연습 문제 6 (0) | 2025.04.13 |
Azure 104 연습 문제 5 (0) | 2025.04.13 |
Azure 104 연습 문제 4 (2) | 2025.04.12 |