파일 서비스 속성 설정

작업은 Set File Service Properties FileREST API를 사용하여 파일 서비스 리소스에 대한 속성을 설정합니다. 이 API는 완전히 지원되지만 레거시 관리 API입니다. 대신 Azure Storage 리소스 공급자(Microsoft.Storage)에서 제공하는 파일 서비스 - 서비스 속성 설정을 사용하는 것이 좋습니다. Azure Storage 리소스 공급자를 사용하여 파일 서비스 리소스와 프로그래밍 방식으로 상호 작용하는 방법에 대한 자세한 내용은 파일 서비스에 대한 작업을 참조하세요.

프로토콜 가용성

활성화된 파일 공유 프로토콜 사용 가능
SMB Yes
NFS Yes

요청

요청을 다음과 같이 지정할 Set File Service Properties 수 있습니다. HTTPS를 사용하는 것이 좋습니다. account-name을 스토리지 계정의 이름으로 바꿉니다.

메서드 요청 URI HTTP 버전
PUT https://account-name.file.core.windows.net/?restype=service&comp=properties HTTP/1.1

참고

호스트 이름을 URI의 경로 및 쿼리 부분과 구분하려면 URI에 항상 슬래시 문자(/)가 포함되어야 합니다. 이 작업에서는 URI의 경로 부분이 비어 있습니다.

URI 매개 변수

URI 매개 변수 설명
restype=service&comp=properties 필수 요소. 저장소 서비스 속성을 설정하려면 두 쿼리 문자열의 조합이 필요합니다.
timeout 선택 사항입니다. timeout 매개 변수는 초 단위로 표시됩니다. 자세한 내용은 파일 서비스 작업에 대한 시간 제한 설정을 참조하세요.

요청 헤더

필수 및 선택적 요청 헤더는 다음 표에 설명되어 있습니다.

요청 헤더 Description
Authorization 필수 요소. 권한 부여 체계, 스토리지 계정 이름 및 서명을 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요.
Date or x-ms-date 필수 요소. 요청에 대한 UTC(협정 세계시)를 지정합니다. 자세한 내용은 Azure Storage에 대한 요청 권한 부여를 참조하세요.
x-ms-version 모든 권한 있는 요청에 필요합니다. 이 요청에 사용할 작업의 버전을 지정합니다. 이 작업은 버전 2015-02-21 이상에서만 사용할 수 있습니다. 파일 서비스에 대한 메트릭을 사용하도록 설정하려면 버전 2015-04-05 이상을 지정해야 합니다.

자세한 내용은 Azure Storage 서비스에 대한 버전 관리를 참조하세요.
x-ms-client-request-id 선택 사항입니다. 로깅이 구성될 때 스토리지 분석 로그에 기록되는 1키비바이트(KiB) 문자 제한을 사용하여 클라이언트에서 생성된 불투명 값을 제공합니다. 이 헤더를 사용하여 클라이언트 쪽 활동과 서버가 수신하는 요청의 상관 관계를 지정하는 것이 좋습니다. 자세한 내용은 Azure Files 모니터링을 참조하세요.

요청 본문

버전 2020-02-10에 대한 요청 본문의 형식은 다음과 같습니다.

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <HourMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </HourMetrics>  
    <MinuteMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </MinuteMetrics>  
    <Cors>  
        <CorsRule>  
            <AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>  
            <AllowedMethods>comma-separated-list-of-HTTP-verb</AllowedMethods>  
            <MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>  
            <ExposedHeaders>comma-seperated-list-of-response-headers</ExposedHeaders>  
            <AllowedHeaders>comma-seperated-list-of-request-headers</AllowedHeaders>  
        </CorsRule>  
    </Cors>    
    <ShareDeleteRetentionPolicy>
        <Enabled>true|false</Enabled>
        <Days>integer-value</Days>
    </ShareDeleteRetentionPolicy>
    <ProtocolSettings>
        <SMB>
            <Multichannel>
                <Enabled>true|false</Enabled>
            </Multichannel>
            <Versions>comma-separated-list-of-smb-versions</Versions>
            <AuthenticationMethods>comma-separated-list-of-auth-methods</AuthenticationMethod>
            <KerberosTicketEncryption>csv-of-kerb-encryption-algorithms</KerberosTicketEncryption>
            <ChannelEncryption>csv-of-smb-encryption-algorithms</ChannelEncryption>
        </SMB>
    </ProtocolSettings>
</StorageServiceProperties>  
  

요청의 모든 루트 요소를 지정할 필요는 없습니다. 루트 요소를 생략하면 해당 기능에 대한 서비스의 기존 설정이 유지됩니다. 그러나 특정 루트 요소를 지정하는 경우 해당 요소에 대한 모든 자식 요소를 지정해야 합니다. 루트 요소에는 다음이 포함됩니다.

  • HourMetrics
  • MinuteMetrics
  • Cors
  • ProtocolSettings

요청 본문의 요소는 다음 표에 설명되어 있습니다.

속성 Description
HourMetrics 버전 2015-04-05 이상에 대한 선택 사항입니다. 이전 버전에는 적용되지 않습니다. API별로 그룹화된 요청 통계의 요약을 시간별 집계로 제공하는 스토리지 분석 HourMetrics 설정을 그룹화합니다.
MinuteMetrics 버전 2015-04-05 이상에 대한 선택 사항입니다. 이전 버전에는 적용되지 않습니다. 각 분에 대한 요청 통계를 제공하는 스토리지 분석 MinuteMetrics 설정을 그룹화합니다.
Version 메트릭을 사용하는 경우 필요합니다. 구성할 Storage Analytics의 버전입니다. 이 값에 를 사용합니다 1.0 .
Enabled 필수 요소. 파일 서비스에 대해 메트릭을 사용할 수 있는지 여부를 나타냅니다.
IncludeAPIs 메트릭이 설정된 경우에만 필수 사항입니다. 호출된 API 작업에 대해 메트릭이 요약 통계를 생성할지 여부를 나타냅니다.
RetentionPolicy/Enabled 필수 요소. 파일 서비스에 대해 보존 정책을 사용할 수 있는지 여부를 나타냅니다. false이면 메트릭 데이터가 보존되고 사용자는 메트릭 데이터를 삭제할 책임이 있습니다.
RetentionPolicy/Days 보존 정책이 설정된 경우에만 필수입니다. 메트릭 데이터를 보존해야 하는 일 수를 나타냅니다. 이 값보다 오래된 모든 데이터가 삭제됩니다. 지정할 수 있는 최소값은 이며 1최대값은 (1년)입니다 365 . 메트릭 데이터는 보존 기간이 만료된 후 최상의 노력으로 삭제됩니다.
Cors 선택 사항입니다. 요소는 Cors 버전 2015-02-21 이상에서 지원됩니다. 모든 CORS(원본 간 리소스 공유) 규칙을 그룹화합니다. 이 요소 그룹을 생략해도 기존 CORS 설정은 덮어쓰지 않습니다.
CorsRule 선택 사항입니다. 파일 서비스에 대한 CORS 규칙을 지정합니다. 요청에는 최대 5개의 CorsRule 요소가 포함될 수 있습니다. 요청 본문에 요소가 포함되지 않으면 CorsRule 모든 CORS 규칙이 삭제되고 파일 서비스에 대해 CORS가 비활성화됩니다.
AllowedOrigins 요소가 있는 CorsRule 경우 필요합니다. CORS를 통해 허용되는 원본 도메인의 쉼표로 구분된 목록 또는 모든 도메인을 허용하는 "*" 목록입니다. 원본 도메인에는 도메인의 모든 하위 도메인에 대한 CORS를 통한 요청을 허용하는 와일드카드 문자가 하위 도메인에 포함될 수도 있습니다. 64개의 원본 도메인으로 제한됩니다. 허용되는 각 원본은 최대 256자만 포함할 수 있습니다.
ExposedHeaders 요소가 있는 CorsRule 경우 필요합니다. CORS 클라이언트에 노출할 응답 헤더의 쉼표로 구분된 목록입니다. 64개의 정의된 헤더 및 2개의 접두사 헤더로 제한됩니다. 각 헤더는 최대 256자를 포함할 수 있습니다.
MaxAgeInSeconds 요소가 있는 CorsRule 경우 필요합니다. 클라이언트/브라우저가 실행 전 응답을 캐시해야 하는 시간(초)입니다.
AllowedHeaders 요소가 있는 경우 CorsRule 필요합니다. 원본 간 요청의 일부가 될 수 있는 헤더의 쉼표로 구분된 목록입니다. 64개의 정의된 헤더 및 2개의 접두사 헤더로 제한됩니다. 각 헤더는 최대 256자를 포함할 수 있습니다.
AllowedMethods CorsRule 요소가 있으면 필수 사항입니다. 원본에서 실행할 수 있도록 허용되는 HTTP 메서드의 쉼표로 구분된 목록입니다. Azure Files 허용되는 메서드는 , , , HEAD, , 및 입니다DELETEPUT. OPTIONSPOSTMERGEGET
ShareDeleteRetentionPolicy 선택 사항입니다. 이 스토리지 계정의 Azure 파일 공유에 대한 일시 삭제 속성입니다.
Days 선택 사항입니다. Azure 파일 공유를 보존해야 하는 일 수를 나타냅니다(일시 삭제). 지정할 수 있는 최소값은 이며 1최대값은 (1년)입니다 365 .
Enabled 선택 사항입니다. 스토리지 계정에 Azure Files 일시 삭제가 사용하도록 설정되어 있는지 여부를 나타냅니다.
ProtocolSettings 선택 사항입니다. 파일 시스템 프로토콜에 대한 설정을 그룹화합니다.
SMB 선택 사항입니다. SMB에 대한 설정을 그룹화합니다.
Multichannel 선택 사항입니다. SMB 다중 채널에 대한 설정을 포함합니다. SMB 다중 채널에는 Enabled SMB 다중 채널의 상태를 토글하는 부울 속성이 포함되어 있습니다.
Version 버전 2020-04-08 현재 선택 사항입니다. 허용된 SMB 버전의 쉼표로 구분된 목록입니다. 허용되는 값은 SMB2.1, SMB3.0SMB3.1.1입니다.
AuthenticationMethods 버전 2020-04-08 현재 선택 사항입니다. 허용된 인증 방법의 쉼표로 구분된 목록입니다. 허용되는 값은 NTLMv2Kerberos입니다.
KerberosTicketEncryption 버전 2020-04-08 현재 선택 사항입니다. 허용된 Kerberos 티켓 암호화 알고리즘의 쉼표로 구분된 목록입니다. 허용되는 값은 RC4-HMACAES-256입니다.
ChannelEncryption 버전 2020-04-08 현재 선택 사항입니다. 허용된 SMB 채널 암호화 프로토콜의 쉼표로 구분된 목록입니다. 허용되는 값은 AES-128-CCM, AES-128-GCMAES-256-GCM입니다.

응답

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

상태 코드

작업에 성공하면 상태 코드 202(수락됨)가 반환됩니다.

응답 헤더

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

응답 헤더 Description
x-ms-request-id 서비스에 대해 만들어진 요청을 고유하게 식별하는 값입니다.
x-ms-version 응답에 사용된 작업의 버전을 지정합니다. 자세한 내용은 Azure Storage 서비스에 대한 버전 관리를 참조하세요.
x-ms-client-request-id 요청 및 해당 응답 문제를 해결하는 데 사용할 수 있습니다. 헤더 값은 x-ms-client-request-id 헤더가 요청에 있고 표시되는 ASCII 문자가 1,024자 이하인 경우 헤더 값과 같습니다. 헤더가 x-ms-client-request-id 요청에 없으면 응답에 표시되지 않습니다.

응답 본문

없음

권한 부여

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

설명

다음 제한 사항 및 제한 사항은 Azure Files CORS 규칙에 적용됩니다.

  • 최대 5개의 규칙을 저장할 수 있습니다.

  • XML 태그를 제외한 요청에 대한 모든 CORS 규칙 설정의 최대 크기는 2KiB를 초과하면 안 됩니다.

  • 허용되는 헤더, 표시되는 헤더 또는 허용되는 원본의 길이는 256자를 초과할 수 없습니다.

  • 허용되는 헤더 및 노출된 헤더는 다음 중 하나일 수 있습니다.

    • 정확한 헤더 이름이 제공된 리터럴 헤더(예: x-ms-meta-processed). 요청에 대해 최대 64개의 리터럴 헤더를 지정할 수 있습니다.

    • 헤더 접두사가 제공된 접두사 헤더(예: x-ms-meta-data*). 이러한 방식으로 접두사를 지정하면 해당 접두사로 시작하는 헤더를 허용하거나 노출합니다. 요청에 최대 두 개의 접두사 헤더를 지정할 수 있습니다.

  • 요소에 AllowedMethods 지정된 메서드(또는 HTTP 동사)는 Azure Storage 서비스 API에서 지원하는 메서드를 준수해야 합니다. 지원되는 메서드는 , , GET, , , 및 입니다DELETEPUT. OPTIONSPOSTMERGEHEAD

요청에 CORS 규칙 지정은 선택 사항입니다. 요청 본문에서 CORS 요소를 지정하지 않고 를 호출 Set File Service Properties 하면 기존 CORS 규칙이 유지됩니다.

CORS를 사용하지 않도록 설정하려면 내부 CORS 규칙이 없는 빈 CORS 규칙 설정(즉, </Cors>)을 사용하여 를 호출 Set File Service Properties 합니다. 이 호출은 기존 규칙을 삭제하고 파일 서비스에 대해 CORS를 사용하지 않도록 설정합니다.

CorsRule 요소가 지정된 경우에는 모든 CORS 규칙 요소가 필요합니다. 요소가 누락된 경우 오류 코드 400(잘못된 요청)과 함께 요청이 실패합니다.

CORS 규칙 및 평가 논리에 대한 자세한 내용은 Azure Storage 서비스에 대한 원본 간 리소스 공유 지원을 참조하세요.

샘플 요청 및 응답

다음 샘플 URI는 myaccount라는 스토리지 계정에 대한 파일 서비스 속성을 변경하도록 요청합니다.

PUT https://myaccount.file.core.windows.net/?restype=service&comp=properties HTTP/1.1

이 요청은 다음 헤더와 함께 전송되었습니다.

x-ms-version: 2020-02-10  
x-ms-date: <date>  
Authorization: SharedKey myaccount:Z1lTLDwtq5o1UYQluucdsXk6/iB7YxEu0m6VofAEkUE=  
Host: myaccount.file.core.windows.net  

이 요청은 다음 XML 본문과 함께 전송되었습니다.

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <HourMetrics>  
        <Version>1.0</Version>  
        <Enabled>true</Enabled>  
        <IncludeAPIs>false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true</Enabled>  
            <Days>7</Days>  
        </RetentionPolicy>  
    </HourMetrics>  
    <MinuteMetrics>  
        <Version>1.0</Version>  
        <Enabled>true</Enabled>  
        <IncludeAPIs>true</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true</Enabled>  
            <Days>7</Days>  
        </RetentionPolicy>  
    </MinuteMetrics>  
    <Cors>  
        <CorsRule>  
            <AllowedOrigins>http://www.fabrikam.com,http://www.contoso.com</AllowedOrigins>  
            <AllowedMethods>GET,PUT</AllowedMethods>  
            <MaxAgeInSeconds>500</MaxAgeInSeconds>  
            <ExposedHeaders>x-ms-meta-data*,x-ms-meta-customheader</ExposedHeaders>  
            <AllowedHeaders>x-ms-meta-target*,x-ms-meta-customheader</AllowedHeaders>  
        </CorsRule>  
    </Cors>
    <ShareDeleteRetentionPolicy>
        <Enabled>true</Enabled>
        <Days>7</Days>
    </ShareDeleteRetentionPolicy>
    <ProtocolSettings>
        <SMB>
            <Multichannel>
                <Enabled>true</Enabled>
            </Multichannel>
            <Versions>SMB3.1.1</Versions>
            <AuthenticationMethods>Kerberos</AuthenticationMethods>
            <KerberosTicketEncryption>AES-256</KerberosTicketEncryption>
            <ChannelEncryption>AES-256-GCM</ChannelEncryption>
        </SMB>
    </ProtocolSettings>
</StorageServiceProperties>  

요청이 전송된 후에는 다음과 같은 응답이 반환됩니다.

HTTP/1.1 202 Accepted  
Connection: Keep-Alive  
Transfer-Encoding: chunked  
Date: <date>  
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0  
x-ms-request-id: cb939a31-0cc6-49bb-9fe5-3327691f2a30  
x-ms-version: 2015-04-05  

추가 정보

CORS 규칙 및 평가 논리에 대한 자세한 내용은 Azure Storage 서비스에 대한 원본 간 리소스 공유 지원을 참조하세요.

스토리지 분석 대한 자세한 내용은 스토리지 분석 참조하세요.