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á.
assumeRoleWithWebIdentityCredentialProvider
provedor
Aws\Credentials\CredentialProvider::assumeRoleWithWebIdentityCredentialProvider
tenta carregar credenciais assumindo uma função. Se as variáveis de ambiente AWS_ROLE_ARN
e AWS_WEB_IDENTITY_TOKEN_FILE
estiverem presentes, o provedor tentará assumir a função especificada no AWS_ROLE_ARN
usando o token no disco no caminho completo especificado em AWS_WEB_IDENTITY_TOKEN_FILE
. Se as variáveis de ambiente forem usadas, o provedor tentará definir a sessão na variável de ambiente AWS_ROLE_SESSION_NAME
.
Se as variáveis de ambiente não estiverem definidas, o provedor usará o perfil padrão ou o definido como AWS_PROFILE
. O provedor lê perfis de ~/.aws/credentials
e ~/.aws/config
por padrão, e pode ler de perfis especificados na opção de configuração filename
. O provedor assumirá a função no role_arn
do perfil lendo um token do caminho completo definido no web_identity_token_file
. O role_session_name
será usado se definido no perfil.
O provedor será chamado como parte da cadeia padrão e poderá ser chamado diretamente.
use Aws\Credentials\CredentialProvider; use Aws\S3\S3Client; $provider = CredentialProvider::assumeRoleWithWebIdentityCredentialProvider(); // Cache the results in a memoize function to avoid loading and parsing // the ini file on every API operation $provider = CredentialProvider::memoize($provider); $client = new S3Client([ 'region' => 'us-west-2', 'version' => '2006-03-01', 'credentials' => $provider ]);
Por padrão, esse provedor de credenciais herdará a região configurada que será usada pelo StsClient para assumir a função. Opcionalmente, um completo StsClient pode ser fornecido. As credenciais devem ser definidas conforme false
as fornecidas StsClient.
use Aws\Credentials\CredentialProvider; use Aws\S3\S3Client; use Aws\Sts\StsClient; $stsClient = new StsClient([ 'region' => 'us-west-2', 'version' => 'latest', 'credentials' => false ]) $provider = CredentialProvider::assumeRoleWithWebIdentityCredentialProvider([ 'stsClient' => $stsClient ]); // Cache the results in a memoize function to avoid loading and parsing // the ini file on every API operation $provider = CredentialProvider::memoize($provider); $client = new S3Client([ 'region' => 'us-west-2', 'version' => '2006-03-01', 'credentials' => $provider ]);