A versão 4 (V4) do AWS SDK for .NET está em pré-visualização! Para ver informações sobre essa nova versão na versão prévia, consulte o Guia do desenvolvedor AWS SDK for .NET (versão 4).
Observe que a V4 do SDK está em versão prévia, portanto, seu conteúdo está sujeito a alterações.
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Referência de arquivos de configuração para AWS SDK for .NET
nota
As informações neste tópico são específicas para projetos baseados no .NET Framework. Os arquivos App.config
e Web.config
não estão presentes por padrão em projetos baseados no .NET Core.
Você pode usar um projeto App.config
ou Web.config
arquivo do.NET para especificar AWS configurações, como AWS credenciais, opções de registro, endpoints de AWS serviço e AWS regiões, bem como algumas configurações de AWS serviços, como Amazon DynamoDB, EC2 Amazon e Amazon S3. As informações a seguir descrevem como formatar de forma apropriada um arquivo App.config
ou Web.config
para especificar esses tipos de configurações.
nota
Embora você possa continuar usando o <appSettings>
elemento em um Web.config
arquivo App.config
ou para especificar AWS configurações, recomendamos que você use os <aws>
elementos <configSections>
e conforme descrito posteriormente neste tópico. Para obter mais informações sobre o <appSettings>
elemento, consulte os exemplos de <appSettings>
elementos em Configurando seu AWS SDK for .NET aplicativo.
nota
Embora você possa continuar usando as seguintes propriedades de AWSConfigsclasse em um arquivo de código para especificar AWS configurações, as propriedades a seguir estão obsoletas e podem não ser suportadas em versões futuras:
-
DynamoDBContextTableNamePrefix
-
EC2UseSignatureVersion4
-
LoggingOptions
-
LogMetrics
-
ResponseLoggingOption
-
S3UseSignatureVersion4
Em geral, recomendamos que, em vez de usar propriedades de AWSConfigs
classe em um arquivo de código para especificar AWS configurações, você use os <aws>
elementos <configSections>
e em um Web.config
arquivo App.config
ou para especificar AWS configurações, conforme descrito posteriormente neste tópico. Para obter mais informações sobre as propriedades anteriores, consulte os exemplos de AWSConfigs
código em Configurando seu AWS SDK for .NET aplicativo.
Declarando uma seção de AWS configurações
Você especifica AWS as configurações em um Web.config
arquivo App.config
ou de dentro do <aws>
elemento. Antes de começar a usar o elemento <aws>
, é necessário criar um elemento <section>
(que é um elemento filho do elemento <configSections>
) e definir o seu atributo name
como aws
e o atributo type
como Amazon.AWSSection, AWSSDK.Core
, conforme mostrado no seguinte exemplo:
<?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>
O Editor do Visual Studio não fornece preenchimento automático de código (IntelliSense) para o <aws>
elemento ou seus elementos secundários.
Para auxiliá-lo na criação de uma versão corretamente formatada <aws>
, chame o método Amazon.AWSConfigs.GenerateConfigTemplate
. Isso gera como saída uma versão canônica do elemento <aws>
como uma string formatada, que pode ser adaptada para as suas necessidades. As seções a seguir descrevem os atributos e os elementos filho do elemento <aws>
.
Elementos permitidos
A seguir encontra-se uma lista das relações lógicas entre os elementos permitidos em uma seção de configurações da AWS
. Gere a versão mais recente dessa lista chamando o método Amazon.AWSConfigs.GenerateConfigTemplate
, que gera como saída uma versão canônica do elemento <aws>
como uma string que pode ser adaptada para as suas necessidades.
<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>
Referência dos elementos
A seguir está uma lista dos elementos permitidos em uma seção de AWS configurações. Para cada elemento, são listados os atributos permitidos e os elementos filho.
alias
O elemento <alias>
representa um único item em um conjunto de um ou mais mapeamentos from-table até to-table, que especifica uma tabela diferente daquela configurada para um tipo. Esse elemento é mapeado para uma instância da classe Amazon.Util.TableAlias
da propriedade Amazon.AWSConfigs.DynamoDBConfig.Context.TableAliases
no AWS SDK for .NET. O remapeamento é feito antes de aplicar um prefixo de nome da tabela.
Esse elemento pode incluir os seguintes atributos:
-
fromTable
-
A parte from-table do mapeamento from-table até to-table. Esse atributo é mapeado para a propriedade
Amazon.Util.TableAlias.FromTable
no AWS SDK for .NET. -
toTable
-
A parte to-table do mapeamento from-table até to-table. Esse atributo é mapeado para a propriedade
Amazon.Util.TableAlias.ToTable
no AWS SDK for .NET.
O pai do elemento <alias>
é o elemento <tableAliases>
.
O elemento <alias>
não contém elementos filho.
Veja a seguir um exemplo do elemento <alias>
em uso:
<alias
fromTable="Studio"
toTable="Studios" />
aws
O <aws>
elemento representa o elemento mais alto em uma seção de AWS configurações. Esse elemento pode incluir os seguintes atributos:
-
endpointDefinition
-
O caminho absoluto para um arquivo de configuração personalizado que define as AWS regiões e os endpoints a serem usados. Esse atributo é mapeado para a propriedade
Amazon.AWSConfigs.EndpointDefinition
no AWS SDK for .NET. -
profileName
-
O nome do perfil das AWS credenciais armazenadas que serão usadas para fazer chamadas de serviço. Esse atributo é mapeado para a propriedade
Amazon.AWSConfigs.AWSProfileName
no AWS SDK for .NET. -
profilesLocation
-
O caminho absoluto para a localização do arquivo de credenciais compartilhado com outros AWS SDKs. Por padrão, o arquivo de credenciais está armazenado no diretório
.aws
no diretório base do usuário atual. Esse atributo é mapeado para a propriedadeAmazon.AWSConfigs.AWSProfilesLocation
no AWS SDK for .NET. -
region
-
O ID de AWS região padrão para clientes que não especificaram explicitamente uma região. Esse atributo é mapeado para a propriedade
Amazon.AWSConfigs.AWSRegion
no AWS SDK for .NET.
O elemento <aws>
não possui elemento pai.
O elemento <aws>
pode incluir os seguintes elementos filho:
-
<dynamoDB>
-
<ec2>
-
<logging>
-
<proxy>
-
<s3>
Veja a seguir um exemplo do elemento <aws>
em uso:
<aws
endpointDefinition="C:\Configs\endpoints.xml"
region="us-west-2"
profileName="development"
profilesLocation="C:\Configs">
<!-- ... -->
</aws>
dynamoDB
O elemento <dynamoDB>
representa um conjunto de configurações do Amazon DynamoDB. Este elemento pode incluir o atributo conversionSchema, que representa a versão a ser usada para conversão entre objetos .NET e DynamoDB. Os valores permitidos incluem V1 e V2. Esse atributo é mapeado para a classe Amazon.DynamoDBv2.DynamoDBEntryConversion
no AWS SDK for .NET. Para obter mais informações, consulte Série DynamoDB – esquemas de conversão
O pai do elemento <dynamoDB>
é o elemento <aws>
.
O elemento <dynamoDB>
pode incluir o elemento filho <dynamoDBContext>
.
Veja a seguir um exemplo do elemento <dynamoDB>
em uso:
<dynamoDB
conversionSchema="V2">
<!-- ... -->
</dynamoDB>
dínamo DBContext
O elemento <dynamoDBContext>
representa um conjunto de configurações específicas de contexto do Amazon DynamoDB. Esse elemento pode incluir o tableNamePrefixatributo, que representa o prefixo padrão do nome da tabela que o contexto do DynamoDB usará se não for configurado manualmente. Esse atributo é mapeado para a propriedade Amazon.Util.DynamoDBContextConfig.TableNamePrefix
da propriedade Amazon.AWSConfigs.DynamoDBConfig.Context.TableNamePrefix
no AWS SDK for .NET. Para obter mais informações, consulte Aprimoramentos do DynamoDB SDK
O pai do elemento <dynamoDBContext>
é o elemento <dynamoDB>
.
O elemento <dynamoDBContext>
pode incluir os seguintes elementos filho:
-
<alias>
(uma ou mais instâncias) -
<map>
(uma ou mais instâncias)
Veja a seguir um exemplo do elemento <dynamoDBContext>
em uso:
<dynamoDBContext
tableNamePrefix="Test-">
<!-- ... -->
</dynamoDBContext>
ec2
O <ec2>
elemento representa uma coleção de EC2 configurações da Amazon. Esse elemento pode incluir o atributo useSignatureVersion4, que especifica se a assinatura da assinatura versão 4 será usada para todas as solicitações (verdadeiro) ou se a assinatura da assinatura versão 4 não será usada para todas as solicitações (falso, o padrão). Esse atributo é mapeado para a propriedade Amazon.Util.EC2Config.UseSignatureVersion4
da propriedade Amazon.AWSConfigs.EC2Config.UseSignatureVersion4
no AWS SDK for .NET.
O pai do elemento <ec2>
é o elemento.
O elemento <ec2>
não contém elementos filho.
Veja a seguir um exemplo do elemento <ec2>
em uso:
<ec2
useSignatureVersion4="true" />
registro em log
O elemento <logging>
representa um conjunto de configurações para o registro de respostas e de métricas de desempenho. Esse elemento pode incluir os seguintes atributos:
-
logMetrics
-
Se as métricas de desempenho serão registradas para todos os clientes e configurações (verdadeiro); caso contrário, falso. Esse atributo é mapeado para a propriedade
Amazon.Util.LoggingConfig.LogMetrics
da propriedadeAmazon.AWSConfigs.LoggingConfig.LogMetrics
no AWS SDK for .NET. -
logMetricsCustomFormatter
-
O tipo de dados e o nome do conjunto de um formatador personalizado para as métricas de registro. Esse atributo é mapeado para a propriedade
Amazon.Util.LoggingConfig.LogMetricsCustomFormatter
da propriedadeAmazon.AWSConfigs.LoggingConfig.LogMetricsCustomFormatter
no AWS SDK for .NET. -
logMetricsFormat
-
O formato em que as métricas de registro são apresentadas (é mapeado para a propriedade
Amazon.Util.LoggingConfig.LogMetricsFormat
da propriedadeAmazon.AWSConfigs.LoggingConfig.LogMetricsFormat
no AWS SDK for .NET).Os valores permitidos incluem:
-
JSON
-
Use o formato JSON.
-
Standard
-
Use o formato padrão.
-
-
logResponses
-
Quando registrar as respostas de serviços (é mapeado para a propriedade
Amazon.Util.LoggingConfig.LogResponses
da propriedadeAmazon.AWSConfigs.LoggingConfig.LogResponses
no AWS SDK for .NET).Os valores permitidos incluem:
-
Always
-
Sempre registrar as respostas de serviços.
-
Never
-
Nunca registrar as respostas de serviços.
-
OnError
-
Somente registrar as respostas de serviços quando existirem erros.
-
-
logTo
-
Para onde fazer login (mapeia a
LogTo
propriedade a partir daAmazon.AWSConfigs.LoggingConfig.LogTo
propriedade no AWS SDK for .NET).Os valores permitidos incluem um ou mais entre:
-
Log4Net
-
Registrar no log4net.
-
None
-
Desativar o registro.
-
SystemDiagnostics
-
Registrar no System.Diagnostics.
-
O pai do elemento <logging>
é o elemento <aws>
.
O elemento <logging>
não contém elementos filho.
Veja a seguir um exemplo do elemento <logging>
em uso:
<logging
logTo="SystemDiagnostics"
logResponses="OnError"
logMetrics="true"
logMetricsFormat="JSON"
logMetricsCustomFormatter="MyLib.Util.MyMetricsFormatter, MyLib" />
mapear
O <map>
elemento representa um único item em uma coleção de type-to-table mapeamentos de tipos.NET para tabelas do DynamoDB (mapeia para uma instância da TypeMapping
classe a partir da propriedade no). Amazon.AWSConfigs.DynamoDBConfig.Context.TypeMappings
AWS SDK for .NET Para obter mais informações, consulte Aprimoramentos do DynamoDB SDK
Esse elemento pode incluir os seguintes atributos:
-
targetTable
-
A tabela do DynamoDB a qual o mapeamento se aplica. Esse atributo é mapeado para a propriedade
Amazon.Util.TypeMapping.TargetTable
no AWS SDK for .NET. -
type
-
O tipo e o nome do conjunto ao qual o mapeamento se aplica. Esse atributo é mapeado para a propriedade
Amazon.Util.TypeMapping.Type
no AWS SDK for .NET.
O pai do elemento <map>
é o elemento <dynamoDBContext>
.
O elemento <map>
pode incluir uma ou mais instâncias do elemento filho <property>
.
Veja a seguir um exemplo do elemento <map>
em uso:
<map
type="SampleApp.Models.Movie, SampleDLL"
targetTable="Movies">
<!-- ... -->
</map>
property
O elemento <property>
representa uma propriedade do DynamoDB. (Esse elemento é mapeado para uma instância do Amazon.Util. PropertyConfig classe do AddProperty
método em AWS SDK for .NET) Para obter mais informações, consulte Aprimoramentos no SDK do DynamoDB e nos atributos do DynamoDB.
Esse elemento pode incluir os seguintes atributos:
-
attribute
-
O nome de um atributo da propriedade, como o nome de uma chave de intervalo. Esse atributo é mapeado para a propriedade
Amazon.Util.PropertyConfig.Attribute
no AWS SDK for .NET. -
converter
-
O tipo de conversor que deve ser usado para esta propriedade. Esse atributo é mapeado para a propriedade
Amazon.Util.PropertyConfig.Converter
no AWS SDK for .NET. -
ignore
-
Se a propriedade associada deve ser ignorada (verdadeiro); caso contrário, falso. Esse atributo é mapeado para a propriedade
Amazon.Util.PropertyConfig.Ignore
no AWS SDK for .NET. -
name
-
O nome da propriedade. Esse atributo é mapeado para a propriedade
Amazon.Util.PropertyConfig.Name
no AWS SDK for .NET. -
version
-
Se essa propriedade deve armazenar o número da versão do item (verdadeiro); caso contrário, falso. Esse atributo é mapeado para a propriedade
Amazon.Util.PropertyConfig.Version
no AWS SDK for .NET.
O pai do elemento <property>
é o elemento <map>
.
O elemento <property>
não contém elementos filho.
Veja a seguir um exemplo do elemento <property>
em uso:
<property
name="Rating"
converter="SampleApp.Models.RatingConverter, SampleDLL" />
proxy
O elemento <proxy>
representa as configurações necessárias de um proxy para o seu uso pelo AWS SDK for .NET . Esse elemento pode incluir os seguintes atributos:
- host
-
O nome do host ou endereço IP do servidor de proxy. Esses atributos são mapeados para a propriedade
Amazon.Util.ProxyConfig.Host
da propriedadeAmazon.AWSConfigs.ProxyConfig.Host
no AWS SDK for .NET. - password
-
A senha para a autenticação com o servidor de proxy. Esses atributos são mapeados para a propriedade
Amazon.Util.ProxyConfig.Password
da propriedadeAmazon.AWSConfigs.ProxyConfig.Password
no AWS SDK for .NET. - porta
-
O número da porta do proxy. Esses atributos são mapeados para a propriedade
Amazon.Util.ProxyConfig.Port
da propriedadeAmazon.AWSConfigs.ProxyConfig.Port
no AWS SDK for .NET. - username
-
O nome de usuário para a autenticação com o servidor de proxy. Esses atributos são mapeados para a propriedade
Amazon.Util.ProxyConfig.Username
da propriedadeAmazon.AWSConfigs.ProxyConfig.Username
no AWS SDK for .NET.
O pai do elemento <proxy>
é o elemento <aws>
.
O elemento <proxy>
não contém elementos filho.
Veja a seguir um exemplo do elemento <proxy>
em uso:
<proxy
host="192.0.2.0"
port="1234"
username="My-Username-Here"
password="My-Password-Here" />
s3
O elemento <s3>
representa um conjunto de configurações do Amazon S3. Esse elemento pode incluir o atributo useSignatureVersion4, que especifica se a assinatura da assinatura versão 4 será usada para todas as solicitações (verdadeiro) ou se a assinatura da assinatura versão 4 não será usada para todas as solicitações (falso, o padrão). Esse atributo é mapeado para a propriedade Amazon.AWSConfigs.S3Config.UseSignatureVersion4
no AWS SDK for .NET.
O pai do elemento <s3>
é o elemento <aws>
.
O elemento <s3>
não contém elementos filho.
Veja a seguir um exemplo do elemento <s3>
em uso:
<s3 useSignatureVersion4="true" />