Sviluppo di applicazioni con Amazon QuickSight API - Amazon QuickSight

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

Sviluppo di applicazioni con Amazon QuickSight API

Puoi gestire la maggior parte degli aspetti della tua implementazione utilizzando AWS SDKs per accedere a un API file personalizzato in base al linguaggio di programmazione o alla piattaforma che stai utilizzando. Per ulteriori informazioni, consulta AWS SDKs.

Per ulteriori informazioni sulle API operazioni, consulta Amazon QuickSight API Reference.

Prima di poter chiamare le QuickSight API operazioni di Amazon, è necessaria l'quicksight:operation-nameautorizzazione in una politica allegata alla propria IAM identità. Ad esempio, per chiamare list-users, è necessaria l'autorizzazione quicksight:ListUsers. Lo stesso modello si applica a tutte le operazioni.

Se non sei sicuro di quale sia l'autorizzazione necessaria, puoi provare a effettuare una chiamata. Il cliente ti dice quindi qual è l'autorizzazione mancante. Invece di specificare le risorse esplicite, nel campo Risorse della tua policy di autorizzazione puoi usare un asterisco (*). Si consiglia tuttavia di limitare il più possibile le autorizzazioni. Puoi limitare l'accesso degli utenti specificando o escludendo le risorse nella policy, utilizzando il loro identificatore QuickSight Amazon Resource Name (ARN).

Per ulteriori informazioni, consulta gli argomenti seguenti:

Per recuperare il nome ARN di un utente o di un gruppo, utilizzate l'Describeoperazione sulla risorsa pertinente. Puoi anche aggiungere condizioni IAM per limitare ulteriormente l'accesso a e API in alcuni scenari. Ad esempio, quando si aggiunge User1 aGroup1, la risorsa principale èGroup1, quindi è possibile consentire o negare l'accesso a determinati gruppi, ma è anche possibile aggiungere una condizione utilizzando la QuickSight chiave IAM Amazon quicksight:UserName per consentire o impedire l'aggiunta di determinati utenti a quel gruppo.

Di seguito è riportato un esempio di policy. Significa che l'intermediario a cui questa policy è collegata è in grado di invocare l'operazione CreateGroupMembership su qualsiasi gruppo, a condizione che il nome utente che viene aggiunto al gruppo non sia user1.

{ "Effect": "Allow", "Action": "quicksight:CreateGroupMembership", "Resource": "arn:aws:quicksight:us-east-1:aws-account-id:group/default/*", "Condition": { "StringNotEquals": { "quicksight:UserName": "user1" } } }
AWS CLI

La procedura seguente spiega come interagire con QuickSight API le operazioni di Amazon tramite AWS CLI. Le seguenti istruzioni sono state testate in Bash ma dovrebbero essere identiche o simili in altri ambienti a riga di comando.

  1. Installa AWS SDK nel tuo ambiente. Le istruzioni su come eseguire questa operazione si trovano qui: Interfaccia a riga di AWS comando.

  2. Configura la tua AWS CLI identità e la tua regione utilizzando i seguenti comandi e istruzioni di follow-up. Usa le credenziali per un'IAMidentità o un ruolo con le autorizzazioni appropriate.

    aws configure
  3. Consulta l' QuickSight SDKaiuto di Amazon emettendo il seguente comando:

    aws quicksight help
  4. Per ottenere istruzioni dettagliate su come usare unAPI, inserisci il suo nome seguito da aiuto, in questo modo:

    aws quicksight list-users help
  5. Ora puoi chiamare un' QuickSight APIoperazione Amazon. Questo esempio restituisce un elenco di QuickSight utenti Amazon nel tuo account.

    aws quicksight list-users --aws-account-id aws-account-id --namespace default --region us-east-1
Java SDK

Utilizza la seguente procedura per configurare un'app Java che interagisce con Amazon QuickSight.

  1. Per iniziare, crea un progetto Java nel tuoIDE.

  2. Importa Amazon QuickSight SDK nel tuo nuovo progetto, ad esempio: AWSQuickSightJavaClient-1.11.x.jar

  3. Una volta IDE indicizzato Amazon QuickSight SDK, dovresti essere in grado di aggiungere una riga di importazione come segue:

    import com.amazonaws.services.quicksight.AmazonQuickSight;

    Se IDE non lo riconosci come valido, verifica di aver importato il. SDK

  4. Come altri AWS SDKs, Amazon QuickSight SDK richiede dipendenze esterne per eseguire molte delle sue funzioni. È necessario scaricarle e importarle nello stesso progetto. Le dipendenze seguenti sono obbligatorie:

  5. Ora sei pronto per creare un QuickSight client Amazon. Puoi utilizzare un endpoint pubblico predefinito con cui il client può comunicare o puoi fare riferimento esplicitamente all'endpoint. Esistono diversi modi per fornire le tue AWS credenziali. Nell'esempio seguente viene indicato un approccio diretto e semplice. Il seguente metodo client viene utilizzato per effettuare tutte le API chiamate seguenti:

    private static AmazonQuickSight getClient() { final AWSCredentialsProvider credsProvider = new AWSCredentialsProvider() { @Override public AWSCredentials getCredentials() { // provide actual IAM access key and secret key here return new BasicAWSCredentials("access-key", "secret-key"); } @Override public void refresh() {} }; return AmazonQuickSightClientBuilder .standard() .withRegion(Regions.US_EAST_1.getName()) .withCredentials(credsProvider) .build(); }
  6. Ora possiamo usare il client di cui sopra per elencare tutti gli utenti nel nostro QuickSight account Amazon.

    Nota

    Devi fornire l'ID dell' AWS account che hai usato per abbonarti ad Amazon QuickSight. Questo deve corrispondere all'ID dell' AWS account dell'identità del chiamante. Le chiamate tra account non sono supportate in questo momento. Inoltre, il parametro richiesto namespace deve essere sempre impostato su default.

    getClient().listUsers(new ListUsersRequest() .withAwsAccountId("relevant_AWS_account_ID") .withNamespace("default")) .getUserList().forEach(user -> { System.out.println(user.getArn()); });
  7. Per visualizzare un elenco di tutte le API operazioni possibili e degli oggetti di richiesta che utilizzano, puoi CTRLfare clic sull'oggetto client IDE nel tuo per visualizzare l' QuickSight interfaccia Amazon. In alternativa, puoi trovarlo all'interno del com.amazonaws.services.quicksight pacchetto nel QuickSight JavaClient JAR file Amazon.

JavaScript (Node.js) SDK

Utilizza la seguente procedura per interagire con Amazon QuickSight utilizzando Node.js.

  1. Imposta l'ambiente nodo tramite i seguenti comandi:

    • npm install aws-sdk

    • npm install aws4

    • npm install request

    • npm install url

  2. Per informazioni sulla configurazione di Node.js AWS SDK e sull'impostazione delle credenziali, consulta--> la AWS SDK for JavaScript Developer Guide for v2. SDK

  3. Utilizza il seguente codice di esempio per testare la tua configurazione. HTTPSè obbligatorio. L'esempio mostra un elenco completo delle QuickSight operazioni Amazon con i relativi parametri di URL richiesta, seguito da un elenco di QuickSight utenti Amazon nel tuo account.

    const AWS = require('aws-sdk'); const https = require('https'); var quicksight = new AWS.Service({ apiConfig: require('./quicksight-2018-04-01.min.json'), region: 'us-east-1', }); console.log(quicksight.config.apiConfig.operations); quicksight.listUsers({ // Enter your actual AWS account ID 'AwsAccountId': 'relevant_AWS_account_ID', 'Namespace': 'default', }, function(err, data) { console.log('---'); console.log('Errors: '); console.log(err); console.log('---'); console.log('Response: '); console.log(data); });
Python3 SDK

Utilizza la procedura seguente per creare un botocore pacchetto personalizzato per interagire con Amazon QuickSight.

  1. Crea un file di credenziali nella AWS directory del tuo ambiente. In un Linux/Mac-based environment, that file is called ~/.aws/credentials e ha il seguente aspetto:

    [default] aws_access_key_id = Your_IAM_access_key aws_secret_access_key = Your_IAM_secret_key
  2. Decomprimi la cartella botocore-1.12.10. Cambia la directory in botocore-1.12.10 e immetti l'ambiente interprete Python3.

  3. Le risposte vengono restituite come un oggetto dizionario. Ciascuno di essi ha una ResponseMetadata voce che contiene lo stato della richiesta IDs e della risposta. Le altre voci sono basate sul tipo di operazione che esegui.

  4. L'esempio che segue rappresenta un'applicazione che prima crea, elimina ed elenca i gruppi. Quindi, elenca gli utenti in un account Quicksight:

    import botocore.session default_namespace = 'default' account_id = 'relevant_AWS_Account' session = botocore.session.get_session() client = session.create_client("quicksight", region_name='us-east-1') print('Creating three groups: ') client.create_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup1') client.create_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup2') client.create_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup3') print('Retrieving the groups and listing them: ') response = client.list_groups(AwsAccountId = account_id, Namespace=default_namespace) for group in response['GroupList']: print(group) print('Deleting our groups: ') client.delete_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup1') client.delete_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup2') client.delete_group(AwsAccountId = account_id, Namespace=default_namespace, GroupName='MyGroup3') response = client.list_users(AwsAccountId = account_id, Namespace=default_namespace) for user in response['UserList']: print(user)
.NET/C# SDK

Utilizza la seguente procedura per interagire con Amazon QuickSight tramite C#. NET. Questo esempio è basato su Microsoft Visual per Mac; le istruzioni possono variare leggermente in base alla piattaforma IDE e alla piattaforma. Tuttavia, dovrebbero essere simili.

  1. Decomprimi il file nuget.zip in una cartella chiamata nuget.

  2. Crea un nuovo progetto Console app (Applicazione console) in Visual Studio.

  3. Nella soluzione, individua Dependencies (Dipendenze) dell'app, quindi apri il menu contestuale (clic con il pulsante destro del mouse) e scegli Add Packages (Aggiungi pacchetti).

  4. Nell'elenco di origini, scegli Configure Sources (Configura origini).

  5. Scegli Add (Aggiungi) e denomina l'origine QuickSightSDK. Spostati sulla cartella nuget e scegli Add Source (Aggiungi origine).

  6. Scegli OK. Quindi, con QuickSightSDK selected, seleziona tutti e tre i QuickSight pacchetti Amazon:

    • AWSSDK.QuickSight

    • AWSSDK.Extensions.NETCore.Setup

    • AWSSDK.Extensions.CognitoAuthentication

  7. Fai clic su Add Package (Aggiungi pacchetto).

  8. Copia e incolla la seguente app di esempio nell'editor di app della console.

    using System; using Amazon.QuickSight.Model; using Amazon.QuickSight; namespace DotNetQuickSightSDKTest { class Program { private static readonly string AccessKey = "insert_your_access_key"; private static readonly string SecretAccessKey = "insert_your_secret_key"; private static readonly string AccountID = "AWS_account_ID"; private static readonly string Namespace = "default"; // leave this as default static void Main(string[] args) { var client = new AmazonQuickSightClient( AccessKey, SecretAccessKey, Amazon.RegionEndpoint.USEast1); var listUsersRequest = new ListUsersRequest { AwsAccountId = AccountID, Namespace = Namespace }; client.ListUsersAsync(listUsersRequest).Result.UserList.ForEach( user => Console.WriteLine(user.Arn) ); var listGroupsRequest = new ListGroupsRequest { AwsAccountId = AccountID, Namespace = Namespace }; client.ListGroupsAsync(listGroupsRequest).Result.GroupList.ForEach( group => Console.WriteLine(group.Arn) ); } } }