O que é o Azure Active Directory B2C?What is Azure Active Directory B2C?

O Azure AD (Azure Active Directory) B2C é um serviço de gerenciamento de identidades entre empresa e consumidor.Azure Active Directory (Azure AD) B2C is a business-to-consumer identity management service. Esse serviço permite que você personalize e controle como os usuários interagem de maneira segura com aplicativos Web, da área de trabalho, móveis ou de página única.This service enables you to customize and control how users securely interact with your web, desktop, mobile, or single-page applications. Usando o Azure AD B2C, os usuários podem se inscrever, entrar, redefinir senhas e editar perfis.Using Azure AD B2C, users can sign up, sign in, reset passwords, and edit profiles. O Azure AD B2C implementa um formulário dos protocolos OpenID Connect e OAuth 2.0.Azure AD B2C implements a form of the OpenID Connect and OAuth 2.0 protocols. O aspecto importante na implementação desses protocolos são os tokens de segurança e suas declarações, que permitem fornecer acesso seguro aos recursos.The important key in the implementation of these protocols is the security tokens and their claims that enable you to provide secure access to resources.

Um percurso do usuário é uma solicitação que especifica uma política, que controla o comportamento de como o usuário e o aplicativo interagem com o Azure AD B2C.A user journey is a request that specifies a policy, which controls the behavior of how the user and your application interact with Azure AD B2C. Dois caminhos estão disponíveis para você definir os percursos do usuário no Azure AD B2C.Two paths are available to you for defining user journeys in Azure AD B2C.

Se você for desenvolvedor de aplicativos com ou sem conhecimento sobre identidades, poderá optar por definir fluxos dos usuários de identidade comuns usando o portal do Azure.If you're an application developer with or without identity expertise, you might choose to define common identity user flows using the Azure portal. Se você for um profissional que trabalha com identidades, integrador de sistemas, consultor ou membro de uma equipe que trabalha com identidades na empresa, estiver familiarizado com os fluxos do OpenID Connect e tiver noções básicas dos provedores de identidade e da autenticação baseada em declarações, poderá escolher políticas personalizadas baseadas em XML.If you are an identity professional, systems integrator, consultant, or on an in-house identity team, are comfortable with OpenID Connect flows, and understand identity providers and claims-based authentication, you might choose XML-based custom policies.

Antes de começar a definir um percurso do usuário, você precisa criar um locatário do Azure AD B2C e registrar seu aplicativo e a API no locatário.Before you start defining a user journey, you need to create an Azure AD B2C tenant and register your application and API in the tenant. Depois de concluir essas tarefas, comece a definir um percurso do usuário com fluxos dos usuários ou políticas personalizadas.After you’ve completed these tasks, you can get started defining a user journey with either user flows or custom policies. Opcionalmente, você também pode adicionar ou alterar os provedores de identidade ou personalizar a maneira como o usuário experimenta o percurso.You can also optionally, add or change identity providers, or customize the way the user experiences the journey.

Protocolos e tokensProtocols and tokens

O Azure AD B2C dá suporte aos protocolos OpenID Connect e OAuth 2.0 em percursos do usuário.Azure AD B2C supports the OpenID Connect and OAuth 2.0 protocols for user journeys. Na implementação Azure AD B2C do OpenID Connect, seu aplicativo inicia esse percurso emitindo solicitações de autenticação para o Azure AD B2C.In the Azure AD B2C implementation of OpenID Connect, your application starts the user journey by issuing authentication requests to Azure AD B2C.

O resultado de uma solicitação ao Azure AD B2C é um token de segurança, como um token de ID ou um token de acesso.The result of a request to Azure AD B2C is a security token, such as an ID token or access token. Esse token de segurança define a identidade do cliente.This security token defines the user's identity. Os tokens são recebidos de pontos de extremidade do Azure AD B2C, como um ponto de extremidade /token ou /authorize.Tokens are received from Azure AD B2C endpoints, such as a /token or /authorize endpoint. Nesses tokens, você pode acessar declarações que podem ser usadas para validar uma identidade e permitir acesso a recursos seguros.From these tokens, you can access claims that can be used to validate an identity and allow access to secure resources.

Locatários e aplicativosTenants and applications

No Azure AD B2C, um locatário representa a sua organização e é um diretório de usuários.In Azure AD B2C, a tenant represents your organization and is a directory of users. Cada locatário do Azure AD B2C é distinto e separado de outros locatários do Azure AD B2C.Each Azure AD B2C tenant is distinct and separate from other Azure AD B2C tenants. Talvez você já tenha um locatário do Azure Active Directory; o locatário do Azure AD B2C é um locatário diferente.You may already have an Azure Active Directory tenant, the Azure AD B2C tenant is a different tenant. Um locatário contém informações sobre os usuários que se inscreveram para usar o aplicativo.A tenant contains information about the users that have signed up to use your application. Por exemplo, senhas, dados de perfil e permissões.For example, passwords, profile data, and permissions. Para obter mais informações, confira Tutorial: Criar um locatário do Azure Active Directory B2C.For more information, see Tutorial: Create an Azure Active Directory B2C tenant.

Antes de configurar seu aplicativo para usar o Azure AD B2C, primeiro você precisa registrá-lo no locatário usando o portal do Azure.Before you configure your application to use Azure AD B2C, you first need to register it in the tenant using the Azure portal. O processo de registro do aplicativo coleta e atribui valores ao seu aplicativo.The registration process collects and assigns values to your application. Esses valores incluem uma ID do aplicativo que identifica exclusivamente o aplicativo e um URI de redirecionamento usado para direcionar as respostas novamente para o aplicativo.These values include an application ID that uniquely identifies the application and a redirect URI that's used to direct responses back to the application.

A interação de cada aplicativo segue um padrão semelhante de alto nível:The interaction of every application follows a similar high-level pattern:

  1. O aplicativo direciona o usuário a executar uma política.The application directs the user to run a policy.
  2. O usuário conclui a política de acordo com a definição de política.The user completes the policy according to the policy definition.
  3. O aplicativo recebe um token.The application receives a token.
  4. O aplicativo usa o token para tentar acessar um recurso.The application uses the token to try to access a resource.
  5. O servidor de recurso valida o token para verificar se o acesso pode ser permitido.The resource server validates the token to verify that access can be granted.
  6. O aplicativo atualiza o token periodicamente.The application periodically refreshes the token.

Para registrar um aplicativo Web, conclua as etapas do Tutorial: registrar um aplicativo para habilitar a inscrição e entrada usando o Azure AD B2C.To register a web application, complete the steps in Tutorial: Register an application to enable sign-up and sign-in using Azure AD B2C. Você também pode adicionar um aplicativo de API Web ao locatário do Azure Active Directory B2C ou adicionar um aplicativo cliente nativo ao locatário do Azure Active Directory B2C.You can also add a web API application to your Azure Active Directory B2C tenant or add a native client application to your Azure Active Directory B2C tenant.

Percursos do usuárioUser journeys

A política em um percurso do usuário pode ser definida como um fluxo dos usuários ou uma política personalizada.The policy in a user journey can be defined as a user flow or a custom policy. Os fluxos dos usuários predefinidos para as tarefas mais comuns de identidade, como inscrição, entrada e edição de perfil, estão disponíveis no portal do Azure.Predefined user flows for the most common identity tasks, such as sign-up, sign-in, and profile editing, are available in the Azure portal.

Os percursos do usuário permitem controlar comportamentos pela definição das seguintes configurações:User journeys allow you to control behaviors by configuring the following settings:

  • Contas sociais usadas pelo usuário para se inscrever no aplicativoSocial accounts that the user uses to sign up for the application
  • Dados coletados do usuário, como nome ou CEPData collected from the user such as first name or postal code
  • Autenticação multifatorMulti-factor authentication
  • Aparência das páginasLook and feel of pages
  • Informações retornadas para o aplicativoInformation returned to the application

As políticas personalizadas são arquivos de configuração que definem o comportamento do Identity Experience Framework no locatário do Azure AD B2C.Custom policies are configuration files that define the behavior of the Identity Experience Framework in your Azure AD B2C tenant. O Identity Experience Framework é a plataforma subjacente que estabelece a relação de confiança de várias partes e conclui as etapas em um percurso do usuário.The Identity Experience Framework is the underlying platform that establishes multi-party trust and completes the steps in a user journey.

Políticas personalizadas podem ser alteradas totalmente para concluir muitas tarefas.Custom policies can be changed to complete many tasks. Uma política personalizada é um ou vários arquivos formatados em XML que se referenciam entre si em uma cadeia hierárquica.A custom policy is one or several XML-formatted files that refer to each other in a hierarchical chain. Um pacote inicial está disponível para políticas personalizadas, a fim de habilitar tarefas comuns de identidade.A starter pack is available for custom policies to enable common identity tasks.

Políticas personalizadas ou fluxos dos usuários de diferentes tipos são usados no locatário do Azure AD B2C, conforme a necessidade, podendo ser reutilizados entre aplicativos.Custom policies or user flows of different types are used in your Azure AD B2C tenant as needed and can be reused across applications. Essa flexibilidade permite definir e modificar experiências de identidade do usuário com pouca ou nenhuma alteração no código.This flexibility enables you to define and modify user identity experiences with minimal or no changes to your code. As políticas podem ser executadas com a adição de um parâmetro de consulta especial às solicitações de autenticação HTTP.Policies are used by adding a special query parameter to HTTP authentication requests. Para criar sua própria política personalizada, confira Introdução às políticas personalizadas no Azure Active Directory B2C.To create your own custom policy, see Get started with custom policies in Azure Active Directory B2C.

Provedores de identidadeIdentity providers

Em seus aplicativos, você talvez queira permitir que os usuários entrem com diferentes provedores de identidade.In your applications, you may want to enable users to sign in with different identity providers. Um provedor de identidade cria, mantém e gerencia as informações de identidade, fornecendo serviços de autenticação para aplicativos.An identity provider creates, maintains, and manages identity information while providing authentication services to applications. Você pode adicionar provedores de identidade compatíveis com o Azure AD B2C usando o portal do Azure.You can add identity providers that are supported by Azure AD B2C using the Azure portal.

Normalmente, você usa apenas um provedor de identidade em seu aplicativo, mas tem a opção de adicionar mais.You typically use only one identity provider in your application, but you have the option to add more. Para configurar um provedor de identidade em seu locatário do Azure AD B2C, primeiro crie um aplicativo no site do desenvolvedor do provedor de identidade e, em seguida, registre o identificador de aplicativo ou o identificador de cliente e a senha ou o segredo do cliente por meio do aplicativo do provedor de identidade criado.To configure an identity provider in your Azure AD B2C tenant, you first create an application on the identity provider developer site, and then you record the application identifier or client identifier and the password or client secret from the identity provider application that you create. O identificador e a senha são então usados para configurar seu aplicativo.This identifier and password are then used to configure your application.

Os seguintes artigos descrevem as etapas usadas para adicionar alguns dos provedores de identidade comuns aos fluxos dos usuários:The following articles describe the steps to add some of the common identity providers to user flows:

Os seguintes artigos descrevem as etapas usadas para adicionar alguns dos provedores de identidade comuns às políticas personalizadas:The following articles describe the steps to add some of the common identity providers to custom policies:

Para obter mais informações, confira Tutorial: Adicionar provedores de identidade aos aplicativos no Azure Active Directory B2C.For more information, see Tutorial: Add identity providers to your applications in Azure Active Directory B2C.

Personalização de páginaPage customization

A maioria do conteúdo HTML e CSS apresentado aos clientes em um percurso do usuário é controlável.Most of the HTML and CSS content that's presented to customers in a user journey is controllable. Usando a personalização de página, você pode personalizar a aparência de qualquer política personalizada ou fluxo dos usuários.By using page customization, you can customize the look and feel of any custom policy or user flow. Você mantém a consistência visual e de marca entre seu aplicativo e o Azure AD B2C usando o recurso de personalização.You maintain brand and visual consistency between your application and Azure AD B2C by using this customization feature.

O Azure AD B2C executa o código no navegador do usuário e usa uma abordagem moderna chamada CORS (Compartilhamento de Recursos entre Origens).Azure AD B2C runs code in the user's browser and uses a modern approach called Cross-Origin Resource Sharing (CORS). Primeiro, especifique uma URL na política com um conteúdo personalizado em HTML.First, you specify a URL in a policy with customized HTML content. O Azure AD B2C mescla os elementos da interface do usuário com o conteúdo HTML carregado da URL e exibe a página ao usuário.Azure AD B2C merges user interface elements with the HTML content that's loaded from your URL and then displays the page to the user.

Você envia os parâmetros para o Azure AD B2C em uma cadeia de caracteres de consulta.You send parameters to Azure AD B2C in a query string. Ao passar o parâmetro para seu ponto de extremidade HTML, o conteúdo da página é alterado dinamicamente.By passing the parameter to your HTML endpoint, the page content is dynamically changed. Por exemplo, altere a imagem da tela de fundo na página de inscrição ou de entrada com base em um parâmetro passado de seu aplicativo Web ou móvel.For example, you change the background image on the sign-up or sign-in page based on a parameter that you pass from your web or mobile application.

Para personalizar as páginas em um fluxo dos usuários, confira Tutorial: Personalizar a interface das experiências do usuário no Azure Active Directory B2C.To customize pages in a user flow, see Tutorial: Customize the interface of user experiences in Azure Active Directory B2C. Para personalizar as páginas em uma política personalizada, confira Personalizar a interface do usuário do aplicativo usando uma política personalizada no Azure Active Directory B2C ou Configurar a interface do usuário com conteúdo dinâmico usando políticas personalizadas no Azure Active Directory B2C.To customize pages in a custom policy, see Customize the user interface of your application using a custom policy in Azure Active Directory B2C or Configure the UI with dynamic content by using custom policies in Azure Active Directory B2C.

Recursos para desenvolvedoresDeveloper resources

Aplicativos clienteClient applications

Você tem a opção de aplicativos para iOS, Android e .NET, entre outros.You have the choice of applications for iOS, Android, and .NET, among others. O Azure AD B2C permite essas ações e protege as identidades dos usuários ao mesmo tempo.Azure AD B2C enables these actions while protecting your user identities at the same time.

Se você for desenvolvedor de aplicativo Web ASP.NET, configure seu aplicativo para autenticar contas usando as etapas do Tutorial: habilitar um aplicativo Web para autenticar com contas usando o Azure AD B2C.If you're an ASP.NET web application developer, set up your application to authenticate accounts using the steps in Tutorial: Enable a web application to authenticate with accounts using Azure AD B2C.

Se você for desenvolvedor de aplicativos da área de trabalho, configure seu aplicativo para autenticar contas usando as etapas do Tutorial: habilitar um aplicativo de desktop para autenticar com contas usando o Azure AD B2C.If you're a desktop application developer, set up your application to authenticate accounts using the steps in Tutorial: Enable a desktop application to authenticate with accounts using Azure AD B2C.

Se você for desenvolvedor de aplicativo de página única que usa o Node.js, configure seu aplicativo para autenticar contas usando as etapas do Tutorial: habilitar um aplicativo de página única para autenticar com contas usando o Azure AD B2C.If you're a single-page application developer using Node.js, set up your application to authenticate accounts using the steps in Tutorial: Enable a single-page application to authenticate with accounts using Azure AD B2C.

APIsAPIs

Se os aplicativos cliente ou Web precisarem chamar APIs, você poderá configurar o acesso seguro a esses recursos no Azure AD B2C.If your client or web applications need to call APIs, you can set up secure access to those resources in Azure AD B2C.

Se você for desenvolvedor de aplicativo Web ASP.NET, configure seu aplicativo para chamar uma API protegida usando as etapas do Tutorial: Permitir acesso a um ASP.NET Web API usando o Azure Active Directory B2C.If you're an ASP.NET web application developer, set up your application to call a protected API using the steps in Tutorial: Grant access to an ASP.NET web API using Azure Active Directory B2C.

Se você for desenvolvedor de aplicativos da área de trabalho, configure seu aplicativo para chamar uma API protegida usando as etapas do Tutorial: Permitir acesso a uma API Web do Node.js em um aplicativo da área de trabalho usando o Azure Active Directory B2C.If you're a desktop application developer, set up your application to call a protected API using the steps in Tutorial: Grant access to a Node.js web API from a desktop app using Azure Active Directory B2C.

Se você for um desenvolvedor de aplicativo de página única usando Node.js, configure seu aplicativo para autenticar contas usando as etapas no Tutorial: Permitir acesso a uma API Web do ASP.NET Core em um aplicativo de página única usando o Azure Active Directory B2C.If you are a single-page application developer using Node.js, set up your application to authenticate accounts using the steps in Tutorial: Grant access to an ASP.NET Core web API from a single-page application using Azure Active Directory B2C.

JavaScriptJavaScript

Adicione seu próprio código JavaScript do lado do cliente a seus aplicativos no Azure AD B2C.You can add your own JavaScript client-side code to your applications in Azure AD B2C. Para configurar o JavaScript em seu aplicativo, defina um contrato de página e habilite o JavaScript em fluxos dos usuários ou políticas personalizadas.To set up JavaScript in your application, you define a page contract and enable JavaScript in your user flows or custom policies.

Contas de usuárioUser accounts

Muitas tarefas comuns de gerenciamento de locatários precisam ser executadas de forma programática.Many common tenant management tasks need to be performed programmatically. O principal exemplo é o gerenciamento de usuário.A primary example is user management. Talvez seja necessário migrar o repositório de usuários existente para um locatário do Azure AD B2C.You might need to migrate an existing user store to an Azure AD B2C tenant. Talvez seja melhor hospedar o registro de usuário em sua própria página e criar contas de usuário no seu diretório do Azure AD B2C nos bastidores.You may want to host user registration on your own page and create user accounts in your Azure AD B2C directory behind the scenes. Esses tipos de tarefas exigem a capacidade de criar, ler, atualizar e excluir contas de usuário.These types of tasks require the ability to create, read, update, and delete user accounts. Realize essas tarefas usando a API do Graph do Azure AD.You can do these tasks by using the Azure AD Graph API.

Próximas etapasNext steps

Começar a configurar seu aplicativo para a experiência de inscrição e entrada ao continuar o tutorial.Start configuring your application for the sign-up and sign-in experience by continuing to the tutorial.