Ir para conteúdo principal Pular para conteúdo complementar

Criando e gerenciando clientes OAuth

O OAuth é um protocolo de segurança padrão 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 pode obter um código de autorização e trocá-lo por um token de acesso que pode ser usado para acessar conteúdo do Qlik Cloud por meio de APIs.

Clientes públicos e confidenciais

O OAuth tem dois tipos de cliente - clientes públicos e clientes confidenciais - para proteger a autorização entre um aplicativo (o cliente) e o servidor de autorização (Qlik Cloud).

Clientes públicos

Clientes públicos são aplicativos que não usam o segredo do cliente porque não podem manter a confidencialidade das credenciais necessárias. Os clientes públicos no Qlik Cloud geralmente são aplicativos de front-end, como aplicativos de página única com análises incorporadas ou uma extensão de visualização personalizada no Qlik Sense que exigem informações sobre o usuário final para dar suporte ao ciclo de vida do aplicativo.

Consulte : RFC 6749 Seção 2.1: Tipos de cliente OAuth 2.0.

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 tipos de concessão específicos.

Clientes confidenciais

Um cliente confidencial é um aplicativo que mantém um ID de cliente e um segredo de cliente de maneira segura, sem expô-los a terceiros não autorizados. Clientes confidenciais podem ter acesso a recursos protegidos porque estão de posse do segredo do cliente. Um exemplo de cliente confidencial é um aplicativo da Web com um back-end seguro interagindo com APIs do Qlik Cloud para orquestrar tarefas de atualização de dados ou gerenciar o acesso do usuário ao conteúdo.

Tipos de concessão de autorização

O Qlik oferece suporte a dois tipos de concessão de autorização, ou fluxos: Fluxo de código de autorização e Fluxo de código de autorização com Chave de prova para troca de código (PKCE). Esses fluxos são muito semelhantes, mas suportam diferentes casos de uso.

Fluxo de código de autorização

Aplicativos da Web tradicionais são aplicativos do lado do servidor em que o código fonte não é exposto publicamente, portanto, eles podem usar o fluxo do código de autorização, que troca um código de autorização por um token. Aplicativos da Web que usam esse fluxo devem ser do lado do servidor porque o segredo do cliente do aplicativo é passado para o servidor de autorização durante a troca por um token.

Nota informativaCompartilhar o segredo do cliente em público põe em risco a segurança do seu locatário. Sempre mantenha o segredo do cliente para seu aplicativo seguro e privado.

Consulte: Fluxo de código de autorização para obter mais detalhes.

Fluxo de código de autorização com chave de prova para troca de código (PKCE)

Os aplicativos nativos e de página única não podem armazenar um segredo do cliente porque seu código fonte pode ser acessado por meio da descompilação do aplicativo ou da exibição da fonte do aplicativo por meio de um navegador, respectivamente. O PKCE adiciona uma camada adicional de proteção em clientes públicos, exigindo o uso de um verificador de código para obter um token de acesso.

Consulte: Fluxo de código de autorização com chave de prova para troca de código (PKCE) para obter mais detalhes.

Criando um cliente OAuth

Os clientes OAuth são administrados por administradores de locatários na página OAuth do Management Console.

Com um cliente OAuth, você pode integrar seu aplicativo cliente com o Qlik Cloud.

Faça o seguinte:

  1. No Management Console, acesse OAuth.

  2. Clique em Criar novo.

  3. Selecione um tipo de cliente.

    Use Web para clientes confidenciais e Aplicativo de página única ou Nativo para clientes públicos.

    Com Web, você pode selecionar a opção Permitir Máquina para Máquina (M2M) para acesso ao sistema sem interação do usuário.

  4. No diálogo, atribua um nome ao cliente OAuth.

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

  6. Insira a URL de redirecionamento para o aplicativo cliente 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ão 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://.

    Clique em Adicionar para adicionar a URL de redirecionamento à lista de permissões.

    Nota informativaVocê pode adicionar mais de uma URL.
  7. Aplicativo de página única apenas: Adicione uma ou mais origens permitidas. O acesso ao aplicativo só será concedido se a URL estiver na lista de origens permitidas.

  8. Clique em Criar.

  9. 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 em um local seguro. Clique em Concluído.

    Nota informativaOs clientes públicos não terão nenhum segredo do cliente.
Nota informativaPara obter uma visão geral dos diferentes casos de uso, consulte Resumo de casos de uso e tipos de OAuth a serem usados.

Editando um cliente OAuth

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

Faça o seguinte:

  1. No Management Console, acesse OAuth.
  2. Selecione o cliente OAuth que você deseja editar. Clique em ... e selecione Editar.
  3. No diálogo, altere as opções do cliente OAuth conforme necessário.
  4. Clique em Salvar.

Publicando um cliente OAuth

Os clientes OAuth criados são automaticamente vinculados ao locatário que o criou. Você pode configurar um cliente OAuth para ser compartilhado e disponibilizado para todos os outros locatários em uma região. Aplicativos de terceiros que se conectam ao Qlik Cloud podem ter o mesmo ID de cliente para todos os locatários do Qlik Cloud. O proprietário do aplicativo pode alternar segredos e atualizar a configuração sem a interação de um administrador de locatários. Os administradores de locatários não precisarão gerenciar credenciais ou conhecer detalhes de configuração.

Para permitir que outros locatários se conectem a um cliente OAuth, este precisa ser publicado.

Faça o seguinte:

  1. No Management Console, acesse OAuth.
  2. Selecione o cliente OAuth que você deseja publicar. Clique em ... e selecione Publicar.
  3. Clique em Publicar.

Quando um usuário navega para um site externo que usa o Qlik OAuth, ele é solicitado a fornecer o nome de host de locatário e, posteriormente, também as credenciais de usuário, a menos que ele já tenha um sessão ativa do SaaS. O primeiro login com um cliente OAuth externo requer o consentimento de um administrador de locatário. Quando aprovado, o novo cliente OAuth é mostrado no Management Console.

Método de consentimento

Existem duas opções de consentimento: Obrigatório e Confiável. Com Obrigatório, a autorização usando o cliente OAuth solicitará o consentimento sempre que um novo escopo for solicitado para o usuário. Com .Confiável, o usuário não precisa dar seu consentimento. Você só pode usar Confiável para clientes que não são publicados. Para clientes publicados, o método de consentimento é sempre Obrigatório.

Nota informativaPara clientes usados como M2M, o método de consentimento deve ser definido como Confiável após a criação do cliente.

Como visualizar e copiar a configuração OAuth

Na seção OAuth do Management Console, selecione Exibir configuração do OAuth para exibir a configuração como um trecho de código e uma URL a ser copiada.

Excluindo um cliente 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 Management Console, acesse OAuth.

  2. Selecione o cliente OAuth que você deseja remover e clique em Excluir.

    Nota informativaVocê pode remover mais de um cliente OAuth por vez.
  3. Confirme que você deseja excluir o cliente OAuth.

Gerenciando segredos do cliente

Pode ser necessário adicionar ou remover um segredo do cliente se, por exemplo, um segredo do cliente for comprometido ou sua política de segurança exigir que você atualize periodicamente o segredo do cliente. Você também pode adicionar vários segredos do cliente para evitar tempo de inatividade no aplicativo. Por exemplo, você pode criar um segundo segredo, implantar o novo segredo no seu aplicativo cliente e, em seguida, excluir o segredo antigo.

Faça o seguinte:

  1. No Management Console, acesse OAuth.
  2. Selecione o cliente OAuth que você deseja gerenciar. Clique em ... e selecione Gerenciar segredos.
  3. No diálogo, siga um destes procedimentos:
    • Para adicionar um novo segredo do cliente, clique em Gerar um novo segredo do cliente.
    • Para remover um segredo de cliente, clique em Excluir ao lado do segredo do cliente.
  4. Clique em Fechar.

Criar um aplicativo cliente 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 próprio aplicativo cliente OAuth. Tutoriais estão disponíveis na seção Bibliotecas OAuth do portal do Developer para construir aplicativos cliente usando algumas das linguagens de codificação mais 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!