Desarrollo de aplicaciones con la API Amazon Quick Sight - Amazon Quick Suite

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Desarrollo de aplicaciones con la API Amazon Quick Sight

Puede gestionar la mayoría de los aspectos de su implementación mediante el acceso AWS SDKs a una API que se adapte al lenguaje de programación o la plataforma que utilice. Para obtener más información, consulte AWS SDKs.

Para obtener más información sobre las operaciones de la API, consulte la referencia de la API de Amazon Quick Sight.

Para poder llamar a las operaciones de la API de Amazon Quick Sight, necesita el quicksight:operation-name permiso de una política adjunta a su identidad de IAM. Por ejemplo, para llamar a list-users, necesita el permiso quicksight:ListUsers. Lo mismo es aplicable a todas las operaciones.

Si no está seguro de cuál es el permiso necesario, puede intentar realizar una llamada. A continuación, el cliente le indica cuál es el permiso que falta. Puede usar un asterisco (*) en el campo Recurso de su política de permisos en lugar de especificar recursos explícitos. Sin embargo, le recomendamos que restrinja cada permiso en la medida de lo posible. Puede restringir el acceso de los usuarios especificando o excluyendo los recursos de la política mediante su identificador Amazon Quick Sight Amazon Resource Name (ARN).

Para obtener más información, consulte los siguientes temas:

Para obtener el ARN de un usuario o un grupo, utilice la operación Describe para el recurso correspondiente. También puede añadir condiciones en IAM para restringir aún más el acceso a una API en algunos casos. Por ejemplo, al añadir User1 aGroup1, el recurso principal esGroup1, por lo que puedes permitir o denegar el acceso a determinados grupos, pero también puedes añadir una condición mediante la tecla Amazon Quick Sight de IAM quicksight:UserName para permitir o impedir que determinados usuarios se añadan a ese grupo.

El siguiente es un ejemplo de política. Significa que el intermediario que tiene esta política asociada puede invocar la operación CreateGroupMembership para cualquier grupo, siempre que el nombre de usuario que se añade al grupo no sea 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

El siguiente procedimiento explica cómo interactuar con las operaciones de la API de Amazon Quick Sight a través de la AWS CLI. Las instrucciones siguientes se han probado en Bash, pero deberían ser idénticas o similares en otros entornos de línea de comandos.

  1. Instale el AWS SDK en su entorno. Encontrará instrucciones para hacerlo aquí: Interfaz de línea de comandos de AWS.

  2. Configure la identidad y la región de AWS CLI mediante el siguiente comando y las instrucciones de seguimiento. Utilice las credenciales de una identidad o rol de IAM que tenga los permisos adecuados.

    aws configure
  3. Consulte la ayuda del SDK de Amazon Quick Sight emitiendo el siguiente comando:

    aws quicksight help
  4. Para obtener instrucciones detalladas sobre el uso de una API, escriba su nombre seguido de “help”, del siguiente modo:

    aws quicksight list-users help
  5. Ahora puede llamar a una operación de la API de Amazon Quick Sight. En este ejemplo, se devuelve una lista de los usuarios de Amazon Quick Sight de su cuenta.

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

Utilice el siguiente procedimiento para configurar una aplicación Java que interactúe con Amazon Quick Sight.

  1. Para empezar, cree un proyecto de Java en el IDE.

  2. Importe el SDK de Amazon Quick Sight a su nuevo proyecto, por ejemplo: AWSQuickSightJavaClient-1.11.x.jar

  3. Una vez que su IDE indexe el SDK de Amazon Quick Sight, debería poder añadir una línea de importación de la siguiente manera:

    import com.amazonaws.services.quicksight.AmazonQuickSight;

    Si el IDE no lo reconoce como válido, compruebe que ha importado el SDK.

  4. Al igual que otros AWS SDKs, el SDK de Amazon Quick Sight requiere dependencias externas para realizar muchas de sus funciones. Es necesario descargarlas e importarlas en el mismo proyecto. Se requieren las dependencias siguientes:

  5. Ahora ya está listo para crear un cliente de Amazon Quick Sight. Puede utilizar punto de enlace público predeterminado con el que el cliente pueda comunicar o indicar el punto de enlace de forma explícita. Existen varias formas de proporcionar sus AWS credenciales. En el siguiente ejemplo ofrecemos un método sencillo y directo. En el método de cliente siguiente se utiliza para realizar todas las llamadas a la API subsiguientes:

    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. Ahora, podemos usar el cliente anterior para enumerar todos los usuarios de nuestra cuenta de Amazon Quick Sight.

    nota

    Debe proporcionar el ID de AWS cuenta que utilizó para suscribirse a Amazon Quick Sight. Debe coincidir con el ID de AWS cuenta de la identidad de la persona que llama. Actualmente no se admiten las llamadas entre cuentas. Además, el parámetro requerido siempre namespace debe estar establecido en. default

    getClient().listUsers(new ListUsersRequest() .withAwsAccountId("relevant_AWS_account_ID") .withNamespace("default")) .getUserList().forEach(user -> { System.out.println(user.getArn()); });
  7. Para ver una lista de todas las operaciones de API posibles y los objetos de solicitud que utilizan, puede hacer clic con la tecla Ctrl en el objeto de cliente de su IDE para ver la interfaz de Amazon Quick Sight. Como alternativa, búsquelo dentro del com.amazonaws.services.quicksight paquete en el archivo JavaClient JAR de Amazon Quick Sight.

JavaScript (Node.js) SDK

Utilice el siguiente procedimiento para interactuar con Amazon Quick Sight mediante Node.js.

  1. Configure el entorno del nodo con los comandos siguientes:

    • npm install aws-sdk

    • npm install aws4

    • npm install request

    • npm install url

  2. Para obtener información sobre cómo configurar el Node.js con el AWS SDK y configurar sus credenciales, consulte --> la Guía para AWS SDK para JavaScript desarrolladores del SDK v2.

  3. Utilice el ejemplo de código siguiente para comprobar la configuración. HTTPS es obligatorio. El ejemplo muestra una lista completa de las operaciones de Amazon Quick Sight junto con sus parámetros de solicitud de URL, seguida de una lista de los usuarios de Amazon Quick Sight de su cuenta.

    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

Utilice el siguiente procedimiento para crear un botocore paquete personalizado para interactuar con Amazon Quick Sight.

  1. Cree un archivo de credenciales en el AWS directorio de su entorno. En un Linux/Mac-based environment, that file is called ~/.aws/credentials y tiene este aspecto:

    [default] aws_access_key_id = Your_IAM_access_key aws_secret_access_key = Your_IAM_secret_key
  2. Descomprima la carpeta botocore-1.12.10. Cambie el directorio a botocore-1.12.10 y escriba el nombre del entorno del intérprete Python3.

  3. Las respuestas volverán como un objeto de diccionario. Cada uno de ellos tiene una ResponseMetadata entrada que contiene el estado de la solicitud IDs y la respuesta. Las demás entradas dependen del tipo de operación que ejecute.

  4. El ejemplo siguiente es una aplicación de muestra que primero crea, elimina y muestra grupos. A continuación muestra una lista de los usuarios de una cuenta de 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

Utilice el siguiente procedimiento para interactuar con Amazon Quick Sight mediante C#.NET. En este ejemplo se basa en Microsoft Visual para Mac. Las instrucciones pueden variar ligeramente dependiendo del IDE y la plataforma. Sin embargo, deberían ser muy similares.

  1. Descomprima el archivo nuget.zip en una carpeta llamada nuget.

  2. Cree un nuevo proyecto Aplicación de consola en Visual Studio.

  3. Dentro de la solución, busque las Dependencias de la aplicación y, a continuación, abra el menú contextual (clic con el botón derecho) y elija Agregar paquetes.

  4. En la lista de orígenes, elija Configurar orígenes.

  5. Elija Agregar y asigne al origen el nombre QuickSightSDK. Navegue hasta la carpeta nuget y elija Agregar origen.

  6. Seleccione OK (Aceptar). Luego, con la QuickSightSDK opción seleccionada, selecciona los tres paquetes de Amazon Quick Sight:

    • AWSSDK.QuickSight

    • AWSSDK.Extensions.NETCore.Setup

    • AWSSDK.Extensions.CognitoAuthentication

  7. Haga clic en Agregar paquete.

  8. Copie y pegue la siguiente aplicación de ejemplo en el editor de aplicaciones de la consola.

    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) ); } } }