configuracao-credencial
- AWS Configuração | .NET
AWS SDK para .NET usa a seguinte ordem para carregar credenciais:
1. AWSOptions.Credentials propriedade
AWSOptions awsOptions = new AWSOptions
{
Credentials = new BasicAWSCredentials("yourAccessKey", "yourAccessSecret")
};
builder.Services.AddDefaultAWSOptions(awsOptions);
2. AWSOptions.Profile propriedade
AWSOptions awsOptions = new AWSOptions
{
Profile = "custom",
ProfilesLocation = @"c:\temp\credentials"
};
builder.Services.AddDefaultAWSOptions(awsOptions);
Se a localização do perfil não for especificada, ele examinará a localização padrão C:\Users\.aws\credentials.
3. Cadeia de Loja de Perfil de Credencial
Se ambos AWSOptions.Credentials e AWSOptions.Profile não são fornecidos ou AWSOptions o objeto em si é nulo. Nesse caso, o nome do perfil de credencial será carregado da variável de ambiente AWS_PROFILE.
-
Nome do Perfil
AWS_PROFILEdefault: Se não houver tal
variável de ambiente, então
será usado como um nome de perfil.
-
Localização do Perfil
C:\Users\.aws\credentials:
4. Variáveis de ambiente AWS Credentials
Se o SDK ainda não tiver as credenciais, ele verificará as seguintes variáveis de ambiente para carregar as credenciais da AWS.
ENVIRONMENT_VARIABLE_ACCESSKEY = "AWS_ACCESS_KEY_ID";
ENVIRONMENT_VARIABLE_SECRETKEY = "AWS_SECRET_ACCESS_KEY";
ENVIRONMENT_VARIABLE_SESSION_TOKEN = "AWS_SESSION_TOKEN";
5. Perfil de Instância EC2 /Perfil de Tarefa ECS
Finalmente, este é o lugar mais importante onde o SDK procura as credenciais. Esse seria o melhor lugar para os aplicativos que estão sendo executados no ambiente da AWS. Nesse caso, o SDK carrega as credenciais da AWS do perfil de instância do EC2 ou da função de tarefa do ECS.
Eu também escrevi um blog sobre o mesmo tópico, você pode verificar isso a partir daqui - Entendendo o Carregamento de credenciais no AWS SDK para .NET