Como configurar um Guia do Provedor OAuth da Microsoft
Introdução
Este guia explicará como configurar um cliente no Microsoft Azure e usar as informações do Microsoft Azure para configurar um provedor OAuth no HelloCloud.
Registre um App HelloCloud na Microsoft
As etapas a seguir pressupõem que você esteja configurando um provedor para uma conta corporativa que será compartilhada entre vários usuários.
Ir para Registros de aplicativos
Acesse https://portal.azure.com/ e faça login
Na página inicial, você verá uma tela como a seguinte
Verifique se há um link para Registro de aplicativos na página inicial, deve ser algo como o seguinte
Caso contrário, vá para Mais serviços e procure o link Aplicativos empresariais
A página de registros de aplicativos do Azure se parece com a seguinte
Crie um novo registro de Aplicativo
Na página Registros de aplicativos clique no link "Novo registro"
Você deve então ver a página de criação de registro do aplicativo. Na página de registro, preencha o seguinte:
-
Adicione um nome para o registro como "HelloCloud"
-
Selecione um dos "Tipos de conta suportados" dependendo de suas necessidades
-
Nota Neste exemplo vamos usar "Single tenant", isso não significa que seja o único a ser usado para todos os cenários.
-
Você deve selecionar a opção apropriada para seu caso de uso
-
-
Defina um "URI de redirecionamento". Isso deve ser semelhante a: https://<nome>.hellocloud.com.br/index.php?entryPoint=setExternalOAuthToken
-
Nota O Azure permite apenas conexões https para hospedar que não sejam o localhost. (a interface azul irá alertá-lo sobre isso)
Após preencher os dados prossiga com o cadastro
Após o registo deverá ser redireccionado para a "visualização de detalhe" do registo.
Lá você encontrará Application (client) ID que é o Client Id que precisará ser configurado posteriormente no HelloCloud.
Criar o Segredo do Cliente
O próximo passo é gerar um "segredo do cliente" que será usado pelo HelloCloud para se comunicar com a Microsoft.
Na página principal do Registro do aplicativo, clique em "Adicionar um certificado ou segredo".
Isso deve levá-lo à página "Certificados e segredos"
Aqui você pode gerar um novo segredo clicando em "Novo segredo do cliente"
Isso deve gerar uma nova linha na tabela da página "Certificados e segredos"
Você deve copiar o "Valor" (clicando no ícone ao lado) para o seu novo segredo e armazená-lo em algum lugar seguro. Você não poderá acessar esse valor novamente na interface do Microsoft Azure. O segredo será exigido na documentação do HelloCloud.
Agora volte para a página principal de registro do aplicativo, clicando em "Visão geral" na barra lateral.
Defina os escopos autorizados
Nosso próximo passo é configurar os escopos que o HelloCloud poderá acessar.
De volta à página principal de registro do aplicativo
Clique nas permissões "Ver as permissões de API"
Isso deve levá-lo à página "Permissões da API"
Agora vamos adicionar os escopos que permitimos. Clique em "Adicionar uma permissão"
Isso deve abrir uma barra lateral
As permissões que queremos estão no Microsoft Graph. Então clique em "Microsoft Graph".
Depois de clicar, você deve ser perguntado sobre o tipo de permissão que deseja usar.
Vá em frente e clique em "Permissões delegadas"
Agora você deve ver uma nova seção "Solicitar permissões de API".
Na barra de pesquisa, digite offline_access, que deve mostrar a permissão offline_access. Selecione-o e clique em "Adicionar permissões"
Repita o processo para as seguintes permissões: IMAP.AccessAsUser.All, User.Read, Mail.Read, Mail.Send
Depois de adicionar todas as permissões acima, sua tabela de permissões deve ter a seguinte aparência:ncia, Clique no botão Conceder consentimento do administrador para:
Agora volte para a página principal de registro do aplicativo, clicando em "Visão geral" na barra lateral.
Defina a URI de retorno
Nosso próximo passo é definir as configurações na "Autenticação" como o URI de retorno e outros.
De volta à página principal de registro do aplicativo
Click the "Redirect URIs" link
Isso deve ter levado você para a página "Autenticação".
Aqui você deve ver o URI de retorno que você configurou anteriormente
Depois disso, habilite a opção "Tokens de acesso (usados para fluxos implícitos)" na seção Concessão implícita e fluxos híbridos
Agora volte para a página principal de registro do aplicativo, clicando em "Visão geral" na barra lateral.
Resgate a informação do Ponto de extremidade
A última etapa que você precisa executar é recuperar os seguintes endpoints:
-
Ponto de extremidade de autorização OAuth 2.0
-
Ponto de extremidade de autorização OAuth 2.0 (v2)
De volta à página principal de registro do aplicativo
Clique no link "Pontos de extremidade".
Isso deve abrir uma barra lateral como a seguinte
Configure o Provedor da Microsoft no HelloCloud
Nas etapas a seguir, vamos configurar um provedor que pode ser usado por vários usuários no HelloCloud. Este cenário só faz sentido quando você registrou um aplicativo no azure para contas que compartilham o mesmo domínio, geralmente contas que não são contas do @outlook ou similares.
Como vamos configurar um provedor Group OAuth, as etapas a seguir devem ser executadas por um usuário administrador
Faça login no HelloCloud como usuário administrador e vá para o painel de administração
No painel de administração, procure por "External OAuth Providers"
Clique em "External OAuth Providers", que deve levá-lo à visualização da lista de módulos
Como administrador, você pode criar dois tipos de registros:
-
Pessoal
-
Estes são acessíveis apenas pelo usuário que os criou
-
Os registros pessoais devem ser usados ao configurar o acesso a contas pessoais em provedores existentes, sem um domínio personalizado. ou seja por exemplo, ao configurar o acesso às suas contas @gmail ou @outlook . Estes podem ter uma configuração de grupo compartilhada, pois para cada campo usado o "ID do cliente", "Segredo do cliente" e outros campos serão exclusivos por conta.
-
-
Grupo
-
Registros que serão usados por muitos usuários
-
Os registros de grupo devem ser usados por todos que têm contas que compartilham o mesmo domínio, como @example-inc.onmicrosoft.com. O "ID do cliente", "Segredo do cliente" e os demais campos serão os mesmos para todas as contas que usam este domínio.
-
Conforme mencionado anteriormente neste guia, vamos configurar um provedor que será usado por vários usuários, então vamos criar um registro de grupo.
Clique em "New Group OAuth Provider", que deve levá-lo para a visualização de criação.
Adicione um nome significativo ao seu provedor, pode ser apenas "Microsoft", o nome do seu domínio ou algo que o ajude a identificar e diferenciar o provedor de outros possíveis provedores.
Em seguida, selecione "Microsoft" no campo "Conector"
O tipo de conector Microsoft funciona da mesma forma que o tipo de conector "Genérico". A diferença é que ele possui vários padrões embutidos. Isso poupa algumas etapas de configuração e facilita o processo de configuração de um provedor OAuth externo.
Adicione os "Escopos" que você deseja acessar, os mesmos que você configurou na página Permissões de API do Azure.
-
offline_access
-
User.Read
Defina o "ID do cliente" que foi gerado no Azure
Defina o "Segredo do Cliente" que foi gerado no Azure
Defina o "URL do token de acesso" que você copiou dos pontos de extremidade do Azure (ponto de extremidade do token OAuth 2.0 (v2))
Seu registro agora deve se parecer com o seguinte:
Como muitos dos outros campos têm padrões e o conector da Microsoft adiciona outros padrões, esses são todos os campos que você precisa configurar.
Agora você pode salvar o registro
Configure o E-mail de Entrada do Usuário
Agora os usuários devem poder usar o Provedor OAuth que você criou para autenticação com a Microsoft.
Verifique o guia Como configurar e-mail de entrada com OAuth para ver as etapas que os usuários precisam seguir para configurar seus e-mails de entrada usando uma conexão OAuth.