Tutorial: configurar o Azure Active Directory B2C com o Datawiza para fornecer acesso híbrido seguro
Neste tutorial, saiba como integrar o Azure AD B2C (Azure Active Directory B2C) ao DAP (Datawiza Access Proxy), o que habilita o SSO (logon único) e o controle de acesso granular, ajudando o Azure AD B2C a proteger aplicativos herdados locais. Com esta solução, as empresas podem fazer a transição do legado para o Azure AD B2C sem reescrever os aplicativos.
Pré-requisitos
Para começar, você precisará de:
- Uma assinatura do Microsoft Entra
- Se não tiver, você pode obter uma conta gratuita do Azure
- Um locatário do Azure AD B2C vinculado à sua assinatura do Azure
- O Docker, uma plataforma aberta para desenvolver, enviar e executar aplicativos, é necessário para executar o DAB
- Seus aplicativos podem ser executados em plataformas, como máquina virtual e computador bare-metal
- Um aplicativo local para fazer a transição de um sistema de identidade herdado, para o Azure AD B2C
- Neste tutorial, o DAB é implantado no mesmo servidor do aplicativo
- O aplicativo é executado no localhost: 3001 e o DAP transmite o tráfego por proxy para aplicativos via localhost: 9772
- O tráfego do aplicativo chega ao DAB primeiro e, em seguida, é transmitido por proxy para o aplicativo
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 usuário
- Os usuários autenticados acessam aplicativos locais usando uma conta local armazenada no diretório do Azure AD B2C
- DAP (Datawiza Access Proxy): o serviço que passa a identidade para aplicativos por meio de cabeçalhos HTTP
- DCMC (Console de Gerenciamento de Nuvem do Datawiza): um console de gerenciamento para DAB. A interface do usuário do DCMC e as APIs RESTful ajudam a gerenciar as configurações do DAB e as políticas de controle de acesso
O diagrama de arquitetura a seguir mostra a implementação.
- O usuário solicita acesso a um aplicativo local. Os proxies do DAB representam a solicitação para o aplicativo.
- O DAP verifica o estado da autenticação do usuário. Sem nenhum token de sessão ou um token inválido, o usuário vai para o Azure AD B2C para autenticação.
- O Azure AD B2C envia a solicitação do usuário para o ponto de extremidade especificado durante o registro do DAP no locatário do Azure AD B2C.
- O DAP avalia as políticas de acesso e calcula os valores de atributos nos cabeçalhos HTTP encaminhados para o aplicativo. O DAP pode chamar o IdP (provedor de identidade) para recuperar informações para definir os valores de cabeçalho. O DAP define os valores do cabeçalho e envia a solicitação para o aplicativo.
- O usuário é autenticado com acesso ao aplicativo.
Integração com o Datawiza
Para integrar seu aplicativo local herdado com o Azure AD B2C, entre em contato com a Datawiza.
Configurar o seu locatário do Azure AD B2C
Acesse o docs.datawiza.com para:
Saiba como registrar seu aplicativo Web em um locatário do Azure AD B2C e configurar um fluxo de usuário de inscrição e entrada. Para obter mais informações, consulte Azure AD B2C.
Configure um fluxo de usuário no portal do Azure.
Observação
Ao configurar o DAB no DCM, você precisa do nome do locatário, do nome do fluxo do usuário, da ID do cliente e do segredo do cliente posteriormente.
Criar um aplicativo no DCMC
No DCMC, crie um aplicativo e gere um par de chaves de
PROVISIONING_KEY
ePROVISIONING_SECRET
para esse aplicativo no DCMC. Consulte, Console de Gerenciamento de Nuvem do Datawiza.Configure o IdP com Azure AD B2C. Consulte, Parte I: configuração do Azure AD B2C.
Executar o DAB com um aplicativo baseado em cabeçalho
Você pode usar o Docker ou o Kubernetes para executar o DAP. Use a imagem do Docker para que os usuários criem um aplicativo de exemplo baseado em cabeçalho.
Saiba mais: para configurar a integração do DAP e do SSO, confira Implantar o Datawiza Access Proxy ao seu aplicativo
Uma imagem docker-compose.yml file
do Docker de exemplo é fornecida. Entre no registro de contêiner para baixar as imagens do DAP e do aplicativo baseado em cabeçalho.
Implantar o proxy de acesso ao Datawiza com seu aplicativo.
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"
O aplicativo baseado em cabeçalho tem o SSO habilitado com Azure AD B2C.
Abra um navegador e insira
http://localhost:9772/
.Uma página de entrada do Azure AD B2C é exibida.
Passar atributos de usuário para o aplicativo baseado em cabeçalho
O DAB obtém atributos de usuário do IdP e os passa para o aplicativo com cabeçalho ou cookie. Depois de configurar atributos de usuário, o sinal de verificação verde será exibido para atributos de usuário.
Saiba mais sobre: Passar Atributos de Usuário, como endereço de email, nome e sobrenome, para o aplicativo baseado em cabeçalho.
Testar o fluxo
- Navegue até a URL do aplicativo local.
- O DAP redireciona para a página que você configurou no seu fluxo de usuário.
- Na lista, escolha o IdP.
- Na solicitação, insira suas credenciais. Se necessário, inclua um token de autenticação multifator do Microsoft Entra.
- Você é redirecionado ao Azure AD B2C, que encaminha a solicitação do aplicativo para o URI de redirecionamento do DAP.
- O DAB avalia as políticas, calcula os cabeçalhos e envia o usuário para o aplicativo upstream.
- O aplicativo solicitado é exibido.