Configura l'autenticazione SDK con AWS - AWS SDK for .NET

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à.

Configura l'autenticazione SDK con AWS

È necessario definire la modalità di autenticazione del codice con AWS durante lo sviluppo con i Servizi AWS. Esistono diversi modi per configurare l'accesso programmatico alle risorse AWS, a seconda dell'ambiente e dell'accesso AWS disponibili.

Per visualizzare i vari metodi di autenticazione per l'SDK, consulta Autenticazione e accesso nella Guida di riferimento agli AWSSDK e agli strumenti.

Questo argomento presuppone che un nuovo utente stia sviluppando in locale, non disponga di un metodo di autenticazione fornito dal datore di lavoro e utilizzi AWS IAM Identity Center per ottenere credenziali temporanee. Se il tuo ambiente non rientra in questi presupposti, alcune delle informazioni contenute in questo argomento potrebbero non riguardarti o alcune potrebbero essere già state fornite.

La configurazione di questo ambiente richiede diversi passaggi, riassunti di seguito:

Abilitazione e configurazione di IAM Identity Center

Per utilizzare IAM Identity Center, deve prima essere abilitato e configurato. Per maggiori dettagli su come eseguire questa operazione per l'SDK, consulta la Fase 1 dell'argomento relativo all'autenticazione di IAM Identity Center nella Guida di riferimento agli AWS SDK and Tools. In particolare, segui le istruzioni necessarie riportate nella sezione I do not have established access through IAM Identity Center (Non ho stabilito l'accesso tramite IAM Identity Center).

Configura l'SDK per utilizzare IAM Identity Center.

Le informazioni su come configurare l'SDK per l'utilizzo di IAM Identity Center si trovano nella fase 2 dell'argomento relativo all'autenticazione di IAM Identity Center nella Guida di riferimento agli AWSSDK e agli strumenti. Dopo aver completato questa configurazione, il sistema deve contenere i seguenti elementi:

  • La AWS CLI, che viene utilizzata per avviare una sessione del portale di accesso AWS prima di eseguire l'applicazione.

  • Il AWS config file condiviso che contiene un [default]profilo con un set di valori di configurazione a cui è possibile fare riferimento dall'SDK. Per trovare la posizione di questo file, consulta l'argomento relativo alla posizione dei file condivisi nella Guida di riferimento per SDK e strumenti AWS. AWS SDK for .NETUtilizza il provider di token SSO del profilo per acquisire le credenziali prima di inviare richieste a. AWS Il valore sso_role_name, che è un ruolo IAM connesso a un set di autorizzazioni di IAM Identity Center, dovrebbe consentire l'accesso ai Servizi AWS utilizzati nell'applicazione.

    Il seguente file config di esempio mostra un profilo predefinito impostato con il provider di token SSO. L'impostazione sso_session del profilo si riferisce alla sezione sso-session denominata. La sezione sso-session contiene le impostazioni per avviare una sessione del portale di accesso AWS.

    [default] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://provided-domain.awsapps.com/start sso_registration_scopes = sso:account:access
Importante

Se si utilizza AWS IAM Identity Center per l'autenticazione, l'applicazione deve fare riferimento ai seguenti NuGet pacchetti in modo che la risoluzione SSO possa funzionare:

  • AWSSDK.SSO

  • AWSSDK.SSOOIDC

Il mancato riferimento a questi pacchetti comporterà un'eccezione di runtime.

Avvio di una sessione del portale di accesso AWS

Prima di eseguire un'applicazione con accessoServizi AWS, è necessaria una sessione attiva del portale di AWS accesso affinché l'SDK utilizzi l'autenticazione IAM Identity Center per risolvere le credenziali. A seconda della durata della sessione configurata, l'accesso alla fine scadrà e l'SDK riscontrerà un errore di autenticazione. Per accedere al portale di accesso AWS, esegui il seguente comando nella AWS CLI.

aws sso login

Poiché disponi di una configurazione predefinita del profilo, non devi chiamare il comando con un'opzione --profile. Se la configurazione del provider di token SSO utilizza un profilo denominato, il comando è aws sso login --profile named-profile.

Per verificare se hai già una sessione attiva, esegui il seguente comando AWS CLI.

aws sts get-caller-identity

La risposta a questo comando dovrebbe restituire l'account IAM Identity Center e il set di autorizzazioni configurati nel file config condiviso.

Nota

Se hai già una sessione attiva del portale di accesso AWS e hai già eseguito aws sso login, non ti verrà richiesto di fornire credenziali.

La procedura di accesso potrebbe richiederti di autorizzare l'accesso ai dati da parte della AWS CLI. Poiché la AWS CLI è basata sull'SDK per Python, i messaggi di autorizzazione possono contenere variazioni del nome botocore.

Informazioni aggiuntive

  • Per ulteriori informazioni sull'utilizzo di IAM Identity Center e SSO in un ambiente di sviluppo, consulta Autenticazione unica la sezione. Autenticazione avanzata Queste informazioni includono metodi alternativi e più avanzati, oltre a tutorial che mostrano come utilizzare questi metodi.

  • Per ulteriori opzioni sull'autenticazione per l'SDK, come l'uso di profili e variabili di ambiente, consulta il capitolo sulla configurazione nella Guida di riferimento agli AWSSDK e agli strumenti.

  • Per ulteriori informazioni sulle best practice, consulta Best practice per la sicurezza in IAM nella Guida per l'utente di IAM.

  • Per creare credenziali AWS a breve termine, consulta Credenziali di sicurezza temporanee in IAM nella Guida per l'utente di IAM.

  • Per ulteriori informazioni su altri provider di credenziali, consulta l'argomento relativo ai provider di credenziali standard nella Guida di riferimento per SDK e strumenti AWS.