PutBucketACL
    • PDF

    PutBucketACL

    • PDF

    Article Summary

    개요

    제공되는 파라미터와 함께 버킷에 PUT 요청을 보내면 요청한 버킷에 적용할 접근 제어 목록(ACL)을 생성하거나 기존 ACL을 수정합니다.
    ACL을 적용하면 계정의 ID나 미리 만들어진 ACL(기본 ACL)을 사용하여 스토리지 계정별로 다른 권한 집합을 부여할 수 있습니다.
    네이버 클라우드 플랫폼 Object Storage 서비스를 이용 중인 회원을 대상으로 버킷과 오브젝트에 접근 권한을 부여할 수 있습니다.
    네이버 클라우드 플랫폼 Object Storage 이용신청을 완료한 회원은 Object Storage에서 사용할 수 있는 ID가 발급됩니다.
    이 ID는 버킷과 오브젝트의 접근 권한을 설정할 때 사용됩니다.
    또한 인증없이 접근 가능하도록 public-read, public-write 권한 설정도 가능합니다.

    다음 표는 권한 종류와 해당 권한이 부여된 경우 가능한 오퍼레이션을 설명합니다.

    권한버킷에 부여된 경우오브젝트에 부여된 경우
    READ버킷에 속한 오브젝트 목록 조회 가능오브젝트 데이터와 메타데이터의 읽기가 가능
    WRITE새 오브젝트를 생성하거나 기존 오브젝트의 덮어쓰기 또는 삭제가 가능N/A
    READ_ACP버킷의 ACL 조회 가능오브젝트의 ACL 조회가 가능
    WRITE_ACP버킷의 ACL 설정 가능오브젝트의 ACL 설정이 가능
    FULL_CONTROLREAD, WRITE, READ_ACP, WRITE_ACP 권한으로 가능한 모든 오퍼레이션 수행 가능READ, READ_ACP, WRITE_ACP 권한으로 가능한 모든 오퍼레이션 수행 가능

    다음 표는 네이버 클라우드 플랫폼 Fiancial 오브젝트 스토리지에서 지원하는 기본 ACL을 설명합니다. 이 표에 언급되지 않은 값은 지원되지 않습니다.

    기본 ACL적용 대상설명
    private버킷, 오브젝트소유자에게 FULL_CONTROL 권한을 부여함 (default)
    public-read버킷, 오브젝트소유자에게 FULL_CONTROL 권한을 부여하고, 모든 사용자에게 READ 권한을 부여함
    public-read-write버킷, 오브젝트소유자에게 FULL_CONTROL 권한을 부여하고, 모든 사용자에게 READ와 WRITE 권한을 부여함
    authenticated-read버킷, 오브젝트소유자에게 FULL_CONTROL 권한을 부여하고, 인증된 사용자에게 READ 권한을 부여함

    public-read를 포함하여 READ 권한이 버킷에 적용된 경우에는 오브젝트를 조회만 할 수 있을 뿐 오브젝트 자체에는 접근할 수 없습니다.

    구문

    PUT https://{endpoint}/{bucket-name}?acl= # path style
    PUT https://{bucket-name}.{endpoint}?acl= # virtual host style
    

    예시

    요청 예시(기본 ACL)

    다음은 이름이 'apiary'인 버킷에 public-read 권한 부여를 요청하는 예입니다. 해당 권한이 부여되면 스토리지 계정을 사용하는 모든 사용자가 해당 버킷의 내용과 ACL 상세 정보를 확인할 수 있습니다.

    PUT /apiary?acl= HTTP/1.1
    Authorization: {authorization-string}
    x-amz-date: 20161011T190354Z
    x-amz-acl: public-read
    Host: kr.object.fin-ncloudstorage.com
    

    응답 예시

    HTTP/1.1 200 OK
    Date: Tue, 4 Oct 2016 19:03:55 GMT
    Accept-Ranges: bytes
    x-amz-request-id: 73d3cd4a-ff1d-4ac9-b9bb-43529b11356a
    Content-Length: 0
    

    요청 예시(사용자 정의 ACL)

    다음은 다른 계정을 사용했을 때 이름이 'apiary'인 버킷에 적용된 ACL을 확인할 수는 있지만 버킷에 저장된 오브젝트는 조회할 수 없도록 요청하는 예입니다. 참고로 세 번째 계정에는 모든 권한이 부여되어 있으므로 동일한 버킷 내에서는 모든 오퍼레이션을 수행할 수 있습니다. 시스템에 인증된 사용자는 모두 버킷에 있는 오브젝트를 조회할 수 있습니다.

    PUT /apiary?acl= HTTP/1.1
    Authorization: {authorization-string}
    x-amz-date: 20161011T190354Z
    Host: kr.object.fin-ncloudstorage.com
    
    <?xml version="1.0" encoding="UTF-8"?>
    <AccessControlPolicy xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
      <Owner>
        <ID>{owner-user-id}</ID>
        <DisplayName>{owner-user-id}</DisplayName>
      </Owner>
      <AccessControlList>
        <Grant>
          <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
            <ID>{first-grantee-user-id}</ID>
            <DisplayName>{first-grantee-user-id}</DisplayName>
          </Grantee>
          <Permission>READ_ACP</Permission>
        </Grant>
        <Grant>
          <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
            <ID>{second-grantee-user-id}</ID>
            <DisplayName>{second-grantee-user-id}</DisplayName>
          </Grantee>
          <Permission>FULL_CONTROL</Permission>
        </Grant>
      </AccessControlList>
    </AccessControlPolicy>
    

    응답 예시

    HTTP/1.1 200 OK
    Date: Tue, 4 Oct 2016 19:03:55 GMT
    Accept-Ranges: bytes
    x-amz-request-id: 73d3cd4a-ff1d-4ac9-b9bb-43529b11356a
    

    이 문서가 도움이 되었습니까?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.