La AWS SDK for JavaScript V3 API Reference Guide descrive in dettaglio tutte le operazioni API per la AWS SDK for JavaScript versione 3 (V3).
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Fornitori di credenziali
Nella v2, l'SDK for JavaScript fornisce un elenco di provider di credenziali tra cui scegliere, oltre a una catena di fornitori di credenziali, disponibile per impostazione predefinita su Node.js, che tenta di caricare AWS le credenziali da tutti i provider più comuni. L'SDK per la versione JavaScript 3 semplifica l'interfaccia del provider di credenziali, semplificando l'utilizzo e la scrittura di provider di credenziali personalizzati. Oltre a una nuova catena di fornitori di credenziali, l'SDK per la versione JavaScript 3 fornisce tutti un elenco di provider di credenziali che mirano a fornire una soluzione equivalente alla versione 2.
Ecco tutti i provider di credenziali nella v2 e i loro equivalenti nella v3.
Provider di credenziali predefinito
Il provider di credenziali predefinito è il modo in cui l'SDK JavaScript risolve le AWS credenziali se non ne fornite una esplicitamente.
-
v2: CredentialProviderChainin Node.js risolve le credenziali dai sorgenti nel seguente ordine:
Se uno dei provider di credenziali sopra indicati non riesce a risolvere la AWS credenziale, la catena passa al provider successivo finché non viene risolta una credenziale valida e la catena genererà un errore quando tutti i provider falliscono.
Nei runtime Browser e React Native, la catena di credenziali è vuota e le credenziali devono essere impostate in modo esplicito.
-
v3: DefaultProvider. Le fonti delle credenziali e l'ordine di fallback non cambiano nella v3. Supporta anche le credenziali.AWS IAM Identity Center
Credenziali temporanee
-
v2:
ChainableTemporaryCredentialsrappresenta le credenziali temporanee recuperate da.AWS.STSSenza parametri aggiuntivi, le credenziali verranno recuperate dall'operazione.AWS.STS.getSessionToken()Se viene fornito un ruolo IAM, l'AWS.STS.assumeRole()operazione verrà invece utilizzata per recuperare le credenziali per il ruolo.AWS.ChainableTemporaryCredentialsdifferisce dal modoAWS.TemporaryCredentialsin cui vengono gestiti MasterCredentials e gli aggiornamenti.AWS.ChainableTemporaryCredentialsaggiorna le credenziali scadute utilizzando le MasterCredentials passate dall'utente per supportare il concatenamento delle credenziali STS. Tuttavia, comprimeAWS.TemporaryCredentialsricorsivamente le MasterCredentials durante l'istanziazione, precludendo la possibilità di aggiornare le credenziali che richiedono credenziali intermedie e temporanee.L'
TemporaryCredentialsoriginale è statoChainableTemporaryCredentialsdeprecato a favore di in v2. -
v3:.
fromTemporaryCredentialsPuoi chiamarefromTemporaryCredentials()dal@aws-sdk/credential-providerspacchetto. Ecco un esempio: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 }, }), });
Credenziali di identità Amazon Cognito
Carica le credenziali dal servizio Amazon Cognito Identity, normalmente utilizzato nei browser.
-
v2:
CognitoIdentityCredentialsrappresenta le credenziali recuperate da STS Web Identity Federation utilizzando il servizio Amazon Cognito Identity. -
v3:
Cognito Identity Credential ProviderIl@aws/credential-providerspacchettofornisce due funzioni di fornitore di credenziali, una delle quali fromCognitoIdentityrichiede un ID di identità e chiamacognitoIdentity:GetCredentialsForIdentity, mentre l'altrafromCognitoIdentityPoolaccetta un ID di pool di identità, chiama alla prima chiamata ecognitoIdentity:GetIdpoi chiama.fromCognitoIdentityLe successive invocazioni di quest'ultimo non vengono reinvocate. GetIdIl provider implementa il «Simplified Flow» descritto nella Amazon Cognito Developer Guide. Il «Classic Flow» che prevede la chiamata
cognito:GetOpenIdTokene quindi la chiamatasts:AssumeRoleWithWebIdentitynon è supportato. Inviaci una richiesta di funzionalitàse ne hai bisogno. // 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", }, }), });
EC2 Credenziali Amazon Metadata (IMDS)
Rappresenta le credenziali ricevute dal servizio di metadati su un'istanza Amazon EC2 .
-
v3:.
fromInstanceMetadataCrea un provider di credenziali che raccoglierà le credenziali da Amazon EC2 Instance Metadata Service.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 }), });
Credenziali Amazon ECS
Rappresenta le credenziali ricevute dall'URL specificato. Questo provider richiederà credenziali temporanee all'URI specificato dalla variabile di AWS_CONTAINER_CREDENTIALS_FULL_URI ambiente AWS_CONTAINER_CREDENTIALS_RELATIVE_URI o.
-
v2: o
ECSCredentialsRemoteCredentials -
v3:.
fromContainerMetadataCrea un provider di credenziali che fornirà le credenziali da Amazon ECS Container Metadata Service.import { fromContainerMetadata } from "@aws-sdk/credential-providers"; // ES6 import const client = new FooClient({ credentials: fromContainerMetadata({ maxRetries: 3, // Optional timeout: 0, // Optional }), });
Credenziali del file system
-
v2:.
FileSystemCredentialsRappresenta le credenziali di un file JSON su disco. -
v3: obsoleto. È possibile leggere esplicitamente il file JSON e fornirlo al client. Se ne hai bisogno, apri una richiesta di funzionalità
.
Provider di credenziali SAML
-
v2:
SAMLCredentialsrappresenta le credenziali recuperate dal supporto SAML di STS. -
v3: non disponibile. Se ne hai bisogno, apri una richiesta di funzionalità
.
Credenziali condivise: credenziali (file)
Carica le credenziali dal file di credenziali condiviso (predefinito ~/.aws/credentials o definito dalla variabile di ambiente). AWS_SHARED_CREDENTIALS_FILE Questo file è supportato da diversi strumenti. AWS SDKs Puoi fare riferimento al documento sui file di configurazione e credenziali condivisi per ulteriori informazioni.
-
v3:
fromIniimport { 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 }), });
Credenziali di identità Web
Recupera le credenziali utilizzando il token OIDC da un file su disco. Comunemente usato in Amazon EKS.
-
v3:
fromTokenFileimport { 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 }, }), });
Credenziali Web Identity Federation
Recupera le credenziali dal supporto STS Web Identity Federation.
-
v3:
fromWebTokenimport { 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 }, }), });