Guia de Configuração do Google OAuth¶
Finalidade do Documento¶
Descrever as etapas de configuração necessárias para configurar o Vinyl para usar o Google como um provedor de segurança externo OIDC/OAuth 2.0 para autenticação do usuário.
Introdução¶
A configuração da autenticação externa requer configuração no provedor de identidade e na instância do Vinyl. Em ambos os casos, são necessários direitos administrativos.
Importante
Os valores de exemplo fornecidos neste guia são representativos, mas fictícios, e não devem ser usados em configurações do mundo real. Nós estamos usando https://example.zudy.com/Vinyl
como a raiz da instância nesta documentação.
Passos em Vinyl¶
Crie um Provedor de Segurança¶
- Faça login no Vinyl como administrador
- Navegue até IDE > Provedores de segurança
- Na seção Autenticação de usuário, clique em + Autenticação de usuário para adicionar um novo provedor de segurança
-
Preencha os seguintes valores:
- Nome: nome breve e descritivo do Provedor de Segurança. O ideal é evitar espaços. Isso se torna parte do caminho de autenticação do Vinyl.
- Tipo: Autenticação Externa > OAuth
- Prioridade: aceite a sugestão padrão ou atualize conforme sua preferência
-
Ativado: Verifique
- Tipo de autenticação: OAuth
- Concessão OAuth: Código de autorização
-
Autenticação de cliente OAuth: Básica
- Autenticação de recurso OAuth: Portador
- Proprietário do Token: Usuário
- Redirecionar no Desafio: Verificar
- Mostrar no formulário de login: Verifique
- Provisionamento de usuários: Verifique
- Reivindicações da Loja: Verifique. Isso é importante na configuração inicial e na solução de problemas, mas pode ser removido posteriormente, se desejado.
-
Clique em Salvar
Etapas no Google Workspace/Google Cloud Platform¶
Nota
Observe que você deve ter acesso de administrador à conta do Google Workspace da sua organização para criar um novo projeto ou permissões para criar e configurar credenciais do OAuth 2.0 para um projeto existente.
Crie um Novo Projeto¶
- Vá para a página Gerenciar recursos no Console do Google Cloud
- Faça login como administrador, se solicitado
- Na lista suspensa Selecionar organização na parte superior da página, selecione a organização na qual deseja criar um projeto. Se você for um usuário de teste gratuito, pule esta etapa, pois isso não se aplica.
- Clique em Criar Projeto
- Na janela Novo Projeto exibida, insira um nome do projeto. O nome de um projeto pode conter apenas letras, números, aspas simples, hífens, espaços ou pontos de exclamação e deve ter entre 4 e 30 caracteres. Deve ser um nome descritivo e exclusivo que identifique o projeto. Por exemplo: autenticação de Vinyl
- Selecione a organização principal na caixa Organização
- Opcionalmente, selecione uma pasta na caixa Local. Este recurso será o pai hierárquico do novo projeto.
- Clique em Criar
Para referência adicional sobre a criação de projetos, consulte a documentação do Google disponível em: https://cloud.google.com/resource-manager/docs/creating-managing-projects
Configurar a Tela de Consentimento do OAuth e Criar Credenciais de API¶
- Depois de criar o projeto, abra a página Credenciais no Google API Console. Página inicial > APIs e serviços > Credenciais
- Verifique o nome do projeto listado no canto superior esquerdo próximo ao logotipo para ter certeza de que está usando o projeto correto. Clique na seta suspensa para alternar projetos, se necessário.
- Clique em Criar credenciais → ID do cliente OAuth
-
A menos que você tenha configurado anteriormente uma tela de consentimento, você será direcionado a configurar sua tela de consentimento primeiro. A tela de consentimento será apresentada aos usuários finais quando eles acessarem o aplicativo (Vinyl) pela primeira vez usando suas credenciais do Google e solicitará que eles aceitem esse acesso à sua conta do Google. Se você já configurou uma tela de consentimento e escopos, vá para a etapa 29.
Exemplo de configuração da tela de consentimento
-
Clique em Configurar tela de consentimento
- Selecione Interno para Tipo de usuário e clique em Criar
- Preencha a seção Informações do aplicativo da seguinte forma:
- Nome do aplicativo: Insira o nome do aplicativo personalizado. Por exemplo: Instância de Vinyl. Normalmente você especificaria Dev, QA ou Prod, ou a finalidade da instância, se diferente.
- email de suporte ao usuário: preencha com um endereço email do administrador ou endereço de email do grupo
- Logotipo do aplicativo: opcionalmente, carregue um arquivo para usar como logotipo
- Preencha a seção Domínio do aplicativo com o URL da página inicial do aplicativo e um link para a política de privacidade e/ou termos de serviço da sua organização
- Em Domínios Autorizados, adicione o nome de domínio do qual a instância do Vinyl faz parte. Este pode ser o seu próprio domínio ou zudy. hospedar. Adicione vários domínios, se aplicável.
- Insira um endereço email de suporte para Informações de contato do desenvolvedor
- Clique em Salvar e Continuar
-
Na tela Escopos identifique as informações que estão sendo solicitadas sobre o usuário, pelo Vinyl. Clique em Adicionar escopos e selecione os três escopos mostrados na captura de tela a seguir.
Exemplo de configuração de escopos
-
Clique em Atualizar
Nota
Observe que estes são considerados "escopos não sensíveis". Nenhum outro escopo é exigido pelo Vinyl.
-
Clique em Salvar e Continuar
- Revise a página de resumo e clique em Voltar ao Painel
- Clique em Criar credenciais → ID do cliente OAuth
- Em Tipo de Aplicativo, escolha Aplicativo Web
- Em Nome, digite um rótulo descritivo que identifique o aplicativo. Este valor não é usado em nenhum outro lugar. Por exemplo: Instância de Vinyl. Normalmente você especificaria Dev, QA ou Prod, ou a finalidade da instância, se diferente.
- Em Origens JavaScript autorizadas, forneça o URI que representa o FQDN (nome de domínio totalmente qualificado) da sua instância do Vinyl. Observe que isso não deve incluir nenhuma informação de caminho. Por exemplo:
https://example.zudy.com
-
A tela preenchida deverá ser semelhante a este exemplo:
Exemplo de configuração de ID do cliente OAuth
-
Um pop-up deverá aparecer contendo suas credenciais OAuth. Essas credenciais devem ser mantidas em segredo e terão formato semelhante aos exemplos fictícios abaixo. Deixe este pop-up aberto pronto para as próximas etapas de configuração.
- Exemplos:
- Seu ID de cliente:
825669012735-hd1oct8l1yeysoslrvtmf6b4gqkl12om.apps.googleusercontent.com
- Seu Segredo do Cliente:
CRZEXT-zd_Qa_MCZ3rArp5hkRD3B16PPDLN
-
Isso conclui as etapas no Google Workspace/Google Cloud Platform.
Passos em Vinyl¶
Configurar Propriedades e Tipos de Declaração do Provedor de Segurança¶
- Retorne à página de configuração do Provedor de Serviços criada nas etapas 1 a 5.
-
Na seção Endpoints, clique em + Endpoint e Salvar as três propriedades a seguir conforme especificado abaixo:
- AuthorizationEndpoint: use o seguinte valor:
https://accounts.google.com/o/oauth2/v2/auth
- Observação: este não é um exemplo, é universal para a configuração do Google OAuth v2
- TokenEndpoint: use o seguinte valor:
https://www.googleapis.com/oauth2/v4/token
- UserInfoEndpoint: use o seguinte valor:
https://openidconnect.googleapis.com/v1/userinfo
- AuthorizationEndpoint: use o seguinte valor:
-
Na seção Credenciais, clique em + Credencial e Salvar as seguintes propriedades conforme especificado abaixo:
- Tipo: Cliente
- Nome de usuário: use o ID do cliente da seção anterior, etapa 32
- Senha: use o segredo do cliente da seção anterior, etapa 32
-
Na seção Propriedades, clique em + Propriedade e Salvar as seguintes propriedades:
- Escopos: use os 3 valores de escopo mostrados abaixo. Separe cada string com um espaço:
- código aberto
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/userinfo.profile
- Escopos: use os 3 valores de escopo mostrados abaixo. Separe cada string com um espaço:
-
Na seção Reivindicações, clique em + Reivindicação e salve os seguintes tipos de reivindicação:
- Identificador: email (minúsculas, sem espaços)
- Uso: Nome
- Nome: rótulo descritivo. Por exemplo: Nome
-
Clique em Salvar
-
Clique em Criar
- Identificador: email
- Uso: Endereço de email
- Nome: rótulo descritivo. Por exemplo: Endereço de Email
-
Clique em Salvar
Nota
O tipo de declaração de uso de endereço de email é opcional, mas garantirá que o atributo Endereço de Email do usuário do Vinyl será preenchido quando o usuário entrar no Vinyl usando o provedor de autenticação externo.
-
Isso conclui as etapas de configuração no Vinyl
Teste¶
Neste ponto, a configuração está pronta para teste. Recomenda-se que todos os testes sejam realizados em novas janelas anônimas ou privadas do navegador, ou em um navegador alternativo.
Etapas de Teste¶
-
Navegue até a página de login da instância do Vinyl e:
- Confirme se o novo método de autenticação é exibido adequadamente na página de login.
- Tente fazer login com o novo método de autenticação e revise o resultado. (Isso deve ser feito com um login separado daquele usado para administrar o Vinyl.)
-
Se forem relatados erros, revise toda a configuração e confirme se os elementos necessários para correspondência estão corretos – particularmente confirmando que o segredo do cliente e o ID do cliente foram copiados do Google para o Vinyl corretamente.
- Se todas as configurações estiverem presentes e parecerem corretas, mas a autenticação externa ainda não estiver funcionando, entre em contato com Suporte de Vinyl.