Tutorial: Configurar o Azure Active Directory B2C com o Datawiza para fornecer acesso híbrido seguro
Neste tutorial, saiba como integrar o Azure Active Directory B2C (Azure AD B2C) com o Proxy de Acesso do Datawiza (DAP), que permite o início de sessão único (SSO) e o controlo de acesso granular, ajudando Azure AD B2C a proteger aplicações legadas no local. Com esta solução, as empresas podem transitar de legado para Azure AD B2C sem reescrever aplicações.
Pré-requisitos
Para começar, precisará de:
- Uma subscrição Microsoft Entra
- Se não tiver uma, pode obter uma conta gratuita do Azure
- Um inquilino Azure AD B2C associado à sua subscrição do Azure
- O Docker, uma plataforma aberta para desenvolver, enviar e executar aplicações, é necessário para executar o DAB
- As suas aplicações podem ser executadas em plataformas como máquina virtual e bare-metal
- Uma aplicação no local para fazer a transição de um sistema de identidade legado para Azure AD B2C
- Neste tutorial, o DAB é implementado no mesmo servidor que a aplicação
- A aplicação é executada no localhost: 3001 e o DAP proxies o tráfego para aplicações através do localhost: 9772
- O tráfego da aplicação atinge primeiro o DAB e, em seguida, é proxied para a aplicação
Descrição do cenário
A integração do Datawiza inclui os seguintes componentes:
-
Azure AD B2C: o servidor de autorização para verificar as credenciais do utilizador
- Os utilizadores autenticados acedem a aplicações no local com uma conta local armazenada no diretório Azure AD B2C
- Proxy de Acesso do Datawiza (DAP): o serviço que transmite a identidade às aplicações através de cabeçalhos HTTP
- Consola de Gestão da Cloud do Datawiza (DCMC): uma consola de gestão para DAB. A IU do DCMC e as APIs RESTful ajudam a gerir as configurações do DAB e as políticas de controlo de acesso
O diagrama de arquitetura seguinte mostra a implementação.
- O utilizador pede acesso a uma aplicação no local. O DAB proxies o pedido para a aplicação.
- O DAP verifica o estado de autenticação do utilizador. Sem token de sessão ou token inválido, o utilizador acede a Azure AD B2C para autenticação.
- Azure AD B2C envia o pedido do utilizador para o ponto final especificado durante o registo do DAP no inquilino do Azure AD B2C.
- O DAP avalia as políticas de acesso e calcula os valores dos atributos em cabeçalhos HTTP reencaminhados para a aplicação. O DAP pode chamar o fornecedor de identidade (IdP) para obter informações para definir os valores do cabeçalho. O DAP define os valores do cabeçalho e envia o pedido para a aplicação.
- O utilizador é autenticado com acesso à aplicação.
Integrar com o Datawiza
Para integrar a sua aplicação no local legada no Azure AD B2C, contacte o Datawiza.
Configurar o inquilino do Azure AD B2C
Aceda a docs.datawiza.com para:
Saiba como registar a sua aplicação Web num inquilino Azure AD B2C e configurar um fluxo de utilizador de inscrição e início de sessão. Para obter mais informações, consulte Azure AD B2C.
Configure um fluxo de utilizador no portal do Azure.
Nota
Quando configura o DAB no DCM, precisa do nome do inquilino, do nome do fluxo de utilizador, do ID de cliente e do segredo do cliente.
Criar uma aplicação no DCMC
No DCMC, crie uma aplicação e gere um par de chaves de
PROVISIONING_KEY
ePROVISIONING_SECRET
para esta aplicação. Veja Consola de Gestão da Cloud do Datawiza.Configure o IdP com Azure AD B2C. Veja a Parte I: Azure AD Configuração do B2C.
Executar o DAB com uma aplicação baseada em cabeçalhos
Pode utilizar o Docker ou o Kubernetes para executar o DAP. Utilize a imagem do Docker para os utilizadores criarem uma aplicação baseada em cabeçalhos de exemplo.
Saiba mais: Para configurar a integração do DAP e do SSO, veja Deploy Datawiza Access Proxy With Your App (Implementar o Proxy de Acesso do Datawiza com a sua aplicação)
É fornecida uma imagem docker-compose.yml file
do Docker de exemplo. Inicie sessão no registo de contentor para transferir imagens DAP e a aplicação baseada em cabeçalhos.
Implemente o Proxy de Acesso do Datawiza com a sua aplicação.
version: '3' services: datawiza-access-broker: image: registry.gitlab.com/datawiza/access-broker container_name: datawiza-access-broker restart: always ports: - "9772:9772" environment: PROVISIONING_KEY: ############################# PROVISIONING_SECRET: ############################# header-based-app: image: registry.gitlab.com/datawiza/header-based-app container_name: ab-demo-header-app restart: always environment: CONNECTOR: B2C ports: - "3001:3001"
A aplicação baseada em cabeçalhos tem o SSO ativado com Azure AD B2C.
Abra um browser e introduza
http://localhost:9772/
.É apresentada uma página de início de sessão do Azure AD B2C.
Transmitir atributos do utilizador para a aplicação baseada em cabeçalhos
O DAB obtém atributos de utilizador do IdP e transmite-os para a aplicação com cabeçalho ou cookie. Depois de configurar os atributos do utilizador, o sinal de verificação verde é apresentado para os atributos do utilizador.
Saiba mais: Transmitir Atributos de Utilizador , como endereço de e-mail, nome próprio e apelido, para a aplicação baseada em cabeçalhos.
Testar o fluxo
- Navegue para o URL da aplicação no local.
- O DAP redireciona para a página que configurou no fluxo de utilizador.
- Na lista, selecione o IdP.
- Na linha de comandos, introduza as suas credenciais. Se necessário, inclua um token de autenticação multifator Microsoft Entra.
- É redirecionado para Azure AD B2C, que reencaminha o pedido da aplicação para o URI de redirecionamento do DAP.
- O DAB avalia as políticas, calcula os cabeçalhos e envia o utilizador para a aplicação a montante.
- É apresentada a aplicação pedida.