컨테이너 ACL 설정
이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

컨테이너 ACL 설정

 

Set Container ACL 작업은 지정 된 컨테이너에 대 한 권한을 설정 합니다. 권한은 컨테이너의 blob에 공개적으로 액세스할 수 있는지 여부를 나타냅니다.

2009-09-19 버전부터 컨테이너 권한에서는 컨테이너 액세스 관리를 위해 다음과 같은 옵션이 제공됩니다.

  • 전체 공용 읽기 권한: 익명 요청을 통해 컨테이너 및 Blob 데이터를 읽을 수 있습니다. 클라이언트가 익명 요청을 통해 컨테이너 내 Blob를 열거할 수 있지만 저장소 계정 내 컨테이너는 열거할 수 없습니다.

  • Blob에 대해서만 공용 읽기 권한: 익명 요청을 통해 해당 컨테이너 내 Blob 데이터는 읽을 수 있지만 컨테이너 데이터는 사용할 수 없습니다. 클라이언트는 익명 요청을 통해 컨테이너 내 Blob를 열거할 수 없습니다.

  • 공용 읽기 권한 없음: 컨테이너 및 Blob 데이터는 계정 소유자만 읽을 수 있습니다.

Set Container ACL 또한 공유 액세스 서명과 함께 사용할에 대 한 저장 된 액세스 정책을 설정합니다. 자세한 내용은 참조 저장 된 액세스 정책을 사용 하 여.

컨테이너에 대한 모든 공용 액세스는 익명이며, 공유 액세스 서명을 통해 액세스됩니다.

Set Container ACL 다음과 같이 요청을 생성할 수 있습니다. HTTPS를 사용하는 것이 좋습니다. 대체 myaccount 저장소 계정의 이름으로:

방법

요청 URI

HTTP 버전

PUT

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=acl

HTTP/1.1

에 에뮬레이트된 저장소 서비스에 대 한 요청을 수행할 때는 에뮬레이터 호스트 이름 및 Blob 서비스 포트를 지정 127.0.0.1:10000, 뒤에 에뮬레이트된 저장소 계정 이름을,:

방법

요청 URI

HTTP 버전

PUT

http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=acl

HTTP/1.1

자세한 내용은 참조 Azure 저장소 에뮬레이터를 사용 하 여 개발 및 테스트에 대 한.

요청 URI에 다음과 같은 추가 매개 변수를 지정할 수 있습니다.

인자

설명

timeout

선택 사항입니다. timeout 매개 변수는 초 단위로 표시 합니다. 자세한 내용은 참조 Blob 서비스 작업에 대한 제한 시간 설정합니다.

다음 표에서는 필수 요청 헤더와 선택적 요청 헤더에 대해 설명합니다.

요청 헤더

설명

Authorization

필수 사항입니다. 인증 체계, 계정 이름 및 서명을 지정합니다. 자세한 내용은 참조 Azure 저장소 서비스에 대한 인증합니다.

Date 또는 x-ms-date

필수 사항입니다. 요청의 UCT(협정 세계시)를 지정합니다. 자세한 내용은 참조 Azure 저장소 서비스에 대한 인증합니다.

x-ms-version

선택 사항입니다. 이 요청에 사용할 작업의 버전을 지정합니다. 자세한 내용은 참조 Azure 저장소 서비스에 대 한 버전 관리합니다.

x-ms-blob-public-access

선택 사항입니다. 컨테이너의 데이터를 공개적으로 액세스할 수 있는지 여부 및 액세스 수준을 지정합니다. 가능한 값은 다음과 같습니다.

  • container: 컨테이너 및 blob 데이터에 대한 전체 공용 읽기 액세스 권한을 지정합니다. 클라이언트가 익명 요청을 통해 컨테이너 내 Blob를 열거할 수 있지만 저장소 계정 내 컨테이너는 열거할 수 없습니다.

  • blob: Blob에 대 한 공용 읽기 액세스 권한을 지정합니다. 익명 요청을 통해 해당 컨테이너 내 Blob 데이터는 읽을 수 있지만 컨테이너 데이터는 사용할 수 없습니다. 클라이언트는 익명 요청을 통해 컨테이너 내 Blob를 열거할 수 없습니다.

이 헤더가 요청에 포함되지 않으면 컨테이너 데이터는 계정 소유자 전용입니다.

Azure 프리미엄 저장소 계정의 컨테이너에 대한 공용 액세스를 설정하는 것은 허용되지 않습니다.

x-ms-lease-id: <ID>

2012-02-12 버전 이상의 경우 선택 사항입니다. 지정 된 경우 Set Container ACL 컨테이너의 임대가 활성 상태 이며이 ID와 일치 하는 경우에 성공 활성 임대가 없거나 ID가 일치하지 않으면 412(전제 조건 실패)가 반환됩니다.

x-ms-client-request-id

선택 사항입니다. 저장소 분석 로깅을 사용하도록 설정되어 있으면 분석 로그에 기록되는 1KB 문자 제한의 클라이언트에서 생성한 불투명 값을 제공합니다. 클라이언트 쪽 작업과 서버가 받은 요청의 상관 관계를 지정하는 데 이 헤더를 사용하는 것이 좋습니다. 자세한 내용은 참조 저장소 분석 로깅 정보Azure 로깅: 저장소 요청 추적 로그를 사용 하 여.

이 작업은 또한 지정된 조건이 충족될 경우에만 작업을 실행하는 조건부 헤더 사용을 지원합니다. 자세한 내용은 참조 Blob 서비스 작업에 대 한 조건부 헤더 지정합니다.

저장된 된 액세스 정책을 지정 하려면 제공에 대 한 요청 본문에 고유 식별자 및 액세스 정책을 Set Container ACL 작업 합니다.

SignedIdentifier 에 지정된대로 고유 식별자를 포함 하는 요소는 Id 요소와에 지정 된 액세스 정책의 세부 정보는 AccessPolicy 요소입니다. 고유 식별자의 최대 길이는 64자입니다.

StartExpiry 필드 UTC 시간으로 표시 해야 하며 유효한 ISO 8061 형식의를 따라야 합니다. 지원 되는 ISO 8061 형식은 다음과 같습니다.

  • YYYY-MM-DD

  • YYYY-MM-DDThh:mmTZD

  • YYYY-MM-DDThh:mm:ssTZD

  • YYYY-MM-DDThh:mm:ss.fffffffTZD

이러한 형식의 날짜 부분에 대 한 YYYY 4 자리 연도 표현인 MM 표현인 두 자리 월 및 DD 두 일 표현입니다. 시간 부분에 대 한 hh 24 시간 표기법의 시간 표현인 mm 은이 분 자리, ss 는 두 자리에 두번째 표현인 및 fffffff 는 7 자리 숫자 밀리초를 나타냅니다. 시간 지정자 T 시간대 지정자 하는 동안 문자열의 날짜 및 시간 부분을 구분 TZD 표준 시간대를 지정 합니다.

<?xml version="1.0" encoding="utf-8"?> <SignedIdentifiers> <SignedIdentifier> <Id>unique-64-character-value</Id> <AccessPolicy> <Start>start-time</Start> <Expiry>expiry-time</Expiry> <Permission>abbreviated-permission-list</Permission> </AccessPolicy> </SignedIdentifier> </SignedIdentifiers>

Request Syntax: PUT https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=acl HTTP/1.1 Request Headers: x-ms-version: 2011-08-18 x-ms-date: Sun, 25 Sep 2011 00:42:49 GMT x-ms-blob-public-access: container Authorization: SharedKey myaccount:V47F2tYLS29MmHPhiR8FyiCny9zO5De3kVSF0RYQHmo= Request Body: <?xml version="1.0" encoding="utf-8"?> <SignedIdentifiers> <SignedIdentifier> <Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id> <AccessPolicy> <Start>2009-09-28T08:49:37.0000000Z</Start> <Expiry>2009-09-29T08:49:37.0000000Z</Expiry> <Permission>rwd</Permission> </AccessPolicy> </SignedIdentifier> </SignedIdentifiers>

응답에는 HTTP 상태 코드 및 응답 헤더 집합이 포함되어 있습니다.

작업에 성공하면 상태 코드 200(정상)이 반환됩니다.

상태 코드에 대 한 정보를 참조 하십시오. 상태 및 오류 코드합니다.

이 작업의 응답에는 다음과 같은 헤더가 포함됩니다. 응답에는 추가 표준 HTTP 헤더가 포함될 수도 있습니다. 모든 표준 헤더를 준수 하는 HTTP/1.1 프로토콜 사양.

응답 헤더

설명

ETag

컨테이너에 대한 ETag입니다. 요청 버전이 2011-08-18 이상이면 ETag 값이 따옴표로 표시됩니다.

Last-Modified

컨테이너가 마지막으로 수정된 날짜 및 시간을 반환합니다. 날짜 형식은 RFC 1123을 따릅니다. 자세한 내용은 참조 헤더의 날짜/시간 값 표현합니다.

컨테이너 또는 해당 속성이나 메타데이터를 수정하는 모든 작업을 수행하면 컨테이너의 권한 설정을 포함하여 마지막 수정 시간이 업데이트됩니다. blob에 대한 작업은 컨테이너의 마지막 수정 시간에 영향을 주지 않습니다.

x-ms-request-id

이 헤더는 수행된 요청을 고유하게 식별하며, 이 헤더를 사용해서 요청 문제를 해결할 수 있습니다. 자세한 정보를 참조 하십시오. API 작업 문제해결 

x-ms-version

요청을 실행하는 데 사용되는 Blob 서비스의 버전을 나타냅니다. 이 헤더는 2009-09-19 버전 이상에 대해 수행된 요청에 대해 반환됩니다.

Date

응답이 시작된 시간을 나타내는 서비스에서 생성된 UTC 날짜/시간 값입니다.

Response Status: HTTP/1.1 200 OK Response Headers: Transfer-Encoding: chunked Date: Sun, 25 Sep 2011 22:42:55 GMT ETag: "0x8CB171613397EAB" Last-Modified: Sun, 25 Sep 2011 22:42:55 GMT x-ms-version: 2011-08-18 Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0

계정 소유자만 이 작업을 호출할 수 있습니다.

소유자가 컨테이너에 대한 권한을 설정하여 컨테이너 리소스를 공개적으로 액세스하도록 지정했거나 컨테이너 내의 리소스에 대해 공유 액세스 서명을 발급하지 않은 한 계정 소유자만 특정 컨테이너의 리소스에 액세스할 수 있습니다.

컨테이너에 대한 권한을 설정하면 기존 권한이 바뀝니다. 컨테이너의 권한을 업데이트 하려면 호출 컨테이너 ACL 가져오기 를 컨테이너에 연결 된 모든 액세스 정책을 인출, 다음 호출 하 고, 변경 하려는 액세스 정책을 수정한 Set Container ACL 전체 업데이트를 수행 하려면 데이터 집합을 사용 합니다.

컨테이너 데이터에 대한 익명 공용 액세스 설정

컨테이너 데이터에 익명 공용 읽기 액세스를 설정 하려면 호출 Set Container ACLx-ms-blob-public-access 로 설정 된 헤더 container 또는 blob합니다. 익명 액세스를 비활성화 하려면 호출 Set Container ACL 지정 하지 않고는 x-ms-blob-public-access 헤더입니다.

설정 하는 경우 x-ms-blob-public-accessblob, 클라이언트는 다음 작업을 익명으로 호출할 수 있습니다.

설정 하는 경우 x-ms-blob-public-accesscontainer, 클라이언트는 다음 작업을 익명으로 호출할 수 있습니다.

컨테이너 수준 액세스 정책 설정

저장된 액세스 정책은 연관된 공유 액세스 서명에 대한 시작 시간, 만료 시간 및 권한을 지정할 수 있습니다. 컨테이너 또는 blob 리소스에 대한 액세스를 제어하는 방법에 따라 저장된 액세스 정책 내에서 이러한 모든 매개 변수를 지정하고, 공유 액세스 서명에 대한 URL에서 이를 생략할 수 있습니다. 언제든지 연결된 서명의 동작을 수정하고 서명을 해제할 수 있습니다. 또는 저장된 액세스 정책 내에서 하나 이상의 액세스 정책 매개 변수를 지정하고 URL에 나머지를 지정할 수 있습니다. 마지막으로 URL에 모든 매개 변수를 지정할 수 있습니다. 이 경우 저장된 액세스 정책을 사용하여 서명을 취소할 수 있지만 해당 동작을 수정할 수는 없습니다. 참조를 지정 하는 저장 된 액세스 정책을 사용 하 여 액세스 정책 설정에 대 한 자세한 내용은 합니다.

공유 액세스 서명에든 저장된 액세스 정책에든 서명을 인증하는 데 필요한 모든 필드를 포함해야 합니다. 필수 필드가 하나라도 누락될 경우 요청에 실패합니다. 마찬가지로 필드가 공유 액세스 서명 URL 및 저장된 액세스 정책에서 모두 지정될 경우, 요청은 상태 코드 400(잘못된 요청)의 오류가 발생합니다.

언제든지 특정 컨테이너에 대해 최대 5개까지 개별 액세스 정책을 설정할 수 있습니다. 5개가 넘는 액세스 정책을 요청 본문에 전달하면 서비스가 상태 코드 400(잘못된 요청)을 반환합니다.

공유 액세스 서명은 컨테이너 데이터가 익명 읽기 액세스용으로 제공되는지 여부에 관계없이 컨테이너 또는 blob에 대해 발급할 수 있습니다. 공유 액세스 서명을 사용하면 리소스를 제공할 방법, 시간 및 대상을 보다 효과적으로 제어할 수 있습니다.

System_CAPS_note참고

컨테이너에서 저장된 액세스 정책을 설정할 경우 적용되는 데 최대 30초까지 걸릴 수 있습니다. 저장된 액세스 정책이 활성 상태가 될 때까지 이 간격 동안 해당 액세스 정책과 연결된 공유된 액세스 서명이 실패하면 상태 코드 403(사용할 수 없음)이 표시됩니다.

표시:
© 2016 Microsoft