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.
Resolución de credencial y perfil
AWS SDK for .NET Busca las credenciales en un orden determinado y utiliza el primer conjunto disponible para la aplicación actual.
Orden de búsqueda de credenciales
-
Credenciales que se establecen de forma explícita en el cliente AWS de servicio, tal y como se describe enAcceso a las credenciales y perfiles en una aplicación.
nota
Este tema está en la sección Consideraciones especiales porque no es el método preferido para especificar credenciales.
-
Un perfil de credenciales con el nombre especificado mediante un valor en AWSConfigs. AWSProfileName.
-
Un perfil de credenciales con el nombre especificado por la variable de entorno
AWS_PROFILE
. -
El perfil de credenciales
[default]
. -
S essionAWSCredentials que se crean a partir de las variables de
AWS_SESSION_TOKEN
entornoAWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
, y, si no están todas vacías. -
B asicAWSCredentials que se crean a partir de las variables de
AWS_SECRET_ACCESS_KEY
entornoAWS_ACCESS_KEY_ID
y, si ambas no están vacías. -
El proveedor de credenciales del contenedor.
-
Metadatos de EC2 instancias de Amazon.
Si tu aplicación se ejecuta en una EC2 instancia de Amazon, por ejemplo, en un entorno de producción, usa un IAM rol como se describe enOtorgar acceso mediante un IAM rol. De lo contrario, como en las pruebas preliminares, guarda tus credenciales en un archivo que utilice el formato de archivo de AWS credenciales al que tiene acceso tu aplicación web en el servidor.
Resolución de perfiles
Con dos mecanismos de almacenamiento diferentes para las credenciales, es importante entender cómo configurarlos para AWS SDK for .NET utilizarlos. El AWSConfigs. AWSProfilesLocationla propiedad controla la forma en AWS SDK for .NET que busca los perfiles de credenciales.
AWSProfilesLocation | Comportamiento de resolución de perfiles |
---|---|
null (no establecido) o vacío |
Busque en la SDK tienda si la plataforma lo admite y, a continuación, busque el archivo de AWS
credenciales compartidas en la ubicación predeterminada. Si el perfil no está en ninguna de esas ubicaciones, busque en |
La ruta a un archivo con el formato de archivo de AWS credenciales |
Busque solo en el archivo especificado el perfil con el nombre indicado. |
Uso de credenciales de cuentas de usuario federado
Las aplicaciones que lo utilizan AWS SDK for .NET (AWSSDK.Core
La compatibilidad del acceso federado significa que los usuarios pueden autenticarse mediante su Active Directory. Las credenciales temporales se conceden al usuario automáticamente. Estas credenciales temporales, que son válidas durante una hora, se utilizan cuando la aplicación invoca los servicios. AWS Se SDK encarga de la administración de las credenciales temporales. Para las cuentas de usuario unidas a un dominio, si su aplicación realiza una llamada, pero las credenciales han caducado, el usuario vuelve a autenticarse automáticamente y se conceden credenciales actualizadas (En el caso de non-domain-joined las cuentas, se solicita al usuario que introduzca las credenciales antes de volver a autenticarse).
Para utilizar este soporte en su. NETaplicación, primero debe configurar el perfil de rol mediante un PowerShell cmdlet. Para saber cómo, consulte la documentación de AWS Tools for Windows PowerShell.
Después de configurar el perfil del rol, haga referencia al perfil en la aplicación. Hay varias formas de hacerlo, una de las cuales es mediante el. AWSConfigs AWSProfileNamepropiedad de la misma manera que lo haría con otros perfiles de credenciales.
El AWS Security Token Serviceensamblaje (AWSSDK. SecurityToken
Especificación de roles o credenciales temporales
Para las aplicaciones que se ejecutan en EC2 instancias de Amazon, la forma más segura de administrar las credenciales es usar IAM roles, tal y como se describe enOtorgar acceso mediante un IAM rol.
Para los escenarios de aplicación en los que el software ejecutable está disponible para los usuarios externos a su organización, recomendamos que diseñe el software para usar credenciales de seguridad temporales. Además de proporcionar un acceso restringido a AWS los recursos, estas credenciales tienen la ventaja de caducar después de un período de tiempo específico. Para obtener más información sobre cómo usar credenciales de seguridad temporales, consulte lo siguiente:
Uso de credenciales de proxy
Si su software se comunica con AWS él a través de un proxy, puede especificar las credenciales del proxy utilizando la ProxyCredentials
propiedad de la Config
clase de un servicio. La clase Config
de un servicio suele formar parte del espacio de nombres principal del servicio. Los ejemplos incluyen los siguientes: AmazonCloudDirectoryConfigen Amazon. CloudDirectorynamespace y AmazonGameLiftConfigen Amazon. GameLiftespacio de nombres.
Para Amazon S3, por ejemplo, puede utilizar un código similar al siguiente, donde SecurelyStoredUserName
y SecurelyStoredPassword
son el nombre de usuario y la contraseña del proxy especificados en un NetworkCredential
AmazonS3Config config = new AmazonS3Config(); config.ProxyCredentials = new NetworkCredential(SecurelyStoredUserName, SecurelyStoredPassword);
nota
SDKSe usaron versiones anteriores del ProxyUsername
yProxyPassword
, pero estas propiedades están en desuso.