¡Se AWS SDK para .NET ha publicado la versión 4 (V4) del!
Para empezar a usar la nueva versión del SDK, consulte la Guía para desarrolladores de AWS SDK para .NET (versión 4), especialmente el tema Migración a la versión 4.
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Referencia de los archivos de configuración para el AWS SDK para .NET
nota
La información de este tema es específica de proyectos basados en .NET Framework. Los archivos App.config y Web.config no están presentes de forma predeterminada en proyectos basados en .NET Core.
Puede usar un archivo App.config o Web.config del proyecto de .NET para especificar la configuración de AWS, como credenciales de AWS, opciones de registro, puntos de conexión de servicio de AWS y regiones de AWS, así como algunos ajustes de servicios de AWS, como Amazon DynamoDB, Amazon EC2 y Amazon S3. En la siguiente información se describe cómo dar formato correctamente a un archivo App.config o Web.config para especificar estos tipos de configuración.
nota
Aunque puede continuar usando el elemento <appSettings> en un archivo App.config o Web.config para especificar la configuración de AWS, recomendamos usar los elementos <configSections> y <aws>, como se describe posteriormente en este tema. Para obtener más información sobre el elemento <appSettings>, consulte los ejemplos del elemento <appSettings> en Configuración de la aplicación de AWS SDK para .NET.
nota
Aunque puede continuar usando las siguientes propiedades de la clase AWSConfigs en un archivo de código para especificar la configuración de AWS, las siguientes propiedades están en desuso y es posible que no se admitan en versiones futuras:
-
DynamoDBContextTableNamePrefix -
EC2UseSignatureVersion4 -
LoggingOptions -
LogMetrics -
ResponseLoggingOption -
S3UseSignatureVersion4
En general, recomendamos que, en lugar de usar propiedades de la clase AWSConfigs en un archivo de código para especificar la configuración de AWS, debe usar los elementos <configSections> y <aws> en un archivo App.config o Web.config para especificar la configuración de AWS, como se describe posteriormente en este tema. Para obtener más información sobre las propiedades anteriores, consulte los ejemplos de código de AWSConfigs en Configuración de la aplicación de AWS SDK para .NET.
Declaración de una sección de configuración de AWS
La configuración de AWS se especifica en un archivo App.config o Web.config desde el elemento <aws>. Antes de que pueda empezar a usar el elemento <aws>, debe crear un elemento <section> (que es un elemento secundario del elemento <configSections>) y establecer su atributo name en aws y su atributo type en Amazon.AWSSection, AWSSDK.Core, como se muestra en el siguiente ejemplo:
<?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>
El editor de Visual Studio no proporciona relleno de código automático (IntelliSense) para el elemento <aws> o sus elementos secundarios.
Para ayudarle a crear una versión con formato correcto del elemento <aws>, llame al método Amazon.AWSConfigs.GenerateConfigTemplate. De este modo se devuelve una versión canónica del elemento <aws> como una cadena bien escrita, que puede adaptar a sus necesidades. En las siguientes secciones se describen los atributos y elementos secundarios del elemento <aws>.
Elementos permitidos
A continuación se muestra una lista de las relaciones lógicas entre los elementos permitidos en una sección de configuración de AWS. Puede generar la versión más reciente de esta lista llamando al método Amazon.AWSConfigs.GenerateConfigTemplate, que devuelve una versión canónica del elemento <aws> como una cadena que puede adaptar a sus necesidades.
<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>
Referencia de elementos
A continuación se muestra una lista de los elementos permitidos en una sección de configuración de AWS. Para cada elemento, se listan sus atributos y elementos principales y secundarios permitidos.
alias
El elemento <alias> representa un solo elemento de una colección de uno o varios mapeos a la tabla y desde la tabla que especifica una tabla distinta de una configurada para un tipo. Este elemento se asigna a una instancia de la clase Amazon.Util.TableAlias a partir de la propiedad Amazon.AWSConfigs.DynamoDBConfig.Context.TableAliases en el AWS SDK para .NET. La reasignación se lleva a cabo antes de la aplicación de un prefijo de nombre de tabla.
Este elemento puede incluir los siguientes atributos:
-
fromTable -
La parte desde la tabla del mapeo a la tabla y desde la tabla. Este atributo se asigna a la propiedad
Amazon.Util.TableAlias.FromTableen AWS SDK para .NET. -
toTable -
La parte a la tabla de la asignación a la tabla y desde la tabla. Este atributo se asigna a la propiedad
Amazon.Util.TableAlias.ToTableen AWS SDK para .NET.
El elemento principal del elemento <alias> es el elemento <tableAliases>.
El elemento <alias> no contiene ningún elemento secundario.
A continuación, mostramos un ejemplo del elemento <alias> en uso:
<alias fromTable="Studio" toTable="Studios" />
aws
El elemento <aws> representa el elemento superior en una sección de configuración de AWS. Este elemento puede incluir los siguientes atributos:
-
endpointDefinition -
Ruta absoluta a un archivo de configuración personalizado que define las regiones y los puntos de conexión de AWS que se van a usar. Este atributo se asigna a la propiedad
Amazon.AWSConfigs.EndpointDefinitionen AWS SDK para .NET. -
profileName -
Nombre de perfil de las credenciales de AWS almacenadas que se usarán para realizar llamadas a servicios. Este atributo se asigna a la propiedad
Amazon.AWSConfigs.AWSProfileNameen AWS SDK para .NET. -
profilesLocation -
Ruta absoluta a la ubicación del archivo de credenciales compartido con otros AWS SDK. De forma predeterminada, el archivo de credenciales se almacena en el directorio
.awsdel directorio de inicio del usuario actual. Este atributo se asigna a la propiedadAmazon.AWSConfigs.AWSProfilesLocationen AWS SDK para .NET. -
region -
ID de región de AWS predeterminado para clientes que no han especificado una región de forma explícita. Este atributo se asigna a la propiedad
Amazon.AWSConfigs.AWSRegionen AWS SDK para .NET.
El elemento <aws> no tiene elemento principal.
El elemento <aws> puede incluir los siguientes elementos secundarios:
-
<dynamoDB> -
<ec2> -
<logging> -
<proxy> -
<s3>
A continuación, mostramos un ejemplo del elemento <aws> en uso:
<aws endpointDefinition="C:\Configs\endpoints.xml" region="us-west-2" profileName="development" profilesLocation="C:\Configs"> <!-- ... --> </aws>
dynamoDB
El elemento <dynamoDB> representa una colección de ajustes de Amazon DynamoDB. Este elemento puede incluir el atributo conversionSchema, que representa la versión que se va a usar para la conversión entre objetos de .NET y DynamoDB. Los valores permitidos son V1 y V2. Este atributo se asigna a la clase Amazon.DynamoDBv2.DynamoDBEntryConversion en AWS SDK para .NET. Para obtener más información, consulte Serie DynamoDB: esquemas de conversión
El elemento principal del elemento <dynamoDB> es el elemento <aws>.
El elemento <dynamoDB> puede incluir el elemento secundario <dynamoDBContext>.
A continuación, mostramos un ejemplo del elemento <dynamoDB> en uso:
<dynamoDB conversionSchema="V2"> <!-- ... --> </dynamoDB>
dynamoDBContext
El elemento <dynamoDBContext> representa una colección de ajustes específicos del contexto de Amazon DynamoDB. Este elemento puede incluir el atributo tableNamePrefix, que representa el prefijo de nombre de tabla predeterminado que usará el contexto de DynamoDB si no se configura manualmente. Este atributo se asigna a la propiedad Amazon.Util.DynamoDBContextConfig.TableNamePrefix a partir de la propiedad Amazon.AWSConfigs.DynamoDBConfig.Context.TableNamePrefix de AWS SDK para .NET. Para obtener más información, consulte la sección sobre las mejoras realizadas en el SDK de DynamoDB
El elemento principal del elemento <dynamoDBContext> es el elemento <dynamoDB>.
El elemento <dynamoDBContext> puede incluir los siguientes elementos secundarios:
-
<alias>(una o varias instancias) -
<map>(una o varias instancias)
A continuación, mostramos un ejemplo del elemento <dynamoDBContext> en uso:
<dynamoDBContext tableNamePrefix="Test-"> <!-- ... --> </dynamoDBContext>
ec2
El elemento <ec2> representa una colección de ajustes de Amazon EC2. El elemento puede incluir el atributo useSignatureVersion4, que especifica si la versión 4 de Signature se usará para todas las solicitudes (true) o no (false, el valor predeterminado). Este atributo se asigna a la propiedad Amazon.Util.EC2Config.UseSignatureVersion4 a partir de la propiedad Amazon.AWSConfigs.EC2Config.UseSignatureVersion4 de AWS SDK para .NET.
El elemento principal del elemento <ec2> es el elemento.
El elemento <ec2> no contiene ningún elemento secundario.
A continuación, mostramos un ejemplo del elemento <ec2> en uso:
<ec2 useSignatureVersion4="true" />
registrar
El elemento <logging> representa una colección de ajustes para el registro de respuestas y el registro de métricas de desempeño. Este elemento puede incluir los siguientes atributos:
-
logMetrics -
Si las métricas de desempeño se van a registrar para todos los clientes y configuraciones (true); de lo contrario, false. Este atributo se asigna a la propiedad
Amazon.Util.LoggingConfig.LogMetricsa partir de la propiedadAmazon.AWSConfigs.LoggingConfig.LogMetricsde AWS SDK para .NET. -
logMetricsCustomFormatter -
Tipo de datos y nombre del ensamblado de un formateador personalizado para registrar métricas. Este atributo se asigna a la propiedad
Amazon.Util.LoggingConfig.LogMetricsCustomFormattera partir de la propiedadAmazon.AWSConfigs.LoggingConfig.LogMetricsCustomFormatterde AWS SDK para .NET. -
logMetricsFormat -
Formato en que se presentan las métricas de registro (se asigna a la propiedad
Amazon.Util.LoggingConfig.LogMetricsFormata partir de la propiedadAmazon.AWSConfigs.LoggingConfig.LogMetricsFormatdel AWS SDK para .NET).Entre los valores permitidos se incluyen:
-
JSON -
Utilizar el formato JSON.
-
Standard -
Utilizar el formato predeterminado.
-
-
logResponses -
Cuándo se deben registrar respuestas del servicio (se asigna a la propiedad
Amazon.Util.LoggingConfig.LogResponsesa partir de la propiedadAmazon.AWSConfigs.LoggingConfig.LogResponsesen AWS SDK para .NET).Entre los valores permitidos se incluyen:
-
Always -
Registrar siempre respuestas del servicio.
-
Never -
No registrar nunca respuestas del servicio.
-
OnError -
Registrar solo respuestas del servicio cuando haya errores.
-
-
logTo -
Dónde se deben registrar (se asigna a la propiedad
LogToa partir de la propiedadAmazon.AWSConfigs.LoggingConfig.LogToen AWS SDK para .NET).Los valores permitidos incluyen una o varias de estas opciones:
-
Log4Net -
Registrarse en log4net.
-
None -
Deshabilitar el registro.
-
SystemDiagnostics -
Registrarse en System.Diagnostics.
-
El elemento principal del elemento <logging> es el elemento <aws>.
El elemento <logging> no contiene ningún elemento secundario.
A continuación, mostramos un ejemplo del elemento <logging> en uso:
<logging logTo="SystemDiagnostics" logResponses="OnError" logMetrics="true" logMetricsFormat="JSON" logMetricsCustomFormatter="MyLib.Util.MyMetricsFormatter, MyLib" />
map
El elemento <map> representa un solo elemento de una colección de mapeos de tipo a tabla de tipos de .NET a tablas de DynamoDB (se asigna a una instancia de la clase TypeMapping a partir de la propiedad Amazon.AWSConfigs.DynamoDBConfig.Context.TypeMappings en AWS SDK para .NET). Para obtener más información, consulte la sección sobre las mejoras realizadas en el SDK de DynamoDB
Este elemento puede incluir los siguientes atributos:
-
targetTable -
Tabla de DynamoDB a la que se aplica el mapeo. Este atributo se asigna a la propiedad
Amazon.Util.TypeMapping.TargetTableen AWS SDK para .NET. -
type -
Tipo y nombre del ensamblado al que se aplica el mapeo. Este atributo se asigna a la propiedad
Amazon.Util.TypeMapping.Typeen AWS SDK para .NET.
El elemento principal del elemento <map> es el elemento <dynamoDBContext>.
El elemento <map> puede incluir una o varias instancias del elemento secundario <property>.
A continuación, mostramos un ejemplo del elemento <map> en uso:
<map type="SampleApp.Models.Movie, SampleDLL" targetTable="Movies"> <!-- ... --> </map>
propiedad
El elemento <property> representa una propiedad DynamoDB. (Este elemento se asigna a una instancia de la clase Amazon.Util.PropertyConfig a partir del método AddProperty en el AWS SDK para .NET). Para obtener más información, consulte las secciones sobre las mejoras realizadas en el SDK de DynamoDB
Este elemento puede incluir los siguientes atributos:
-
attribute -
Nombre de un atributo para la propiedad, como el nombre de una clave de rango. Este atributo se asigna a la propiedad
Amazon.Util.PropertyConfig.Attributeen AWS SDK para .NET. -
converter -
Tipo de convertidor que se debe usar para esta propiedad. Este atributo se asigna a la propiedad
Amazon.Util.PropertyConfig.Converteren AWS SDK para .NET. -
ignore -
Si debe hacerse caso omiso de la propiedad asociada (true); de lo contrario, false. Este atributo se asigna a la propiedad
Amazon.Util.PropertyConfig.Ignoreen AWS SDK para .NET. -
name -
El nombre de la propiedad. Este atributo se asigna a la propiedad
Amazon.Util.PropertyConfig.Nameen AWS SDK para .NET. -
version -
Si esta propiedad debe almacenar el número de versión del elemento (true); de lo contrario, false. Este atributo se asigna a la propiedad
Amazon.Util.PropertyConfig.Versionen AWS SDK para .NET.
El elemento principal del elemento <property> es el elemento <map>.
El elemento <property> no contiene ningún elemento secundario.
A continuación, mostramos un ejemplo del elemento <property> en uso:
<property name="Rating" converter="SampleApp.Models.RatingConverter, SampleDLL" />
proxy
El elemento <proxy> representa los ajustes para configurar un proxy que AWS SDK para .NET usará. Este elemento puede incluir los siguientes atributos:
- host
-
Nombre de host o dirección IP del servidor proxy. Estos atributos se asignan a la propiedad
Amazon.Util.ProxyConfig.Hosta partir de la propiedadAmazon.AWSConfigs.ProxyConfig.Hostde AWS SDK para .NET. - contraseña
-
Contraseña para autenticarse con el servidor proxy. Estos atributos se asignan a la propiedad
Amazon.Util.ProxyConfig.Passworda partir de la propiedadAmazon.AWSConfigs.ProxyConfig.Passwordde AWS SDK para .NET. - puerto
-
Número de puerto del proxy. Estos atributos se asignan a la propiedad
Amazon.Util.ProxyConfig.Porta partir de la propiedadAmazon.AWSConfigs.ProxyConfig.Portde AWS SDK para .NET. - nombre de usuario
-
Nombre de usuario para autenticarse con el servidor proxy. Estos atributos se asignan a la propiedad
Amazon.Util.ProxyConfig.Usernamea partir de la propiedadAmazon.AWSConfigs.ProxyConfig.Usernamede AWS SDK para .NET.
El elemento principal del elemento <proxy> es el elemento <aws>.
El elemento <proxy> no contiene ningún elemento secundario.
A continuación, mostramos un ejemplo del elemento <proxy> en uso:
<proxy host="192.0.2.0" port="1234" username="My-Username-Here" password="My-Password-Here" />
s3
El elemento <s3> representa una colección de ajustes de Amazon S3. El elemento puede incluir el atributo useSignatureVersion4, que especifica si la versión 4 de Signature se usará para todas las solicitudes (true) o no (false, el valor predeterminado). Este atributo se asigna a la propiedad Amazon.AWSConfigs.S3Config.UseSignatureVersion4 en AWS SDK para .NET.
El elemento principal del elemento <s3> es el elemento <aws>.
El elemento <s3> no contiene ningún elemento secundario.
A continuación, mostramos un ejemplo del elemento <s3> en uso:
<s3 useSignatureVersion4="true" />