Early Access: The content on this website is provided for informational purposes only in connection with pre-General Availability Qlik Products.
All content is subject to change and is provided without warranty.
Ir para conteúdo principal Pular para conteúdo complementar

Criando e gerenciando clientes OAuth

O OAuth é um protocolo de segurança para autorização e delegação. Ele permite que aplicativos de terceiros acessem recursos da API sem revelar as credenciais do usuário final. Um cliente OAuth solicita um código de autorização, troca-o por um token de acesso e usa o token para acessar o conteúdo do Qlik Cloud por meio de APIs.

Tipos de cliente OAuth

Um cliente OAuth é um aplicativo Web ou software que solicita acesso a recursos no Qlik Cloud em nome de um usuário. O OAuth define dois tipos de clientes – clientes públicos e clientes confidenciais – para proteger a autorização entre um aplicativo (o cliente) e o servidor de autorização (Qlik Cloud).

O Qlik Cloud oferece suporte a clientes confidenciais para aplicativos da Web tradicionais (do lado do servidor) e clientes públicos para aplicativos nativos e de página única usando fluxos de autorização específicos.

Para obter a especificação oficial do OAuth 2.0 sobre tipos de clientes, consulte a RFC 6749 Seção 2.1: Tipos de cliente OAuth 2.0.

Clientes públicos

Clientes públicos são aplicativos que não usam o segredo do cliente porque não conseguem manter a confidencialidade das credenciais necessárias. No Qlik Cloud, isso inclui aplicativos de front-end, como aplicativos de página única (SPA) com análises incorporadas ou extensões de visualização personalizadas no Qlik Sense que exigem autenticação do usuário.

Clientes confidenciais

Clientes confidenciais podem armazenar com segurança um ID e um segredo de cliente e usá-los para autenticar com o servidor de autorização. Esses clientes podem acessar recursos protegidos porque possuem o segredo do cliente.

Exemplo: um aplicativo Web com um back-end seguro que interage com APIs do Qlik Cloud para gerenciar o acesso do usuário ou orquestrar tarefas de atualização de dados.

Fluxos de autorização OAuth

O Qlik oferece suporte a dois fluxos de autorização (tipos de concessão):

  • Fluxo do código de autorização: para clientes confidenciais.

  • Fluxo de código de autorização com Proof Key for Code Exchange (PKCE): para clientes públicos.

Fluxo de código de autorização

Esse fluxo é usado por aplicativos no lado do servidor em que o código-fonte não é exposto publicamente. Isso envolve a troca de um código de autorização por um token de acesso, com o segredo do cliente usado para autenticação. Os aplicativos Web que usam esse fluxo devem ser do lado do servidor porque o segredo do cliente é passado para o servidor de autorização durante a troca de tokens.

Nota informativaNunca compartilhe publicamente o segredo de seu cliente, pois isso compromete a segurança de seu locatário. Mantenha-o seguro e privado.

Para obter mais informações sobre o fluxo do código de autorização, consulte a documentação oficial do OAuth 2.0: Fluxo de código de autorização.

Fluxo de código de autorização com PKCE

Aplicativos nativos e de página única não podem armazenar com segurança um segredo do cliente porque seu código-fonte pode ser descompilado ou inspecionado em um navegador. A PKCE aumenta a segurança ao exigir o uso de um verificador de código para obter um token de acesso.

Para obter mais informações sobre autorização com PKCE, consulte a documentação oficial do OAuth 2.0: Fluxo de código de autorização com Proof Key for Code Exchange (PKCE).

Escopos e permissões do OAuth

Os escopos do OAuth definem o nível de acesso concedido aos aplicativos clientes OAuth. Por exemplo, um token de acesso pode permitir acesso total aos recursos ou restringi-lo ao acesso somente leitura. No Qlik Cloud, os escopos controlam o acesso do cliente às funcionalidades e recursos disponíveis. Sem escopos, os clientes não podem acessar nenhum recurso.

Escopos do OAuth disponíveis

A tabela lista os escopos disponíveis e as permissões associadas:

Escopo Permissão
user_default Acesso total à sua conta e conteúdo
admin_classic

Acesso total de administrador ao seu locatário

Veja também: Implementando e administrando Qlik Cloud

Nota informativaNão compatível com os tipos de cliente Aplicativo de página única ou Nativo.
admin.apps

Ler e gerenciar todos os aplicativos no locatário.

Consulte também: Gerenciando aplicativos

Indica um item filho admin.apps:export

Exportar todos os aplicativos no locatário

Consulte também: Exportando aplicativos

Indica um item filho admin.apps:read

Ler todos os aplicativos no locatário
admin.automations

Ler e gerenciar todas as automações no locatário

Consulte também: Gerenciando automações

Indica um item filho admin.automations:read

Ler todas as automações no locatário
admin.spaces

Ler e gerenciar todos os espaços no locatário

Consulte também: Gerenciando espaços

Indica um item filho admin.spaces:read

Ler todos os espaços no locatário
aplicativos

Ler e gerenciar seus aplicativos

Consulte também: Gerenciando aplicativos

Indica um item filho apps:export

Exportar seus aplicativos

Consulte também: Exportando aplicativos

Indica um item filho apps:read

Ler seus aplicativos
automations

Ler e gerenciar suas automações

Consulte também: Gerenciando automações

Indica um item filho automations:read

Ler suas automações
automl-experiments Ler e gerenciar seus experimentos de ML
automl-deployments Ler e gerenciar suas implementações de ML
identity.email:read

Ler seu endereço de e-mail

Consulte também: Provedores de identidade no Qlik Cloud

identity.name:read

Ler seu nome completo
identity.picture:read

Ler sua foto de perfil

Consulte também: Provedores de identidade no Qlik Cloud

identity.subject:read

Ler seu identificador de assunto do usuário
spaces.data

Ler e gerenciar seus espaços de dados

Consulte também: Gerenciando espaços

Indica um item filho spaces.data:read

Ler seus espaços de dados
spaces.managed

Ler e gerenciar seus espaços gerenciados

Consulte também: Gerenciando espaços

Indica um item filho spaces.managed:read

Ler seus espaços gerenciados
spaces.shared

Ler e gerenciar seus espaços compartilhados

Consulte também: Gerenciando espaços

Indica um item filho spaces.shared:read

Ler seus espaços compartilhados
offline_access

Acesse recursos enquanto estiver offline

Nota informativaNão compatível com o tipo de cliente Aplicativo de página única.
Nota informativaEssa lista reflete os escopos aceitos na versão inicial. Você pode encontrar uma lista completa de escopos no Portal do Desenvolvedor Qlik em Escopos do OAuth.

Criando clientes OAuth

Os administradores de locatários gerenciam clientes OAuth no centro de atividades de Administração na página OAuth. Com um cliente OAuth, você pode integrar seu aplicativo cliente ao Qlik Cloud para acessar recursos com segurança.

Limites para clientes OAuth

Os seguintes limites são aplicáveis:

  • Máximo de 5 URLs de redirecionamento por cliente.

  • Máximo de 5 origens permitidas por cliente.

  • Máximo de 5 segredos de cliente por cliente.

  • Máximo de 200 clientes OAuth por locatário.

Etapas para criar um cliente OAuth

Faça o seguinte:

  1. No centro de atividades de Administração, acesse OAuth.

  2. Clique em Criar novo.

  3. Selecione um tipo de cliente:

    • Web para clientes confidenciais

    • Aplicativo de página única ou Nativo para clientes públicos.

  4. No diálogo, insira um nome para o cliente OAuth.

  5. Como opção, adicione uma descrição.

  6. Selecione qualquer um dos escopos disponíveis rolando ou usando o campo de busca.

    Nota de dicaUse os botões Todos e Selecionados para visualizar todos os escopos ou apenas os selecionados.
  7. Insira uma ou mais URLs de redirecionamento para o aplicativo cliente OAuth (máximo de 5). Em seguida, clique em Adicionar para adicionar a URL de redirecionamento à lista de permissões.

    • A URL de redirecionamento é para onde o servidor de autorização envia o navegador do usuário após autenticar e conceder permissão com sucesso ao aplicativo cliente. Por exemplo, https://www.exampleapp.com/oauth/callback, onde /oauth/callback lida com retornos de chamada de autenticação do provedor OAuth.

    • O Qlik Cloud irá redirecionar o usuário de volta ao aplicativo após uma autorização bem-sucedida apenas se sua URL estiver na lista de permissões de URLs de redirecionamento.

    • As URLs devem começar com https://, a menos que o domínio seja localhost. Nesse caso, pode começar com http://. Aplicativos nativos também podem usar o formato de link específico do aplicativo, por exemplo, exampleapp://.

  8. Para tipos de cliente Web ou Aplicativo de página única, especifique uma ou mais origens permitidas (máximo de 5).

    • O acesso ao aplicativo só será concedido se a URL for adicionada à lista de origens permitidas.

  9. Para o tipo de cliente Web, você pode ativar uma das seguintes opções para acesso automatizado ao sistema sem interação do usuário:

    • Permitir máquina a máquina (M2M): permite a comunicação de sistema para sistema sem o envolvimento do usuário.

    • Permitir a representação do usuário M2M: permite que seu aplicativo se autentique em nome dos usuários, agindo como eles durante o processo de autenticação.

  10. Clique em Criar.

  11. Clique em Copiar para a área de transferência para salvar o ID do cliente e o segredo do cliente para uso posterior. Guarde o segredo do cliente com segurança.

    Nota informativaOs clientes públicos não têm um segredo do cliente.
  12. Clique em Concluído.

Clientes OAuth para casos de uso específicos

Para casos de uso do cliente OAuth, consulte os recursos a seguir:

Criando um cliente OAuth para o suplemento Qlik para o Microsoft Excel

Uma configuração do cliente OAuth for necessária para instalar o suplemento Qlik para Microsoft Excel. O suplemento é usado por desenvolvedores de relatórios para preparar modelos de relatório que controlam a saída de relatórios tabulares do aplicativo Qlik Sense.

Para que o OAuth funcione no suplemento, o cliente OAuth precisa ser configurado com a configuração exata mostrada abaixo.

Faça o seguinte:

  1. No centro de atividades de Administração, em Qlik Cloud, acesse OAuth.

  2. Clique em Criar novo.

  3. No menu suspenso Tipo de cliente, selecione Aplicativo de página única. Mais campos aparecerão.

  4. Insira um Nome. A Descrição é opcional.

  5. No mínimo, marque a caixa de seleção para incluir o escopo user_default. Você pode incluir outros escopos na configuração, mas sem o user_default, a instalação não funcionará.

    Consulte Escopos do OAuth disponíveis para obter uma descrição completa de cada escopo disponível.

  6. No campo Adicionar URLs de redirecionamento, insira a URL do seu locatário, seguida da string fixa: /office-add-ins/oAuthLoginSuccess.html

    O resultado deve ficar assim: https://YourServer/office-add-ins/oAuthLoginSuccess.html

  7. Clique em Adicionar.

  8. No campo Adicionar origens permitidas, insira o URL do seu locatário e clique em Adicionar.

  9. Clique em Criar.

  10. A janela Copiar sua ID de cliente é exibida. Você pode optar por copiar o ID do cliente para a área de transferência ou clicar em Concluído para fechar a janela.

Depois de criar o cliente OAuth, obtenha o link para o arquivo XML de manifesto atualizado no centro de atividades de Administração. Vá para a página Configurações e navegue até Compartilhamento e relatóriosSuplemento do Excel no centro de atividades de Administração. Use este link para implementar e instalar o suplemento.

Para obter mais informações sobre como gerar o arquivo de manifesto, bem como implementar e instalar um suplemento, consulte:

Criando um cliente OAuth para incorporações anônimas do conteúdo do aplicativo

Para incorporar conteúdo do aplicativo para acesso anônimo usando qlik-embed, você precisa criar um cliente OAuth com um tipo projetado especificamente para esse caso de uso.

Nota informativa Essa funcionalidade está disponível somente com uma assinatura do Qlik Anonymous Access. Para obter mais informações, consulte Assinaturas do Qlik Anonymous Access.

Faça o seguinte:

  1. No Administração de Administration, vá para a seção OAuth.

  2. Clique em Criar novo.

  3. No menu suspenso Tipo de cliente, selecione Incorporação anônima.

  4. Insira um Nome e, opcionalmente, uma Descrição para o cliente OAuth.

  5. Em Origens permitidas, insira cada origem que você precisa autorizar. Esses são os domínios que acessarão o locatário do Qlik Cloud para recuperar as informações para a análise incorporada.

    Clique em Adicionar depois de inserir cada URL.

  6. Quando terminar, clique em Criar.

  7. Clique em Copiar para a área de transferência para salvar o ID do cliente para uso posterior. Ele será necessário quando o conteúdo do aplicativo for incorporado com qlik-embed.

  8. Clique em Concluído.

Editando clientes OAuth

Você pode renomear um cliente OAuth, atualizar a descrição ou gerenciar as URLs de redirecionamento.

Faça o seguinte:

  1. No centro de atividades de Administração, acesse OAuth.
  2. Localize o cliente OAuth que você deseja editar.
  3. Clique em Mais e selecione Editar.
  4. Modifique as opções do cliente OAuth conforme necessário.
  5. Clique em Salvar.

Excluindo clientes OAuth

Você pode excluir um cliente OAuth quando ele não for mais necessário ou para revogar o acesso.

Faça o seguinte:

  1. No centro de atividades de Administração, acesse OAuth.

  2. Selecione um ou mais clientes OAuth que você deseja remover e clique em Excluir.

  3. Confirme a exclusão.

Publicando clientes OAuth

Os clientes OAuth são inicialmente vinculados ao locatário que os criou. No entanto, você pode configurar um cliente OAuth para ser compartilhado entre vários locatários na mesma região. Isso permite que aplicativos de terceiros usem o mesmo ID de cliente em diferentes locatários do Qlik Cloud.

Os proprietários de aplicativos podem rotacionar segredos e atualizar a configuração sem interação de um administrador de locatários. Os administradores do locatário não precisam gerenciar credenciais nem estar cientes de nenhum detalhe de configuração do cliente publicado.

Para permitir que outros locatários se conectem a um cliente OAuth, você deve publicá-lo.

Faça o seguinte:

  1. No centro de atividades de Administração, acesse OAuth.
  2. Localize o cliente OAuth que você deseja publicar.
  3. Clique em Mais ao lado do cliente e selecione Publicar.
  4. Clique em Publicar para confirmar.

Depois que o cliente OAuth é publicado, ele é disponibilizado para uso externo por outros locatários. Quando um usuário visita um site externo que usa esse cliente OAuth, ele será solicitado a inserir o nome do host do locatário e as credenciais do usuário, a menos que já tenha uma sessão SaaS ativa.

O login inicial exigirá o consentimento de um administrador do locatário. Depois de aprovado, o cliente OAuth aparecerá no centro de atividades de Administração do locatário.

Métodos de consentimento

Por padrão, o Qlik Cloud solicita o consentimento dos usuários durante a autenticação. Para simplificar o processo, especialmente no caso de aplicativos confiáveis, você pode definir o método de consentimento como "Confiável", o que ignora a solicitação de consentimento.

Existem duas opções de consentimento:

  • Obrigatório: o consentimento do usuário é solicitado sempre que um novo escopo é solicitado pelo cliente OAuth. Esse método garante a aprovação explícita do usuário para cada nível de acesso.

  • Confiável: o usuário não é solicitado a dar seu consentimento. Essa opção está disponível apenas para clientes não publicados. Para clientes publicados, o método de consentimento é sempre Obrigatório para manter a segurança entre vários locatários.

Nota informativaPara clientes usados como máquina a máquina (M2M), o método de consentimento deve ser alterado para Confiável depois que o cliente for criado.

Alterando o método de consentimento

Para alterar o método de consentimento de um cliente OAuth, faça o seguinte:

  1. No centro de atividades de Administração, acesse OAuth.
  2. No cliente OAuth, clique em Mais e selecione Alterar método de consentimento.
  3. Selecione Necessário ou Confiável e clique em Alterar método de consentimento.

Como visualizar e copiar a configuração OAuth

Na seção OAuth do centro de atividades de Administração, selecione Exibir configuração do OAuth para exibir os detalhes de autenticação do seu locatário do Qlik Cloud. Isso mostrará um trecho de código com endpoints e configurações do OAuth, bem como um URL que você pode copiar para usar em aplicativos externos.

Você pode usar essa configuração para integrar o Qlik Cloud a aplicativos de terceiros, automatizar o acesso à API ou configurar a autenticação para análises incorporadas.

Gerenciando segredos do cliente

Se um segredo do cliente for comprometido ou sua política de segurança exigir atualizações periódicas, você poderá adicionar ou remover segredos. Para evitar tempo de inatividade, você pode adicionar vários segredos de cliente (máximo de 5), atualizar o aplicativo cliente e, em seguida, remover o segredo antigo.

Adicionando um segredo do cliente

Faça o seguinte:

  1. No centro de atividades de Administração, acesse OAuth.
  2. Localize o cliente OAuth.
  3. Clique em Mais e selecione Gerenciar segredos.
  4. Clique em Gerar um novo segredo do cliente.
  5. Copie o segredo e o ID do cliente e armazene-os com segurança.

    Nota informativaVocê não poderá acessar o segredo do cliente mais tarde.
  6. Clique em Fechar.

Removendo um segredo do cliente

Faça o seguinte:

  1. No centro de atividades de Administração, acesse OAuth.
  2. Localize o cliente OAuth.
  3. Clique em Mais e selecione Gerenciar segredos.
  4. Clique em Excluir ao lado do segredo do cliente.
  5. Clique em Fechar.

Criando aplicativos clientes OAuth para acessar o Qlik Cloud

Depois de registrar um cliente OAuth no Qlik Cloud, você pode usar o ID do cliente e o segredo do cliente associados em seu aplicativo cliente OAuth.

Para obter orientação passo a passo, consulte os tutoriais na seção Visão geral do OAuth no Portal do desenvolvedor Qlik. Esses tutoriais abordam como criar aplicativos clientes usando linguagens de programação populares.

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!