Sto usando il Ruby SDK (V2), ma suppongo che la mia domanda sia più generale dell'implementazione specifica in quanto non sono riuscito a trovare una risposta in nessuno degli SDK.Da AWS SDK, come si ottiene il nome utente attualmente connesso (o l'utente IAM)?
Come si ottiene il nome utente (e/o l'utente IAM) a cui appartiene attualmente la sessione?
Lascio che l'SDK esegua il comportamento predefinito per la scelta delle credenziali (vna ENV, profilo "predefinito" o altro se specificato e quindi ruolo macchina). Quindi inizializzo il mio client ed eseguo i comandi. Mi piacerebbe sapere "chi sta eseguendo i comandi". Mi aspetto di ottenere il nome utente AWS e se le credenziali scelte erano di un utente IAM, quindi anche questo nome utente.
Qualche idea? La cosa migliore che ho ottenuto finora è che dopo aver creato un oggetto Client
, posso richiedere il suo effettivo config
e ottenere Credentials
. Ma questo mi dà solo quali credenziali sono state scelte (ad esempio SharedCredentials profile='default'
rispetto a Credentials key=.. secret=..
) e non mi dice chi è il nome utente dietro di esso.
Grazie mille!
Accetto la terminologia. Anzi, intendevo l'utente di cui sto utilizzando le credenziali. Grazie a questo, mi dà quasi tutto. Devo solo aggiungere che se l'utente non dispone dell'autorizzazione IAM: GetUser, otterremo un'eccezione, ma sorprendentemente, il messaggio di eccezione contiene l'ARN dell'utente richiedente. Brutto, ma funziona. Ecco una discussione che fornisce un esempio di codice per analizzarlo: https://forums.aws.amazon.com/thread.jspa?threadID=108012 –