Elenca le autorizzazioni di accesso del chiamante - Amazon Simple Storage Service

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

Elenca le autorizzazioni di accesso del chiamante

I proprietari di dati S3 possono utilizzare S3 Access Grants per creare concessioni di accesso per AWS Identity and Access Management () identità IAM o per AWS IAM Identity Center identità degli elenchi aziendali. IAMIAMidentity e le identità di directory di Identity Center possono a loro volta utilizzare il ListCallerAccessGrants API per elencare tutti i bucket, i prefissi e gli oggetti di Amazon S3 a cui possono accedere, come definito dai rispettivi S3 Access Grants. Usalo API per scoprire tutti i dati S3 a cui un'identità di directory può accedere tramite S3 Access IAM Grants.

Puoi utilizzare questa funzionalità per creare applicazioni che mostrino i dati accessibili a utenti finali specifici. Ad esempio, AWS Storage Browser for S3, un componente dell'interfaccia utente open source utilizzato dai clienti per accedere ai bucket S3, utilizza questa funzionalità per presentare agli utenti finali i dati a cui hanno accesso in Amazon S3, in base agli S3 Access Grants. Un altro esempio è quando si crea un'applicazione per la navigazione, il caricamento o il download di dati in Amazon S3, è possibile utilizzare questa funzionalità per creare una struttura ad albero nell'applicazione che un utente finale possa quindi sfogliare.

Il beneficiario, che si tratti di un'IAMidentità o di un'identità di directory aziendale, può ottenere un elenco delle sue concessioni di accesso utilizzando il AWS Command Line Interface (AWS CLI), Amazon S3 REST API e AWS SDKs.

Per installare il AWS CLI, vedere Installazione di AWS CLI nella AWS Command Line Interface Guida per l'utente.

Per utilizzare il seguente comando di esempio, sostituisci user input placeholders con le tue informazioni.

Esempio Elenca le autorizzazioni di accesso di un chiamante

Richiesta:

aws s3control list-caller-access-grants \ --account-id 111122223333 \ --region us-east-2 --max-results 5

Risposta:

{ "NextToken": "6J9S...", "CallerAccessGrantsList": [ { "Permission": "READWRITE", "GrantScope": "s3://amzn-s3-demo-bucket/prefix1/sub-prefix1/*", "ApplicationArn": "NA" }, { "Permission": "READWRITE", "GrantScope": "s3://amzn-s3-demo-bucket/prefix1/sub-prefix2/*", "ApplicationArn": "ALL" }, { "Permission": "READWRITE", "GrantScope": "s3://amzn-s3-demo-bucket/prefix1/sub-prefix3/*", "ApplicationArn": "arn:aws:sso::111122223333:application/ssoins-ssoins-1234567890abcdef/apl-abcd1234a1b2c3d" } ] }
Esempio Elenca le concessioni di accesso di un chiamante per un bucket

È possibile restringere l'ambito dei risultati utilizzando il parametro. grantscope

Richiesta:

aws s3control list-caller-access-grants \ --account-id 111122223333 \ --region us-east-2 --grant-scope "s3://amzn-s3-demo-bucket"" --max-results 1000

Risposta:

{ "NextToken": "6J9S...", "CallerAccessGrantsList": [ { "Permission": "READ", "GrantScope": "s3://amzn-s3-demo-bucket*", "ApplicationArn": "ALL" }, { "Permission": "READ", "GrantScope": "s3://amzn-s3-demo-bucket/prefix1/*", "ApplicationArn": "arn:aws:sso::111122223333:application/ssoins-ssoins-1234567890abcdef/apl-abcd1234a1b2c3d" } ] }

Per informazioni sul REST API supporto di Amazon S3 per ottenere un elenco delle concessioni di accesso del API chiamante, consulta Amazon ListCallerAccessGrantsSimple Storage Service Reference. API

Questa sezione fornisce un esempio di come i beneficiari richiedono credenziali temporanee a S3 Access Grants utilizzando il AWS SDKs.

Java

Il seguente esempio di codice restituisce le concessioni di accesso del API chiamante ai dati S3 di un particolare Account AWS. Per utilizzare questo esempio di codice, user input placeholders sostituiscili con le tue informazioni.

Esempio Elenca le concessioni di accesso di un chiamante

Richiesta:

Public void ListCallerAccessGrants() { ListCallerAccessGrantsRequest listRequest = ListCallerAccessGrantsRequest.builder() .withMaxResults(1000) .withGrantScope("s3://") .accountId("111122223333"); ListCallerAccessGrantsResponse listResponse = s3control.listCallerAccessGrants(listRequest); LOGGER.info("ListCallerAccessGrantsResponse: " + listResponse); }

Risposta:

ListCallerAccessGrantsResponse( CallerAccessGrantsList=[ ListCallerAccessGrantsEntry( S3Prefix=s3://amzn-s3-demo-bucket/prefix1/, Permission=READ, ApplicationArn=ALL ) ])