Desenvolvendo aplicativos com a Amazon QuickSight API - Amazon QuickSight

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Desenvolvendo aplicativos com a Amazon QuickSight API

Você pode gerenciar a maioria dos aspectos de sua implantação usando o AWS SDKs para acessar um API que seja adaptado à linguagem de programação ou plataforma que você está usando. Para obter mais informações, consulte AWS SDKs.

Para obter mais informações sobre as API operações, consulte Amazon QuickSight API Reference.

Antes de ligar para as QuickSight API operações da Amazon, você precisa da quicksight:operation-name permissão em uma política anexada à sua IAM identidade. Por exemplo, para chamar list-users, você precisa da permissão quicksight:ListUsers. O mesmo padrão se aplica a todas as operações.

Se não tiver certeza de qual é a permissão necessária, você pode tentar fazer uma chamada. O cliente informará qual é a permissão ausente. Você pode usar o símbolo de asterisco (*) no campo Recurso da política de permissão em vez de especificar recursos explícitos. No entanto, recomendamos restringir cada permissão o máximo possível. Você pode restringir o acesso do usuário especificando ou excluindo recursos na política, usando o identificador Amazon Resource Name (ARN) QuickSight da Amazon.

Para obter mais informações, consulte as informações a seguir.

Para recuperar o ARN de um usuário ou grupo, use a Describe operação no recurso relevante. Você também pode adicionar condições IAM para restringir ainda mais o acesso a um API em alguns cenários. Por exemplo, User1 ao adicionarGroup1, o recurso principal é Group1 permitir ou negar o acesso a determinados grupos, mas também pode adicionar uma condição usando a QuickSight chave da IAM Amazon quicksight:UserName para permitir ou impedir que determinados usuários sejam adicionados a esse grupo.

Veja abaixo um exemplo de política. Isso significa que o autor da chamada com essa política vinculada pode invocar a operação CreateGroupMembership em qualquer grupo, desde que o nome do usuário que ele está adicionando ao grupo não seja 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

O procedimento a seguir explica como interagir com QuickSight API as operações da Amazon por meio do AWS CLI. As instruções a seguir foram testadas em Bash, mas devem ser idênticas ou semelhantes em outros ambientes de linha de comando.

  1. Instale AWS SDK em seu ambiente. As instruções sobre como fazer isso estão localizadas aqui: Interface de linha de AWS comando.

  2. Configure sua AWS CLI identidade e região usando as seguintes instruções de comando e acompanhamento. Use as credenciais de uma IAM identidade ou função que tenha as permissões adequadas.

    aws configure
  3. Veja a QuickSight SDK ajuda da Amazon emitindo o seguinte comando:

    aws quicksight help
  4. Para obter instruções detalhadas sobre como usar umAPI, digite seu nome seguido pela ajuda, assim:

    aws quicksight list-users help
  5. Agora você pode chamar uma QuickSight API operação da Amazon. Este exemplo retorna uma lista de QuickSight usuários da Amazon em sua conta.

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

Use o procedimento a seguir para configurar um aplicativo Java que interaja com a Amazon QuickSight.

  1. Para começar, crie um projeto Java no seuIDE.

  2. Importe a Amazon QuickSight SDK para seu novo projeto, por exemplo: AWSQuickSightJavaClient-1.11.x.jar

  3. Depois de IDE indexar a Amazon QuickSight SDK, você poderá adicionar uma linha de importação da seguinte forma:

    import com.amazonaws.services.quicksight.AmazonQuickSight;

    Se você IDE não reconhecer isso como válido, verifique se você importou SDK o.

  4. Como outras AWS SDKs, a Amazon QuickSight SDK exige dependências externas para realizar muitas de suas funções. Você precisará fazer download e importá-las para o mesmo projeto. As seguintes dependências são obrigatórias:

  5. Agora, você está pronto para criar um QuickSight cliente Amazon. Você pode usar um endpoint público padrão com o qual o cliente possa se comunicar ou pode fazer referência explícita ao endpoint. Há várias maneiras de fornecer suas AWS credenciais. No exemplo a seguir, fornecemos uma abordagem simples e direta. O método cliente a seguir é usado para fazer todas as API chamadas a seguir:

    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. Agora, podemos usar o cliente acima para listar todos os usuários em nossa QuickSight conta Amazon.

    nota

    Você precisa fornecer o ID da AWS conta que você usou para assinar a Amazon QuickSight. Isso deve corresponder ao ID da AWS conta da identidade do chamador. As chamadas entre contas não são compatíveis no momento. Além disso, o parâmetro necessário namespace deve sempre ser definido como default.

    getClient().listUsers(new ListUsersRequest() .withAwsAccountId("relevant_AWS_account_ID") .withNamespace("default")) .getUserList().forEach(user -> { System.out.println(user.getArn()); });
  7. Para ver uma lista de todas as API operações possíveis e os objetos de solicitação que elas usam, você pode CTRLclicar no objeto cliente IDE em seu para visualizar a QuickSight interface da Amazon. Como alternativa, encontre-o dentro com.amazonaws.services.quicksight do pacote no QuickSight JavaClient JAR arquivo da Amazon.

JavaScript (Node.js) SDK

Use o procedimento a seguir para interagir com a Amazon QuickSight usando o Node.js.

  1. Configure o ambiente do nó usando os seguintes comandos:

    • npm install aws-sdk

    • npm install aws4

    • npm install request

    • npm install url

  2. Para obter informações sobre como configurar o Node.js AWS SDK e definir suas credenciais, consulte--> o Guia do AWS SDK for JavaScript desenvolvedor para v2. SDK

  3. Use o exemplo de código a seguir para testar sua configuração. HTTPSé obrigatório. A amostra exibe uma lista completa das QuickSight operações da Amazon junto com seus parâmetros de URL solicitação, seguida por uma lista de QuickSight usuários da Amazon em sua conta.

    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

Use o procedimento a seguir para criar um botocore pacote personalizado para interagir com a Amazon QuickSight.

  1. Crie um arquivo de credenciais no AWS diretório do seu ambiente. Em um Linux/Mac-based environment, that file is called ~/.aws/credentials e tem a seguinte aparência:

    [default] aws_access_key_id = Your_IAM_access_key aws_secret_access_key = Your_IAM_secret_key
  2. Descompacte a pasta botocore-1.12.10. Altere o diretório em botocore-1.12.10 e entre no ambiente do interpretador Python3.

  3. As respostas voltam como um objeto de dicionário. Cada um deles tem uma ResponseMetadata entrada que contém o status da solicitação IDs e da resposta. As outras entradas dependerão do tipo de operação que você executar.

  4. O exemplo a seguir mostra um exemplo de aplicação que primeiro cria, exclui e lista grupos. Em seguida, ela lista os usuários em uma conta do 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

Use o procedimento a seguir para interagir com a Amazon QuickSight usando C#. NET. Este exemplo foi criado no Microsoft Visual para Mac; as instruções podem variar um pouco com base na sua plataforma IDE e na sua. No entanto, elas devem ser semelhantes.

  1. Descompacte o arquivo nuget.zip em uma pasta chamada nuget.

  2. Crie um novo projeto chamado Console app no Visual Studio.

  3. Em sua solução, localize as Dependencies (Dependências) da aplicação e, em seguida, abra o contexto (clique com o botão direito no menu) e selecione Add Packages (Adicionar pacotes).

  4. Na lista de fontes, escolha Configure Sources (Configurar fontes).

  5. Escolha Add (Adicionar) e dê o nome QuickSightSDK à fonte. Acesse a pasta nuget e escolha Add Source (Adicionar fonte).

  6. Escolha OK. Em seguida, com a QuickSightSDK opção selecionada, selecione os três QuickSight pacotes da Amazon:

    • AWSSDK.QuickSight

    • AWSSDK.Extensions.NETCore.Setup

    • AWSSDK.Extensions.CognitoAuthentication

  7. Clique em Add Package (Adicionar pacote).

  8. Copie e cole o seguinte exemplo de aplicação no editor de aplicação de 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) ); } } }