Le guide de API référence AWS SDK for JavaScript V3 décrit en détail toutes les API opérations de la AWS SDK for JavaScript version 3 (V3).
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Fournisseurs d'informations d'identification
Dans la version 2, le SDK pour JavaScript fournit une liste de fournisseurs d'informations d'identification parmi lesquels choisir, ainsi qu'une chaîne de fournisseurs d'informations d'identification, disponible par défaut sur Node.js, qui essaie de charger les AWS informations d'identification de tous les fournisseurs les plus courants. Le SDK pour JavaScript v3 simplifie l'interface du fournisseur d'informations d'identification, ce qui facilite l'utilisation et la rédaction de fournisseurs d'informations d'identification personnalisés. En plus d'une nouvelle chaîne de fournisseurs d'informations d'identification, le SDK pour la JavaScript version 3 fournit tous une liste de fournisseurs d'informations d'identification visant à fournir un équivalent à la version 2.
Voici tous les fournisseurs d'identifiants de la version 2 et leurs équivalents de la version 3.
Fournisseur d'informations d'identification par défaut
Le fournisseur d'informations d'identification par défaut est la façon dont le SDK permet de JavaScript résoudre les AWS informations d'identification si vous ne les fournissez pas explicitement.
-
v2 : CredentialProviderChaindans Node.js, résout les informations d'identification provenant des sources dans l'ordre suivant :
Si l'un des fournisseurs d'identifiants ci-dessus ne parvient pas à résoudre l' AWS identifiant, la chaîne revient au fournisseur suivant jusqu'à ce qu'un identifiant valide soit résolu, et la chaîne génère une erreur lorsque tous les fournisseurs échouent.
Dans les environnements d'exécution Browser et React Native, la chaîne d'informations d'identification est vide et les informations d'identification doivent être définies explicitement.
-
v3 : DefaultProvider. Les sources d'informations d'identification et l'ordre de repli ne changent pas dans la version 3. Il prend également en charge les AWS IAM Identity Center informations d'identification.
Informations d'identification temporaires
-
v2 :
ChainableTemporaryCredentials
représente les informations d'identification temporaires extraites deAWS.STS
. Sans aucun paramètre supplémentaire, les informations d'identification seront extraites de l'AWS.STS.getSessionToken()
opération. Si un rôle IAM est fourni, l'AWS.STS.assumeRole()
opération sera plutôt utilisée pour récupérer les informations d'identification du rôle.AWS.ChainableTemporaryCredentials
diffère de laAWS.TemporaryCredentials
façon dont les MasterCredentials et les actualisations sont gérés.AWS.ChainableTemporaryCredentials
actualise les informations d'identification expirées à l'aide des MasterCredentials transmises par l'utilisateur pour permettre le chaînage des informations d'identification STS. Cependant, les informations d'identification principales sont réduites deAWS.TemporaryCredentials
manière récursive lors de l'instanciation, ce qui empêche d'actualiser les informations d'identification qui nécessitent des informations d'identification temporaires intermédiaires.L'original
TemporaryCredentials
a été déprécié au profit de laChainableTemporaryCredentials
version v2. -
version 3 :
fromTemporaryCredentials
. Vous pouvez appelerfromTemporaryCredentials()
depuis le@aws-sdk/credential-providers
forfait. Voici un exemple :import { FooClient } from "@aws-sdk/client-foo"; import { fromTemporaryCredentials } from "@aws-sdk/credential-providers"; // ES6 import // const { FooClient } = require("@aws-sdk/client-foo"); // const { fromTemporaryCredentials } = require("@aws-sdk/credential-providers"); // CommonJS import const sourceCredentials = { // A credential can be a credential object or an async function that returns a credential object }; const client = new FooClient({ credentials: fromTemporaryCredentials({ masterCredentials: sourceCredentials, params: { RoleArn }, }), });
Informations d'identification Amazon Cognito
Chargez les informations d'identification depuis le service Amazon Cognito Identity, normalement utilisé dans les navigateurs.
-
v2 :
CognitoIdentityCredentials
représente les informations d'identification récupérées auprès de STS Web Identity Federation à l'aide du service Amazon Cognito Identity. -
v3 :
Cognito Identity Credential Provider
Le@aws/credential-providers
packagefournit deux fonctions de fournisseur d'informations d'identification, dont l'une fromCognitoIdentity
prend un identifiant d'identité et des appelscognitoIdentity:GetCredentialsForIdentity
, tandis que l'autrefromCognitoIdentityPool
prend un identifiant de pool d'identités, appellecognitoIdentity:GetId
lors du premier appel, puis appelle.fromCognitoIdentity
Les invocations ultérieures de ce dernier ne sont pas réinvoquées. GetIdLe fournisseur met en œuvre le « flux simplifié » décrit dans le guide du développeur Amazon Cognito. Le « flux classique » qui implique d'appeler
cognito:GetOpenIdToken
puis d'appeler n'sts:AssumeRoleWithWebIdentity
est pas pris en charge. Veuillez nous envoyer une demande de fonctionnalitési vous en avez besoin. // fromCognitoIdentityPool example import { fromCognitoIdentityPool } from "@aws-sdk/credential-providers"; // ES6 import // const { fromCognitoIdentityPool } = require("@aws-sdk/credential-providers"); // CommonJS import const client = new FooClient({ region: "us-east-1", credentials: fromCognitoIdentityPool({ clientConfig: cognitoIdentityClientConfig, // Optional identityPoolId: "us-east-1:1699ebc0-7900-4099-b910-2df94f52a030", customRoleArn: "arn:aws:iam::1234567890:role/MYAPP-CognitoIdentity", // Optional logins: { // Optional "graph.facebook.com": "FBTOKEN", "www.amazon.com": "AMAZONTOKEN", "api.twitter.com": "TWITTERTOKEN", }, }), });
// fromCognitoIdentity example import { fromCognitoIdentity } from "@aws-sdk/credential-providers"; // ES6 import // const { fromCognitoIdentity } = require("@aws-sdk/credential-provider-cognito-identity"); // CommonJS import const client = new FooClient({ region: "us-east-1", credentials: fromCognitoIdentity({ clientConfig: cognitoIdentityClientConfig, // Optional identityId: "us-east-1:128d0a74-c82f-4553-916d-90053e4a8b0f", customRoleArn: "arn:aws:iam::1234567890:role/MYAPP-CognitoIdentity", // Optional logins: { // Optional "graph.facebook.com": "FBTOKEN", "www.amazon.com": "AMAZONTOKEN", "api.twitter.com": "TWITTERTOKEN", }, }), });
Identifiant de métadonnées EC2 (IMDS)
Représente les informations d'identification reçues du service de métadonnées sur une instance Amazon EC2.
-
version 2 :
EC2MetadataCredentials
-
v3 :
fromInstanceMetadata
: Crée un fournisseur d'informations d'identification qui fournira les informations d'identification auprès du service de métadonnées d'instance Amazon EC2.import { fromInstanceMetadata } from "@aws-sdk/credential-providers"; // ES6 import // const { fromInstanceMetadata } = require("@aws-sdk/credential-providers"); // CommonJS import const client = new FooClient({ credentials: fromInstanceMetadata({ maxRetries: 3, // Optional timeout: 0, // Optional }), });
Informations d'identification ECS
Représente les informations d'identification reçues depuis l'URL spécifiée. Ce fournisseur demandera des informations d'identification temporaires à partir de l'URI spécifiée par la variable d'environnement AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
ou par la variable d'AWS_CONTAINER_CREDENTIALS_FULL_URI
environnement.
-
v2 :
ECSCredentials
ouRemoteCredentials
. -
v3 :
fromContainerMetadata
crée un fournisseur d'informations d'identification qui fournira les informations d'identification auprès du service de métadonnées de conteneur Amazon ECS.import { fromContainerMetadata } from "@aws-sdk/credential-providers"; // ES6 import const client = new FooClient({ credentials: fromContainerMetadata({ maxRetries: 3, // Optional timeout: 0, // Optional }), });
Informations d'identification du système de fichiers
-
v2 :
FileSystemCredentials
représente les informations d'identification d'un fichier JSON sur le disque. -
v3 : Obsolète. Vous pouvez lire explicitement le fichier JSON et le fournir au client. Veuillez nous envoyer une demande de fonctionnalité
si vous en avez besoin.
Fournisseur d'informations d'identification SAML
-
v2 :
SAMLCredentials
représente les informations d'identification extraites du support STS SAML. -
v3 : Non disponible. Veuillez nous envoyer une demande de fonctionnalité
si vous en avez besoin.
Informations d'identification partagées Informations d'identification
Charge les informations d'identification à partir du fichier d'informations d'identification partagé (défini par défaut ~/.aws/credentials
ou défini par la variable d'AWS_SHARED_CREDENTIALS_FILE
environnement). Ce fichier est pris en charge par différents AWS SDK et outils. Vous pouvez consulter le document sur les fichiers de configuration et d'identification partagés pour plus d'informations.
-
version 2 :
SharedIniFileCredentials
-
version 3 :
fromIni
.import { fromIni } from "@aws-sdk/credential-providers"; // const { fromIni } from("@aws-sdk/credential-providers"); const client = new FooClient({ credentials: fromIni({ configFilepath: "~/.aws/config", // Optional filepath: "~/.aws/credentials", // Optional mfaCodeProvider: async (mfaSerial) => { // implement a pop-up asking for MFA code return "some_code"; }, // Optional profile: "default", // Optional clientConfig: { region }, // Optional }), });
Identifiants d'identité Web
Récupère les informations d'identification à l'aide d'un jeton OIDC à partir d'un fichier sur le disque. Il est couramment utilisé dans EKS.
-
version 3 :
fromTokenFile
import { fromTokenFile } from "@aws-sdk/credential-providers"; // ES6 import // const { fromTokenFile } from("@aws-sdk/credential-providers"); // CommonJS import const client = new FooClient({ credentials: fromTokenFile({ // Optional. If skipped, read from `AWS_ROLE_ARN` environmental variable roleArn: "arn:xxxx", // Optional. If skipped, read from `AWS_ROLE_SESSION_NAME` environmental variable roleSessionName: "session:a", // Optional. STS client config to make the assume role request. clientConfig: { region }, }), });
Informations d'identification de la Fédération des identités Web
Récupère les informations d'identification auprès du support de fédération d'identité Web STS.
-
version 2 :
WebIdentityCredentials
-
version 3 :
fromWebToken
import { fromWebToken } from "@aws-sdk/credential-providers"; // ES6 import // const { fromWebToken } from("@aws-sdk/credential-providers"); // CommonJS import const client = new FooClient({ credentials: fromWebToken({ // Optional. If skipped, read from `AWS_ROLE_ARN` environmental variable roleArn: "arn:xxxx", // Optional. If skipped, read from `AWS_ROLE_SESSION_NAME` environmental variable roleSessionName: "session:a", // Optional. STS client config to make the assume role request. clientConfig: { region }, }), });