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à.
Accesso a credenziali e profili in un'applicazione
Il metodo preferito per utilizzare le credenziali consiste nel consentire loro AWS SDK for .NET di trovarle e recuperarle automaticamente, come descritto in. Risoluzione di credenziali e profili
Tuttavia, è anche possibile configurare l'applicazione per recuperare attivamente profili e credenziali e quindi utilizzare esplicitamente tali credenziali durante la creazione di un client di servizio. AWS
Per recuperare attivamente profili e credenziali, utilizza le classi di Amazon.Runtime. CredentialManagementspazio dei nomi.
-
Per trovare un profilo in un file che utilizza il formato di file delle AWS credenziali (il file delle AWScredenziali condivise nella posizione predefinita o un file di credenziali personalizzato), utilizzate la classe. SharedCredentialsFile I file in questo formato vengono talvolta chiamati semplicemente file di credenziali in questo testo per brevità.
-
Per trovare un profilo nell'SDK Store, utilizzate la classe NetSDK. CredentialsFile
-
Per cercare sia in un file di credenziali che nell'SDK Store, a seconda della configurazione della proprietà di una classe, utilizzate la classe. CredentialProfileStoreChain
Puoi usare questa classe per trovare i profili. È inoltre possibile utilizzare questa classe per richiedere direttamente AWS le credenziali anziché utilizzare la
AWSCredentialsFactory
classe (descritta di seguito). -
Per recuperare o creare vari tipi di credenziali da un profilo, utilizzate la classe. AWSCredentialsFactory
Le sezioni seguenti forniscono esempi per queste classi.
Esempi di classe CredentialProfileStoreChain
È possibile ottenere credenziali o profili dalla CredentialProfileStoreChainclasse utilizzando i TryGetProfilemetodi TryGetAWSCredentialsor. La ProfilesLocation
proprietà della classe determina il comportamento dei metodi, come segue:
-
Se
ProfilesLocation
è nullo o vuoto, cerca nell'SDK Store se la piattaforma lo supporta, quindi cerca nel file delle AWS credenziali condivise nella posizione predefinita. -
Se la
ProfilesLocation
proprietà contiene un valore, cerca nel file delle credenziali specificato nella proprietà.
Ottieni le credenziali dall'SDK Store o dal file delle credenziali condivise AWS
Questo esempio mostra come ottenere le credenziali utilizzando la CredentialProfileStoreChain
classe e quindi utilizzare le credenziali per creare un oggetto AmazonS3Client. Le credenziali possono provenire dall'SDK Store o dal file delle credenziali condivise nella posizione predefinita. AWS
Questo esempio utilizza anche Amazon.Runtime. AWSCredentialsclasse.
var chain = new CredentialProfileStoreChain(); AWSCredentials awsCredentials; if (chain.TryGetAWSCredentials("some_profile", out awsCredentials)) { // Use awsCredentials to create an Amazon S3 service client using (var client = new AmazonS3Client(awsCredentials)) { var response = await client.ListBucketsAsync(); Console.WriteLine($"Number of buckets: {response.Buckets.Count}"); } }
Ottieni un profilo dall'SDK Store o dal file di AWS credenziali condivise
Questo esempio mostra come ottenere un profilo utilizzando la CredentialProfileStoreChain classe. Le credenziali possono provenire dall'SDK Store o dal file delle AWS credenziali condivise nella posizione predefinita.
Anche questo esempio utilizza la classe. CredentialProfile
var chain = new CredentialProfileStoreChain(); CredentialProfile basicProfile; if (chain.TryGetProfile("basic_profile", out basicProfile)) { // Use basicProfile }
Ottieni credenziali da un file di credenziali personalizzato
Questo esempio mostra come ottenere le credenziali utilizzando la classe. CredentialProfileStoreChain Le credenziali provengono da un file che utilizza il formato di file delle AWS credenziali ma si trova in una posizione alternativa.
Questo esempio utilizza anche Amazon.Runtime. AWSCredentialsclasse.
var chain = new CredentialProfileStoreChain("c:\\Users\\sdkuser\\customCredentialsFile.ini"); AWSCredentials awsCredentials; if (chain.TryGetAWSCredentials("basic_profile", out awsCredentials)) { // Use awsCredentials to create an AWS service client }
Esempi di classi SharedCredentialsFile e AWSCredentialsFactory
Crea un client AmazonS3 utilizzando la classe SharedCredentialsFile
Questo esempio mostra come trovare un profilo nel file delle AWS credenziali condivise, creare credenziali dal profilo e quindi utilizzare AWS le credenziali per creare un oggetto AmazonS3Client. SharedCredentialsFileL'esempio utilizza la classe.
Questo esempio utilizza anche la CredentialProfileclasse e Amazon.Runtime. AWSCredentialsclasse.
CredentialProfile basicProfile; AWSCredentials awsCredentials; var sharedFile = new SharedCredentialsFile(); if (sharedFile.TryGetProfile("basic_profile", out basicProfile) && AWSCredentialsFactory.TryGetAWSCredentials(basicProfile, sharedFile, out awsCredentials)) { // use awsCredentials to create an Amazon S3 service client using (var client = new AmazonS3Client(awsCredentials, basicProfile.Region)) { var response = await client.ListBucketsAsync(); Console.WriteLine($"Number of buckets: {response.Buckets.Count}"); } }
Nota
La CredentialsFile classe NetSDK può essere utilizzata esattamente allo stesso modo, tranne per il fatto che è necessario istanziare un nuovo oggetto NetSDK CredentialsFile anziché un oggetto. SharedCredentialsFile