의 버전 4(V4) SDK for .NET 는 미리 보기 중입니다! 미리 보기에서이 새 버전에 대한 정보를 보려면 AWS SDK for .NET (버전 4 미리 보기) 개발자 안내서를 참조하세요.
SDK의 V4는 미리 보기 상태이므로 콘텐츠는 변경될 수 있습니다.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
참고
이 항목의 정보는 .NET Framework를 기반으로 하는 프로젝트에만 해당됩니다. .NET Core 기반 프로젝트에는 기본적으로 App.config
및 Web.config
파일이 표시되지 않습니다.
.NET 프로젝트의 App.config
또는 Web.config
파일을 사용하여 AWS 자격 증명, 로깅 옵션, AWS 서비스 엔드포인트 및 AWS 리전과 같은 AWS 설정과 Amazon DynamoDB, Amazon EC2 및 Amazon S3와 같은 AWS 서비스에 대한 일부 설정을 지정할 수 있습니다. 다음 내용은 App.config
또는 Web.config
파일의 적당한 형식을 설정하여 이러한 유형의 설정을 지정하는 방법을 기술한 것입니다.
참고
App.config
또는 Web.config
파일의 <appSettings>
요소를 계속 사용하여 AWS 설정을 지정할 수 있지만이 주제의 뒷부분에 설명된 대로 <configSections>
및 <aws>
요소를 사용하는 것이 좋습니다. <appSettings>
요소에 대한 자세한 내용은 애플리케이션 구성의 <appSettings>
요소 예제를 참조하세요. SDK for .NET
참고
코드 파일에서 다음 AWSConfigs 클래스 속성을 계속 사용하여 AWS 설정을 지정할 수 있지만 다음 속성은 더 이상 사용되지 않으며 향후 릴리스에서 지원되지 않을 수 있습니다.
-
DynamoDBContextTableNamePrefix
-
EC2UseSignatureVersion4
-
LoggingOptions
-
LogMetrics
-
ResponseLoggingOption
-
S3UseSignatureVersion4
일반적으로 코드 파일의 AWSConfigs
클래스 속성을 사용하여 AWS 설정을 지정하는 대신 또는 App.config
Web.config
파일의 <configSections>
및 <aws>
요소를 사용하여이 주제의 뒷부분에 설명된 대로 AWS 설정을 지정하는 것이 좋습니다. 이전 속성에 대한 자세한 내용은 애플리케이션 구성의 AWSConfigs
코드 예제를 참조하세요. SDK for .NET
AWS 설정 섹션 선언
<aws>
요소 내에서 App.config
또는 Web.config
파일에 AWS 설정을 지정합니다. <aws>
요소를 사용하기 전에 다음 예제와 같이 <section>
요소(<configSections>
요소의 하위 요소)를 생성하여 name
에는 aws
속성을, type
에는 Amazon.AWSSection, AWSSDK.Core
속성을 설정해야 합니다.
<?xml version="1.0"?>
<configuration>
...
<configSections>
<section name="aws" type="Amazon.AWSSection, AWSSDK.Core"/>
</configSections>
<aws>
<!-- Add your desired AWS settings declarations here. -->
</aws>
...
</configuration>
Visual Studio 편집기에서는 <aws>
요소 또는 그 하위 요소에 대해서는 자동 코드 완성(IntelliSense) 기능을 제공하지 않습니다.
<aws>
요소의 올바른 형식 버전을 생성하는 데 도움을 받으려면 Amazon.AWSConfigs.GenerateConfigTemplate
메서드를 호출하십시오. 그렇게 하면 <aws>
요소의 표준 버전이 가독성 좋게 꾸민 문자열로 출력되는데, 이를 필요에 따라 수정할 수 있습니다. 다음 섹션에서는 <aws>
요소의 속성 및 하위 요소에 대해 설명합니다.
허용되는 요소
다음 목록은 AWS
설정 섹션에서 허용되는 요소들 간의 논리적 관계를 나타낸 것입니다. Amazon.AWSConfigs.GenerateConfigTemplate
메서드를 호출하여 이 목록의 최신 버전을 생성할 수 있습니다. 그렇게 하면 <aws>
요소의 표준 버전이 가독성 좋게 꾸민 문자열로 출력되는데, 이를 필요에 따라 수정할 수 있습니다.
<aws
endpointDefinition="string value"
region="string value"
profileName="string value"
profilesLocation="string value">
<logging
logTo="None, Log4Net, SystemDiagnostics"
logResponses="Never | OnError | Always"
logMetrics="true | false"
logMetricsFormat="Standard | JSON"
logMetricsCustomFormatter="NameSpace.Class, Assembly" />
<dynamoDB
conversionSchema="V1 | V2">
<dynamoDBContext
tableNamePrefix="string value">
<tableAliases>
<alias
fromTable="string value"
toTable="string value" />
</tableAliases>
<map
type="NameSpace.Class, Assembly"
targetTable="string value">
<property
name="string value"
attribute="string value"
ignore="true | false"
version="true | false"
converter="NameSpace.Class, Assembly" />
</map>
</dynamoDBContext>
</dynamoDB>
<s3
useSignatureVersion4="true | false" />
<ec2
useSignatureVersion4="true | false" />
<proxy
host="string value"
port="1234"
username="string value"
password="string value" />
</aws>
요소 참조
다음은 AWS 설정 섹션에서 허용되는 요소의 목록입니다. 각 요소에 허용되는 속성 및 상위-하위 요소가 나열되어 있습니다.
별칭
<alias>
요소는 한 가지 형식에 맞게 구성된 테이블과는 다른 테이블을 지정하는 한 개 이상의 테이블 매핑(from-table에서 to-table로 매핑) 모음에 있는 단일 항목을 나타냅니다. 이 요소는 AWS SDK for .NET의 Amazon.AWSConfigs.DynamoDBConfig.Context.TableAliases
속성에서 Amazon.Util.TableAlias
클래스의 인스턴스로 매핑됩니다. 테이블 이름 접두사를 적용하기 전에 다시 매핑이 됩니다.
이 요소에는 다음과 같은 속성이 포함될 수 있습니다.
-
fromTable
-
from-table에서 to-table로의 매핑에서 from-table 부분. 이 속성은 AWS SDK for .NET의
Amazon.Util.TableAlias.FromTable
속성으로 매핑됩니다. -
toTable
-
from-table에서 to-table로의 매핑에서 to-table 부분. 이 속성은 AWS SDK for .NET의
Amazon.Util.TableAlias.ToTable
속성으로 매핑됩니다.
<alias>
요소의 부모는 <tableAliases>
요소입니다.
<alias>
요소에는 하위 요소가 포함되어 있지 않습니다.
다음은 사용 중인 <alias>
요소의 예입니다.
<alias
fromTable="Studio"
toTable="Studios" />
aws
<aws>
요소는 AWS 설정 섹션에서 최상위 요소를 나타냅니다. 이 요소에는 다음과 같은 속성이 포함될 수 있습니다.
-
endpointDefinition
-
사용할 AWS 리전과 엔드포인트를 정의하는 사용자 지정 구성 파일의 절대 경로입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.EndpointDefinition
속성으로 매핑됩니다. -
profileName
-
서비스 호출에 사용할 저장된 AWS 자격 증명의 프로필 이름입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.AWSProfileName
속성으로 매핑됩니다. -
profilesLocation
-
다른 AWS SDKs. 기본적으로 자격 증명 파일은 현재 사용자의 홈 디렉터리에 있는
.aws
디렉터리에 저장됩니다. 이 속성은 AWS SDK for .NET의Amazon.AWSConfigs.AWSProfilesLocation
속성으로 매핑됩니다. -
region
-
AWS 리전을 명시적으로 지정하지 않은 클라이언트의 기본 리전 ID입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.AWSRegion
속성으로 매핑됩니다.
<aws>
요소에는 상위 요소가 없습니다.
<aws>
요소에는 다음과 같은 하위 요소가 포함될 수 있습니다.
-
<dynamoDB>
-
<ec2>
-
<logging>
-
<proxy>
-
<s3>
다음은 사용 중인 <aws>
요소의 예입니다.
<aws
endpointDefinition="C:\Configs\endpoints.xml"
region="us-west-2"
profileName="development"
profilesLocation="C:\Configs">
<!-- ... -->
</aws>
dynamoDB
<dynamoDB>
요소는 Amazon DynamoDB의 설정 모음을 나타냅니다. 이 요소에는 .NET 및 DynamoDB 객체 간 변환에 사용할 버전을 나타내는 conversionSchema 속성이 포함될 수 있습니다. 허용되는 값은 V1, V2 등입니다. 이 속성은 AWS SDK for .NET의 Amazon.DynamoDBv2.DynamoDBEntryConversion
클래스로 매핑됩니다. 자세한 내용은 DynamoDB 시리즈 - 변환 스키마
<dynamoDB>
요소의 부모는 <aws>
요소입니다.
<dynamoDB>
요소에는 하위 요소인 <dynamoDBContext>
가 포함될 수 있습니다.
다음은 사용 중인 <dynamoDB>
요소의 예입니다.
<dynamoDB
conversionSchema="V2">
<!-- ... -->
</dynamoDB>
dynamoDBContext
<dynamoDBContext>
요소는 Amazon DynamoDB의 상황에 맞는 설정 모음을 나타냅니다. 이 요소에는 수동으로 구성하지 않은 경우 DynamoDB 컨텍스트에서 사용할 기본 테이블 이름 접두사를 나타내는 tableNamePrefix 속성이 포함될 수 있습니다. 이 속성은 AWS SDK for .NET의 Amazon.AWSConfigs.DynamoDBConfig.Context.TableNamePrefix
속성에서 Amazon.Util.DynamoDBContextConfig.TableNamePrefix
속성으로 매핑됩니다. 자세한 내용은 DynamoDB SDK의 개선점
<dynamoDBContext>
요소의 부모는 <dynamoDB>
요소입니다.
<dynamoDBContext>
요소에는 다음과 같은 하위 요소가 포함될 수 있습니다.
-
<alias>
(하나 이상의 인스턴스) -
<map>
(하나 이상의 인스턴스)
다음은 사용 중인 <dynamoDBContext>
요소의 예입니다.
<dynamoDBContext
tableNamePrefix="Test-">
<!-- ... -->
</dynamoDBContext>
EC2
<ec2>
요소는 Amazon EC2 설정 모음을 나타냅니다. 이 요소에는 모든 요청에 서명 버전 4 서명을 사용할 것인지(true) 또는 모든 요청에 서명 버전 4 서명을 사용하지 않을 것인지(false, 기본값)를 지정하는 useSignatureVersion4 속성이 포함될 수 있습니다. 이 속성은 AWS SDK for .NET의 Amazon.AWSConfigs.EC2Config.UseSignatureVersion4
속성에서 Amazon.Util.EC2Config.UseSignatureVersion4
속성으로 매핑됩니다.
<ec2>
요소의 부모가 그 요소입니다.
<ec2>
요소에는 하위 요소가 포함되어 있지 않습니다.
다음은 사용 중인 <ec2>
요소의 예입니다.
<ec2
useSignatureVersion4="true" />
로그
<logging>
요소는 응답 로깅 및 성능 측정치 로깅에 대한 설정 모음을 나타냅니다. 이 요소에는 다음과 같은 속성이 포함될 수 있습니다.
-
logMetrics
-
성능 측정치를 모든 클라이언트 및 구성에 대해 로깅(true)할지 여부를 나타냅니다. 로깅하지 않는 경우 false. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.LoggingConfig.LogMetrics
속성에서Amazon.Util.LoggingConfig.LogMetrics
속성으로 매핑됩니다. -
logMetricsCustomFormatter
-
로깅 측정치를 위한 사용자 지정 포맷터의 데이터 유형 및 어셈블리 이름입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.LoggingConfig.LogMetricsCustomFormatter
속성에서Amazon.Util.LoggingConfig.LogMetricsCustomFormatter
속성으로 매핑됩니다. -
logMetricsFormat
-
로깅 측정치가 표시되는 형식입니다( AWS SDK for .NET의
Amazon.AWSConfigs.LoggingConfig.LogMetricsFormat
속성에서Amazon.Util.LoggingConfig.LogMetricsFormat
속성으로 매핑됨).허용되는 값은 다음과 같습니다.
-
JSON
-
JSON 형식을 사용합니다.
-
Standard
-
기본 형식을 사용합니다.
-
-
logResponses
-
서비스 응답을 로깅할 시점입니다( AWS SDK for .NET의
Amazon.AWSConfigs.LoggingConfig.LogResponses
속성에서Amazon.Util.LoggingConfig.LogResponses
속성으로 매핑됨).허용되는 값은 다음과 같습니다.
-
Always
-
서비스 응답을 항상 로깅.
-
Never
-
서비스 응답을 로깅하지 않음.
-
OnError
-
오류가 있을 때만 서비스 응답을 로깅.
-
-
logTo
-
에 로그인할 위치(의
LogTo
속성에서Amazon.AWSConfigs.LoggingConfig.LogTo
속성에 매핑 AWS SDK for .NET).허용되는 값에는 다음 중 한 개 이상이 포함됩니다.
-
Log4Net
-
log4net에 로깅.
-
None
-
로깅을 비활성화.
-
SystemDiagnostics
-
System.Diagnostics에 로깅.
-
<logging>
요소의 부모는 <aws>
요소입니다.
<logging>
요소에는 하위 요소가 포함되어 있지 않습니다.
다음은 사용 중인 <logging>
요소의 예입니다.
<logging
logTo="SystemDiagnostics"
logResponses="OnError"
logMetrics="true"
logMetricsFormat="JSON"
logMetricsCustomFormatter="MyLib.Util.MyMetricsFormatter, MyLib" />
map
<map>
요소는 .NET 형식에서 DynamoDB 테이블로 형식-테이블 간 매핑 모음에 있는 단일 항목을 나타냅니다( AWS SDK for .NET의 Amazon.AWSConfigs.DynamoDBConfig.Context.TypeMappings
속성에서 TypeMapping
클래스의 인스턴스로 매핑됨). 자세한 내용은 DynamoDB SDK의 개선점
이 요소에는 다음과 같은 속성이 포함될 수 있습니다.
-
targetTable
-
매핑이 적용되는 DynamoDB 테이블입니다. 이 속성은 AWS SDK for .NET의
Amazon.Util.TypeMapping.TargetTable
속성으로 매핑됩니다. -
type
-
매핑이 적용되는 형식 및 어셈블리 이름입니다. 이 속성은 AWS SDK for .NET의
Amazon.Util.TypeMapping.Type
속성으로 매핑됩니다.
<map>
요소의 부모는 <dynamoDBContext>
요소입니다.
<map>
요소에는 하위 요소인 <property>
의 인스턴스가 한 개 이상 포함될 수 있습니다.
다음은 사용 중인 <map>
요소의 예입니다.
<map
type="SampleApp.Models.Movie, SampleDLL"
targetTable="Movies">
<!-- ... -->
</map>
property
<property>
요소는 DynamoDB 속성을 나타냅니다. (이 요소는의 AddProperty
메서드에서 Amazon.Util.PropertyConfig 클래스의 인스턴스에 매핑됩니다 AWS SDK for .NET.) 자세한 내용은 DynamoDB SDK 및 DynamoDB 속성에 대한 기능 향상을
이 요소에는 다음과 같은 속성이 포함될 수 있습니다.
-
attribute
-
범위 키 이름과 같은 속성에 대한 속성 이름입니다. 이 속성은 AWS SDK for .NET의
Amazon.Util.PropertyConfig.Attribute
속성으로 매핑됩니다. -
converter
-
이 속성에 사용해야 할 변환기의 유형입니다. 이 속성은 AWS SDK for .NET의
Amazon.Util.PropertyConfig.Converter
속성으로 매핑됩니다. -
ignore
-
연결된 속성을 무시(true)할지 여부를 나타냅니다. 무시하지 않을 경우 false. 이 속성은 AWS SDK for .NET의
Amazon.Util.PropertyConfig.Ignore
속성으로 매핑됩니다. -
name
-
속성의 이름입니다. 이 속성은 AWS SDK for .NET의
Amazon.Util.PropertyConfig.Name
속성으로 매핑됩니다. -
version
-
이 속성이 항목 버전 번호를 저장(true)할지 여부를 나타냅니다. 저장하지 않을 경우 false. 이 속성은 AWS SDK for .NET의
Amazon.Util.PropertyConfig.Version
속성으로 매핑됩니다.
<property>
요소의 부모는 <map>
요소입니다.
<property>
요소에는 하위 요소가 포함되어 있지 않습니다.
다음은 사용 중인 <property>
요소의 예입니다.
<property
name="Rating"
converter="SampleApp.Models.RatingConverter, SampleDLL" />
proxy
<proxy>
요소는 AWS SDK for .NET 에서 사용할 프록시를 구성하기 위한 설정을 나타냅니다. 이 요소에는 다음과 같은 속성이 포함될 수 있습니다.
- host
-
프록시 서버의 호스트 이름 또는 IP 주소입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.ProxyConfig.Host
속성에서Amazon.Util.ProxyConfig.Host
속성으로 매핑됩니다. - 비밀번호
-
프록시 서버로 인증하는 데 필요한 암호입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.ProxyConfig.Password
속성에서Amazon.Util.ProxyConfig.Password
속성으로 매핑됩니다. - 포트
-
프록시의 포트 번호입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.ProxyConfig.Port
속성에서Amazon.Util.ProxyConfig.Port
속성으로 매핑됩니다. - 사용자 이름
-
프록시 서버로 인증하는 데 필요한 사용자 이름입니다. 이 속성은 AWS SDK for .NET의
Amazon.AWSConfigs.ProxyConfig.Username
속성에서Amazon.Util.ProxyConfig.Username
속성으로 매핑됩니다.
<proxy>
요소의 부모는 <aws>
요소입니다.
<proxy>
요소에는 하위 요소가 포함되어 있지 않습니다.
다음은 사용 중인 <proxy>
요소의 예입니다.
<proxy
host="192.0.2.0"
port="1234"
username="My-Username-Here"
password="My-Password-Here" />
s3
<s3>
요소는 Amazon S3 설정 모음을 나타냅니다. 이 요소에는 모든 요청에 서명 버전 4 서명을 사용할 것인지(true) 또는 모든 요청에 서명 버전 4 서명을 사용하지 않을 것인지(false, 기본값)를 지정하는 useSignatureVersion4 속성이 포함될 수 있습니다. 이 속성은 AWS SDK for .NET의 Amazon.AWSConfigs.S3Config.UseSignatureVersion4
속성으로 매핑됩니다.
<s3>
요소의 부모는 <aws>
요소입니다.
<s3>
요소에는 하위 요소가 포함되어 있지 않습니다.
다음은 사용 중인 <s3>
요소의 예입니다.
<s3 useSignatureVersion4="true" />