Azure Storage 서비스의 버전

Microsoft Azure 저장소 서비스는 여러 버전을 지원합니다. 스토리지 서비스에 대한 요청을 만들려면 익명 요청이 아닌 한 해당 작업에 사용할 버전을 지정해야 합니다.

Azure Storage 서비스의 현재 버전은 2020-04-08이며 가능한 경우 해당 버전을 사용하는 것이 좋습니다. 지원되는 다른 모든 버전 목록과 각 버전 사용에 대한 자세한 내용은 이전 Azure Storage 서비스 버전을 참조하세요.

버전 2020-08-04

2020-08-04 서비스 버전에는 다음 기능이 포함됩니다.

요청에서 서비스 버전 지정

요청에 사용할 스토리지 서비스의 버전을 지정하는 방법은 해당 요청의 권한 부여 방법과 관련이 있습니다. 다음 섹션에서는 권한 부여 옵션 및 각 옵션에 대해 서비스 버전을 지정하는 방법에 대해 설명합니다.

  • Azure Active Directory(Azure AD)에서 OAuth 2.0 토큰을 사용하여 요청합니다. Azure AD를 사용하여 요청에 권한을 부여하려면 x-ms-version 2017-11-09 이상의 서비스 버전으로 요청에 헤더를 전달합니다. 자세한 내용은 Azure Active Directory 권한 부여에서 OAuth 토큰을 사용하여 스토리지 작업 호출을 참조하세요.

  • 공유 키 또는 공유 키 Lite를 사용하는 요청 공유 키/공유 키 Lite를 사용하여 요청에 권한을 부여하려면 x-ms-version 요청에 헤더를 전달합니다. Blob service 경우 Blob 서비스 속성 설정을호출하여 모든 요청에 대한 기본 버전을 지정할 수 있습니다.

  • SAS(공유 액세스 서명)를 사용하여 요청합니다. 공유 액세스 서명에 두 가지 버전 지정 옵션을 지정할 수 있습니다. 선택적 api-version 헤더는 API 작업을 실행하는 데 사용할 서비스 버전을 나타냅니다. 필수 SignedVersion (sv) 매개 변수는 SAS로 만든 요청에 권한을 부여하는 데 사용할 서비스 버전을 지정합니다. api-version헤더를 지정하지 않으면 SignedVersion (sv) 매개 변수 값은 API 작업을 실행하는 데 사용할 버전도 나타냅니다.

  • 익명 액세스를 사용하는 요청입니다. Blob service 대한 익명 액세스의 경우 버전이 전달되지 않습니다. 요청에 사용되는 버전에 대한 추론은 아래에 설명되어 있습니다.

Azure AD, 공유 키 또는 공유 키 Lite를 사용하여 권한이 부여된 요청

Azure AD, 공유 키 또는 공유 키 Lite를 사용하여 요청에 권한을 부여하려면 x-ms-version 요청에 헤더를 지정합니다. x-ms-version 요청 헤더 값은 YYYY-MM-DD 형식으로 지정해야 합니다. 예를 들면 다음과 같습니다.

Request Headers:  
x-ms-version: 2017-07-29

다음 규칙은 요청을 처리하는 데 사용할 버전을 결정하기 위해 이러한 요청을 평가하는 방법을 나타냅니다.

  • 요청에 유효한 x-ms-version 헤더가 포함되어 있으면 저장소 서비스가 지정된 버전을 사용합니다. 공유 액세스 서명을 사용하지 않는 테이블 및 큐 서비스에 대한 모든 요청에서는 x-ms-version 헤더를 지정해야 합니다. 공유 액세스 서명을 사용하지 않는 Blob service 대한 모든 x-ms-version 요청은 아래에 설명된 대로 기본 버전이 설정되지 않은 한 헤더를 지정해야 합니다.

  • Blob service 대한 요청에 x-ms-version 헤더가 없지만 계정 소유자가 Blob Service 속성 설정을사용하여 기본 버전을 설정한 경우 지정된 기본 버전이 요청에 대한 버전으로 사용됩니다.

공유 액세스 서명을 통해 권한이 부여된 요청

버전 2014-02-14 이상에서 생성된 SAS(공유 액세스 서명)는 다음 두 가지 버전 옵션을 지원합니다.

  • api-version쿼리 매개 변수는 SAS를 사용하여 만든 요청을 처리하는 데 사용할 REST 프로토콜 버전을 정의합니다.

  • SignedVersion (sv)쿼리 매개 변수는 권한 부여에 사용할 SAS 버전을 정의합니다.

SignedVersion쿼리 매개 변수는 클라이언트가 SAS를 사용하여 요청할 때 권한 부여에 사용됩니다. , , , , , 및 와 같은 권한 부여 매개 si sr sp sig st se tn spk srk epk erk 변수는 모두 지정된 버전을 사용하여 해석됩니다.

, , , 및 와 같은 REST 프로토콜 매개 rscc rscd rsce rscl rsct 변수는 매개 변수 헤더에 제공된 버전을 사용하여 api-version 적용됩니다. api-version헤더를 지정하지 않으면 에 제공된 서비스 SignedVersion 버전이 사용됩니다.

api-version매개 변수는 서비스 SAS 만들기에설명된 대로 권한 부여 헤더의 문자열-투-로그인에 포함되지 않습니다.

다음 표에서는 SignedVersion 매개 변수가 버전 2014-02-14 이상으로 설정된 경우 서비스에서 권한 부여 및 REST 프로토콜 호출에 사용하는 버전 지정 체계에 대해 설명합니다.

api-version 매개 변수의 값 권한 부여에 사용되는 버전 프로토콜 동작에 사용되는 버전
지정되지 않음 매개 변수에 지정된 버전 sv 매개 변수에 지정된 버전 sv
형식의 모든 유효한 스토리지 서비스 버전 XXXX-XX-XX 매개 변수에 지정된 버전 sv 유효한 스토리지 서비스 버전 XXXX-XX-XX

예 1

다음 샘플 요청은 매개 변수 없이 를 통해 목록 Blob을 sv=2015-04-05 api-version 호출합니다.

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list&sv=2015-04-05&si=readpolicy&sig=a39 %2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d

이 경우 서비스는 버전 2015-04-05를 사용하여 요청을 인증하고 권한을 부여하고 버전 2015-04-05를 사용하여 작업을 실행합니다.

예제 2

다음 샘플 요청은 매개 변수를 통해 및 를 통해 Blob 나열을 호출합니다. sv=2015-04-05 api-version

https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list&sv=2015-04-05&si=readpolicy&sig=a39 %2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d&api-version=2012-02-12

여기서 서비스는 버전 2015-04-05를 사용하여 요청에 권한을 부여하고 버전 2012-02-12를 사용하여 작업을 실행합니다.

참고

.NET Storage 클라이언트 라이브러리는 항상 REST 프로토콜 api-version 버전(매개 변수)을 기반으로 하는 버전으로 설정합니다.

익명 액세스를 통한 요청

익명 액세스를 통한 요청은 만들어진 스토리지 계정 유형에 따라 다르게 처리됩니다.

범용 스토리지 계정의 경우

범용 스토리지 계정에 대한 익명 요청이 헤더를 지정하지 않고 x-ms-version Blob Service 속성 설정을사용하여 서비스의 기본 버전을 설정하지 않은 경우 서비스는 가능한 가장 빠른 버전을 사용하여 요청을 처리합니다. 그러나 컨테이너가 버전 2009-09-19 이상에서 수행된 컨테이너 ACL 설정 작업으로 공개되면 2009-09-19 버전을 사용하여 요청이 처리됩니다.

Blob Storage 계정의 경우

Blob Storage 계정에 대한 익명 요청이 헤더를 지정하지 않고 x-ms-version Blob 서비스 속성 설정을사용하여 서비스에 대한 기본 버전이 설정되지 않은 경우 서비스는 가능한 가장 빠른 버전을 사용하여 요청을 처리합니다. Blob Storage 계정의 경우 가능한 가장 빠른 버전은 2014-02-14입니다.

참고 항목