Pular para o conteúdo principal

Configurar aplicações SPA

A maioria das aplicações web da Lacuna Software são aplicações SPA que exigem uma configuração específica no GrantID para habilitar o gerenciamento de usuários, a saber:

Para configurar uma dessas aplicações, entre no portal do Console do GrantID e siga as instruções abaixo.

observação

Consulte a documentação de configuração de OIDC de cada aplicação para verificar se há alguma particularidade no uso do GrantID com ela, por exemplo os tipos de nome de usuário suportados ao criar a assinatura.

Crie uma assinatura​

dica

Você pode pular este passo se já tiver uma assinatura criada.

Crie uma assinatura informando:

  • Name: o nome da assinatura.
  • Namespace: identificador único desta assinatura. Ele é usado para montar a URL da assinatura.

A URL da assinatura é sempre um subdomínio da URL do GrantID (AuthServer): https://<sub_namespace>.<auth_server_domain>

Adicione registros DNS apontando a URL da assinatura gerada para a sua instância do GrantID (AuthServer).

Para testar as configurações, acesse https://<subscription_url>/.well-known/openid-configuration e verifique se um JSON é exibido.

Crie um claim personalizado para o CPF​

dica

Você pode pular este passo se a sua aplicação não exigir a informação de CPF ou se o claim já tiver sido criado.

Na aba Scopes, clique em New Claim para criar um claim personalizado, informando:

  • Name (tipo): o nome do seu claim personalizado. Sugestão: cpf. Nas páginas de instalação, ele é chamado de configuração OIDC CpfClaim.
  • Display name: o nome de exibição do seu claim personalizado. Sugestão: CPF.
  • Validation Options: o tipo de validação usado quando o valor deste claim é informado por um usuário. Defina como Cpf.
  • Unique: você pode marcá-lo ou não como único, de acordo com a configuração e os requisitos da sua aplicação. Se ele não for marcado como único, recomendamos marcar as opções Visible in profile page? e Display in register page?.

Crie um escopo de identificação personalizado​

dica

Você pode pular este passo se pulou o passo anterior.

Na aba Scopes, clique em New Identification Scope para criar um escopo de identificação personalizado, para que os tokens de identidade contenham a informação do claim personalizado criado, informando:

  • Name: o nome do escopo de identificação. Sugestão: <sub-namespace>-cpf. Este e os demais escopos de identificação necessários devem ser definidos na configuração OIDC Custom Scopes, como descrito nas páginas de instalação.
  • Display name: o nome de exibição do escopo. Sugestão: CPF.
  • User Information: marque a caixa de seleção correspondente ao claim criado no passo anterior.

Crie uma conexão de API​

Na aba Scopes, clique em New API Connection para criar uma conexão de API para a aplicação, informando:

  • Name: o nome da conexão de API. Sugestão: <my-app-name>-api. Nas páginas de instalação, ele é chamado de OIDC ApiName.
  • Display name: o nome de exibição da sua API (mostrado nas telas de consentimento, se estiverem habilitadas). Sugestão: <My App Name> API.
  • User Informations (claims): marque todos

Crie as aplicações​

Cada aplicação SPA exige duas aplicações registradas no GrantID: uma para o login no frontend e outra para acessar as APIs de gerenciamento de usuários do GrantID (backend).

Aplicação frontend​

Na aba Applications, clique em New Application e informe:

  • Name: nome desta aplicação no GrantID. Sugestão: <My App Name>
  • App-id: um nome único, em todo o GrantID, para a aplicação. Nas páginas de instalação, ele é chamado de OIDC ClientAppId.
  • Type: selecione Implicit flow.

Nos detalhes da aplicação, escolha a aba Settings e defina:

  • Application URL: a URL da sua aplicação. Exemplo: https://myappname.com
  • Marque a caixa de seleção Allow Access tokens via browser?.
  • Desmarque as seguintes caixas de seleção (se estiverem marcadas): Require consent?, Front-channel logout session required? e Back-channel logout session required?
  • Allowed URLs:
    • Redirect: você deve adicionar 4 URLs de redirecionamento baseadas na URL da sua aplicação:
      • <applicationURL> sem barra no final.
      • <applicationURL>/silent-refresh.html
      • <applicationURL>/private/profile/refresh
      • <applicationURL>/private
    • CORS origins: <applicationURL> sem barra no final.
    • Post Logout: <applicationURL> sem barra no final.
  • Allowed Identification Scopes: marque todos
  • Allowed API scopes: marque a caixa de seleção correspondente à conexão de API criada.
  • Required Claims: marque a caixa de seleção correspondente ao claim personalizado criado (CPF), se todos os usuários da aplicação precisarem ter essa informação.
  • Login Options: você pode habilitar o login com certificado digital marcando a caixa de seleção correspondente.
  • Recomendamos marcar a opção Verify user's email, para que apenas usuários com e-mail verificado possam concluir o processo de login.
aviso

Não se esqueça de salvar as alterações clicando no botão ao final da página.

Aplicação backend​

Na aba Applications, clique novamente em New Application e informe:

  • Name: nome desta aplicação no GrantID. Sugestão: <My App Name> Backend
  • App-id: um nome único, em todo o GrantID, para a aplicação. Nas páginas de instalação, ele é chamado de configuração OIDC AppId.
  • Type: selecione Client credentials.

Nos detalhes da aplicação, escolha a aba Settings e defina:

  • Allowed API scopes: marque a caixa de seleção Manage subscription's users.
aviso

Não se esqueça de salvar as alterações clicando no botão ao final da página.

Depois de salvar, volte à aba Basic Details e, na seção App Secret, clique em Generate e depois em Generate Secret. Nas páginas de instalação, esse secret é chamado de configuração OIDC AppSecret.

Ver em Markdown