Recomendações e melhores práticas para Azure Active Directory B2C

As melhores práticas e recomendações a seguir abrangem alguns dos principais aspectos da integração do Azure AD (Azure Active Directory) B2C em ambientes de aplicativos novos ou existentes.

Conceitos básicos

Melhor prática Descrição
Escolher fluxos de usuário para a maioria dos cenários O Identity Experience Framework do Azure AD B2C é a força principal do serviço. As políticas descrevem em detalhe experiências de identidade, tais como inscrição, entrada ou edição de perfil. Para ajudá-lo a configurar as tarefas de identidade mais comuns, o portal do Azure AD B2C inclui políticas predefinidas e configuráveis chamadas fluxos dos usuários. Com os fluxos de usuário, você pode criar ótimas experiências do usuário em questão de minutos, com apenas alguns cliques. Saiba quando usar fluxos de usuário versus políticas personalizadas.
Registros de aplicativo Todos os aplicativos (Web, nativos) e APIs que estão sendo protegidos devem ser registrados no Azure AD B2C. Se um aplicativo tiver uma versão Web e nativa do iOS e do Android, você poderá registrá-las como um aplicativo no Azure AD B2C com a mesma ID do cliente. Saiba como registrar aplicativos OIDC, SAML, Web e nativos. Saiba mais sobre os tipos de aplicativos que podem ser usados no Azure AD B2C.
Mover para cobrança de usuários ativos mensais O Azure AD B2C passou de autenticações ativas mensais para a cobrança de MAU (usuários ativos mensais). A maioria dos clientes considerará esse modelo econômico. Saiba mais sobre a cobrança de usuários ativos mensais.

Planejamento e design

Defina a arquitetura de aplicativos e serviços, os sistemas atuais de estoque e planeje sua migração para o Azure AD B2C.

Melhor prática Descrição
Arquitetar uma solução de ponta a ponta Inclua todas as dependências de seus aplicativos ao planejar uma integração do Azure AD B2C. Considere todos os serviços e os produtos que estão no ambiente no momento ou que talvez precisem ser adicionados à solução (por exemplo, Azure Functions, sistemas de CRM (gerenciamento de relacionamentos com o cliente), gateway de Gerenciamento de API do Azure e serviços de armazenamento). Leve em conta a segurança e a escalabilidade para todos os serviços.
Documentar as experiências de seus usuários Detalhe todos os percursos do usuário que seus clientes podem experimentar em seu aplicativo. Inclua todas as telas e todos os fluxos de ramificação que eles podem encontrar ao interagir com os aspectos de identidade e perfil do seu aplicativo. Inclua usabilidade, acessibilidade e localização em seu planejamento.
Escolher o protocolo de autenticação correto Para obter um detalhamento dos diferentes cenários de aplicativo e seus fluxos de autenticação recomendados, confira Cenários e fluxos de autenticação com suporte.
Fazer o piloto de uma experiência de usuário de ponta a ponta de POC (prova de conceito) Comece com nossos exemplos de código da Microsoft e exemplos da comunidade.
Criar um projeto de migração Um planejamento antecipado pode fazer com que a migração seja mais tranquila. Saiba mais sobre migração de usuários.
Usabilidade versus segurança Sua solução deve ter o equilíbrio certo entre a usabilidade do aplicativo e o nível aceitável de risco da sua organização.
Mover dependências locais para a nuvem Para ajudar a garantir uma solução resiliente, considere mover dependências de aplicativo existentes para a nuvem.
Migrar aplicativos existentes para b2clogin.com O preterimento de login.microsoftonline.com entrará em vigor para todos os locatários do Azure AD B2C em 4 de dezembro de 2020. Saiba mais.
Usar Proteção de Identidade e Acesso Condicional Use esses recursos para ter um controle significativamente maior sobre autenticações e políticas de acesso arriscadas. O Azure AD B2C Premium P2 é necessário. Saiba mais.
Tamanho do locatário É necessário planejar com o tamanho do locatário do Azure AD B2C em mente. Por padrão, o locatário do Azure AD B2C pode acomodar 1,25 milhão de objetos (contas de usuário e aplicativos). Você pode aumentar esse limite para 5,25 milhões de objetos adicionando um domínio personalizado ao seu locatário e verificando-o. Se você precisar de um locatário maior, entre em contato com o Suporte.
Usar Proteção de Identidade e Acesso Condicional Use essas funcionalidades para aumentar o controle sobre autenticações e políticas de acesso arriscadas. O Azure AD B2C Premium P2 é necessário. Saiba mais.

Implementação

Durante a fase de implementação, considere as recomendações a seguir.

Melhor prática Descrição
Editar políticas personalizadas com a extensão do Azure AD B2C para Visual Studio Code Baixe o Visual Studio Code e esta extensão do Visual Studio Code Marketplace criada pela comunidade. Embora não seja um produto oficial da Microsoft, a extensão do Azure AD B2C para Visual Studio Code inclui vários recursos que ajudam a facilitar o trabalho com políticas personalizadas.
Saber como solucionar problemas do Azure AD B2C Saiba como solucionar problemas de políticas personalizadas durante o desenvolvimento. Saiba o que é um fluxo de autenticação normal e use as ferramentas para descobrir erros e anomalias. Por exemplo, use o Application insights para examinar os logs de saída de percursos do usuário.
Aproveitar nossa biblioteca de padrões comprovados de política personalizada Encontre exemplos de vários percursos de usuário aprimorados do CIAM (Gerenciamento de Identidades e Acesso) de clientes do Azure AD B2C.

Testando

Teste e automatize sua implementação do Azure AD B2C.

Melhor prática Descrição
Considerar o tráfego global Use fontes de tráfego de um endereço global diferente para testar os requisitos de desempenho e localização. Verifique se todos os HTMLs, CSS e dependências podem atender às suas necessidades de desempenho.
Teste funcional e de interface do usuário Teste os fluxos de usuário de ponta a ponta. Adicione testes sintéticos a cada poucos minutos usando o Selenium, o teste da Web do VS etc.
Testes de penetração Antes de publicar sua solução, realize exercícios de teste de penetração para verificar se todos os componentes são seguros, incluindo quaisquer dependências de terceiros. Verifique se você protegeu suas APIs com tokens de acesso e usou o protocolo de autenticação certo para o cenário do aplicativo. Saiba mais sobre os Testes de penetração e as Regras de participação para testes de penetração unificados do Microsoft Cloud.
Testes A/B Disponibilize versões piloto de seus novos recursos para um pequeno conjunto aleatório de usuários antes de distribuir para toda a população. Com o JavaScript habilitado no Azure AD B2C, você pode fazer a integração com ferramentas de teste A/B, como Optimizely, Clarity e outras.
Teste de carga O Azure AD B2C pode escalar, mas seu aplicativo só poderá ser escalado se todas as dependências dele também puderem ser. Teste a carga de suas APIs e CDN. Saiba mais sobre Resiliência por meio das práticas recomendadas para desenvolvedores.
Limitação O Azure AD B2C limitará o tráfego se muitas solicitações forem enviadas da mesma fonte em um curto período. Use várias fontes de tráfego durante o teste de carga e manipule o código de erro AADB2C90229 normalmente em seus aplicativos.
Automação Use pipelines de CI/CD (integração contínua e entrega contínua) para automatizar testes e implantações, por exemplo, Azure DevOps.

Operations

Gerencie seu ambiente do Azure AD B2C.

Melhor prática Descrição
Criar vários ambientes Para operações mais fáceis e distribuição de implantação, crie ambientes separados para desenvolvimento, teste, pré-produção e produção. Crie locatários do Azure AD B2C para cada um.
Usar controle de versão para suas políticas personalizadas Considere o uso do GitHub, do Azure Repos ou de outro sistema de controle de versão baseado em nuvem para suas políticas personalizadas do Azure AD B2C.
Use a API do Microsoft Graph para automatizar o gerenciamento de seus locatários B2C APIs do Microsoft Graph:
Gerenciar o Identity Experience Framework (políticas personalizadas)
Chaves
Fluxos de Usuário
Integrar com o Azure DevOps Um pipeline de CI/CD facilita a movimentação de código entre diferentes ambientes e garante a preparação contínua para produção.
Implantar política personalizada O Azure AD B2C depende do cache para oferecer desempenho aos usuários finais. Ao implantar uma política personalizada usando qualquer método, espere um atraso de até 30 minutos para que os usuários vejam as alterações. Como resultado desse comportamento, considere as seguintes práticas ao implantar as políticas personalizadas:
– Se você estiver implantando em um ambiente de desenvolvimento, defina o atributo DeploymentMode como Development no elemento <TrustFrameworkPolicy> do arquivo de política personalizada.
– Implante os arquivos de política atualizados em um ambiente de produção quando o tráfego no aplicativo estiver baixo.
– Ao implantar em um ambiente de produção para atualizar os arquivos de políticas existentes, carregue os arquivos atualizados com novos nomes e, em seguida, atualize a referência do aplicativo com os novos nomes. Você poderá remover os arquivos de política antigos posteriormente.
– Você pode definir o DeploymentMode como Development em um ambiente de produção para ignorar o comportamento de cache. No entanto, esta prática não é recomendada. Se você Coletar logs do Azure AD B2C com o Application Insights, todas as declarações enviadas de e para provedores de identidade serão coletadas, o que é um risco de segurança e desempenho.
Implantar atualizações de registro de aplicativo Ao modificar o registro do aplicativo em seu locatário do Azure AD B2C, como ao atualizar o URI de redirecionamento do aplicativo, espere um atraso de até 2 horas (3600s) para que as alterações entrem em vigor no ambiente de produção. Recomendamos que você modifique o registro do aplicativo em seu ambiente de produção quando o tráfego em seu aplicativo estiver baixo.
Integrar com o Azure Monitor Eventos de logs de auditoria são retidos por sete dias. Faça a integração com o Azure Monitor a fim de reter os logs para uso em longo prazo ou integrá-lo com ferramentas de SIEM (gerenciamento de eventos e informações de segurança) de terceiros para obter informações sobre seu ambiente.
Configurar monitoramento e alertas ativos Rastreie o comportamento do usuário no Azure Active Directory B2C utilizando o Application Insights.

Atualizações de status e suporte

Fique por dentro do estado do serviço e encontre opções de suporte.

Melhor prática Descrição
Atualizações de serviço Fique por dentro das atualizações e dos comunicados do produto do Azure AD B2C.
Suporte da Microsoft Registre uma solicitação de suporte para problemas técnicos do Azure AD B2C. O suporte para gerenciamento de assinaturas e cobranças é fornecido sem custo adicional.
Status do Azure Exiba o status da integridade atual de todos os serviços do Azure.