Partilhar via


Configurando a ID do Microsoft Entra para provisionar usuários em um banco de dados SQL

Este documento descreve as etapas que você precisa executar para provisionar e desprovisionar automaticamente os usuários do Microsoft Entra ID em um banco de dados SQL.

Para obter detalhes importantes sobre o que esse serviço faz, como funciona e perguntas frequentes, confira os artigos Automatizar o provisionamento e o desprovisionamento de usuários para aplicativos SaaS com o Microsoft Entra ID e a arquitetura de provisionamento de aplicativos locais.

O vídeo a seguir fornece uma visão geral do provisionamento local.

Pré-requisitos para provisionamento em um Banco de Dados SQL

Pré-requisitos no local

O aplicativo depende de um banco de dados SQL, no qual os registros para usuários podem ser criados, atualizados e excluídos. O computador que executa o agente de provisionamento deve ter:

  • Windows Server 2016 ou uma versão posterior.
  • Conectividade com o sistema de banco de dados de destino e com conectividade de saída para login.microsoftonline.com, outros domínios do Microsoft Online Services e do Azure . Um exemplo é uma máquina virtual do Windows Server 2016 hospedada no Azure IaaS ou atrás de um proxy.
  • Pelo menos 3 GB de RAM.
  • .NET Framework 4.7.2.
  • O driver ODBC para o banco de dados SQL.

A configuração da conexão com o banco de dados do aplicativo é feita através de um assistente. Dependendo das opções selecionadas, algumas das telas do assistente podem não estar disponíveis e as informações podem ser ligeiramente diferentes. Use as informações a seguir para guiá-lo em sua configuração.

Bases de dados suportadas

  • Microsoft SQL Server e Azure SQL
  • IBM DB2 9.x
  • IBM DB2 10.x
  • IBM DB2 11.5
  • Oracle 10g e 11g
  • Oracle 12c e 18c
  • MySQL 5.x
  • MySQL 8,x
  • Postgres

Requisitos da nuvem

  • Um locatário do Microsoft Entra com o Microsoft Entra ID P1 ou Premium P2 (ou EMS E3 ou E5).

    O uso desse recurso requer licenças do Microsoft Entra ID P1. Para encontrar a licença certa para os requisitos, veja Comparar as funcionalidades geralmente disponíveis do Microsoft Entra ID.

  • A função Administrador de Identidade Híbrida para configurar o agente de provisionamento e as funções de Administrador de Aplicativo ou Administrador de Aplicativo em Nuvem para configurar o provisionamento no portal do Azure.

  • Os usuários do Microsoft Entra a serem provisionados para o banco de dados já devem estar preenchidos com quaisquer atributos que serão exigidos pelo esquema do banco de dados e que não são gerados pelo próprio banco de dados.

Preparar o banco de dados de exemplo

Neste artigo, você configurará o conector SQL do Microsoft Entra para interagir com o banco de dados relacional do seu aplicativo. Normalmente, os aplicativos gerenciam o acesso com uma tabela em seu banco de dados SQL, com uma linha na tabela por usuário. Se você já tiver um aplicativo com um banco de dados, continue na próxima seção.

Se você ainda não tem um banco de dados com uma tabela adequada, então, para fins de demonstração, você deve criar um que o Microsoft Entra ID pode ter permissão para usar. Se você estiver usando o SQL Server, execute o script SQL encontrado no Apêndice A. Esse script cria um banco de dados de exemplo com o nome CONTOSO, contendo uma única tabela Employees. Esta tabela de banco de dados na qual você provisionará usuários.

Coluna da Tabela Origem
ContosoLogin Nome principal do usuário do Microsoft Entra
FirstName Nome próprio do Microsoft Entra
LastName Sobrenome Microsoft Entra
E-mail Endereço de email do Exchange Online
GUID interno Gerado pelo próprio banco de dados
AzureID ID do objeto Microsoft Entra
textID Apelido de email do Microsoft Entra ID

Determine como o Microsoft Entra SQL Connector interagirá com seu banco de dados

Você precisará ter uma conta de usuário na instância SQL com os direitos para fazer atualizações de dados nas tabelas do banco de dados. Se o seu banco de dados SQL for gerenciado por outra pessoa, entre em contato com ela para obter o nome da conta e a senha para o ID do Microsoft Entra usar para autenticar no banco de dados. Se a instância SQL estiver instalada em um computador diferente, você também precisará garantir que o banco de dados SQL permita conexões de entrada do driver ODBC no computador do agente.

Se você já tiver um banco de dados existente para seu aplicativo, precisará determinar como o Microsoft Entra ID deve interagir com esse banco de dados: interação direta com tabelas e exibições, por meio de procedimentos armazenados já presentes no banco de dados ou por meio de instruções SQL fornecidas para consulta e atualizações. Essa configuração ocorre porque um aplicativo mais complexo pode ter em seu banco de dados outras tabelas auxiliares, exigir paginação para tabelas com milhares de usuários ou pode exigir que o Microsoft Entra ID chame um procedimento armazenado que execute processamento de dados extra, como criptografia, hash ou verificações de validade.

Ao criar a configuração para que o conector interaja com o banco de dados de um aplicativo, você configurará primeiro uma abordagem para como o host do conector lê o esquema do seu banco de dados e, em seguida, configurará a abordagem que o conector deve usar continuamente, por meio de perfis de execução. Cada perfil de execução especifica como o conector deve gerar instruções SQL. A escolha dos perfis de execução, e o método dentro de um perfil de execução, depende do que o mecanismo de banco de dados suporta e o aplicativo requer.

  • Após a configuração, quando o serviço de provisionamento for iniciado, ele executará automaticamente as interações configuradas no perfil de execução de Importação Completa . Nesse perfil de execução, o conector será lido em todos os registros para usuários do banco de dados do aplicativo, normalmente usando uma instrução SELECT . Esse perfil de execução é necessário para que, posteriormente, se o Microsoft Entra ID precisar fazer uma alteração para um usuário, o Microsoft Entra ID saberá atualizar um registro existente para esse usuário no banco de dados, em vez de criar um novo registro para esse usuário.

  • Sempre que forem feitas alterações na ID do Microsoft Entra, como atribuir um novo usuário ao aplicativo ou atualizar um usuário existente, o serviço de provisionamento executará as interações do banco de dados SQL configuradas como Exportar perfil de execução. No perfil de execução Exportar, o Microsoft Entra ID emitirá instruções SQL para inserir, atualizar e excluir registros no banco de dados, a fim de sincronizar o conteúdo do banco de dados com o Microsoft Entra ID.

  • Se o banco de dados oferecer suporte a ele, você também poderá, opcionalmente, configurar um perfil de execução de Importação Delta . Neste perfil de execução, o Microsoft Entra ID lerá as alterações que foram feitas no banco de dados, exceto pelo Microsoft Entra ID, desde a última importação completa ou delta. Esse perfil de execução é opcional, pois requer que o banco de dados seja estruturado para permitir que as alterações sejam lidas.

Na configuração de cada perfil de execução do conector, você especificará se o conector Microsoft Entra deve gerar suas próprias instruções SQL para uma tabela ou exibição, chamar seus procedimentos armazenados ou usar consultas SQL personalizadas fornecidas. Normalmente, você usará o mesmo método para todos os perfis de execução em um conector.

  • Se você selecionar o método Table ou View para um perfil de execução, o conector do Microsoft Entra gerará as instruções SQL necessárias, SELECT, INSERT, UPDATE e DELETE, para interagir com a tabela ou exibição no banco de dados. Esse método é a abordagem mais simples, se seu banco de dados tiver uma única tabela ou uma exibição atualizável com poucas linhas existentes.
  • Se você selecionar o método Stored Procedure, seu banco de dados precisará ter quatro procedimentos armazenados: ler uma página de usuários, adicionar um usuário, atualizar um usuário e excluir um usuário, você configurará o conector Microsoft Entra com os nomes e parâmetros desses procedimentos armazenados para chamar. Essa abordagem requer mais configuração em seu banco de dados SQL e normalmente só seria necessária se seu aplicativo exigisse mais processamento para cada alteração em um usuário, ou para paginação por meio de grandes conjuntos de resultados.
  • Se você selecionar o método SQL Query, digitará as instruções SQL específicas que deseja que o conector emita durante um perfil de execução. Você configurará o conector com os parâmetros que o conector deve preencher em suas instruções SQL, como percorrer conjuntos de resultados durante uma importação ou definir os atributos de um novo usuário que está sendo criado durante uma exportação.

Este artigo ilustra como usar o método table para interagir com a tabela Employeesde banco de dados de exemplo , nos perfis de execução Exportar e Importação Completa . Para saber mais sobre como configurar os métodos de Procedimento Armazenado ou Consulta SQL, consulte o Guia de configuração SQL genérico que fornece mais detalhes e requisitos específicos.

Escolha os identificadores exclusivos no esquema de banco de dados do seu aplicativo

A maioria dos aplicativos terá um identificador exclusivo para cada usuário do aplicativo. Se você estiver provisionando em uma tabela de banco de dados existente, deverá identificar uma coluna dessa tabela que tenha um valor para cada usuário, onde esse valor seja exclusivo e não seja alterado. Esta coluna será a Âncora, que o Microsoft Entra ID usa para identificar linhas existentes para poder atualizá-las ou excluí-las. Para obter mais informações sobre âncoras, consulte Sobre atributos de âncora e nomes distintos.

Se o banco de dados do seu aplicativo já existe, tem usuários nele e você deseja que o Microsoft Entra ID mantenha esses usuários atualizados, então você precisará ter um identificador para cada usuário que seja o mesmo entre o banco de dados do aplicativo e o esquema do Microsoft Entra. Por exemplo, se você atribuir um usuário ao aplicativo no Microsoft Entra ID e esse usuário já estiver nesse banco de dados, as alterações para esse usuário no Microsoft Entra ID deverão atualizar uma linha existente para esse usuário, em vez de adicionar uma nova linha. Como o Microsoft Entra ID provavelmente não armazena o identificador interno de um aplicativo para esse usuário, convém selecionar outra coluna para consultar o banco de dados. O valor desta coluna pode ser um nome principal de usuário ou um endereço de email, ID de funcionário ou outro identificador presente no ID do Microsoft Entra em cada usuário que está no escopo do aplicativo. Se o identificador de usuário que o aplicativo usa não for um atributo armazenado na representação do usuário do Microsoft Entra, não será necessário estender o esquema de usuário do Microsoft Entra com um atributo de extensão e preencher esse atributo do banco de dados. Você pode estender o esquema do Microsoft Entra e definir valores de extensão usando o PowerShell.

Mapear atributos no Microsoft Entra ID para o esquema de banco de dados

Quando o Microsoft Entra ID estabeleceu um vínculo entre um usuário no Microsoft Entra ID e um registro no banco de dados, seja para um usuário já no banco de dados ou um novo usuário, o Microsoft Entra ID pode provisionar alterações de atributo do usuário do Microsoft Entra no banco de dados. Além dos identificadores exclusivos, inspecione seu banco de dados para identificar se há outras propriedades necessárias. Se houver, certifique-se de que os usuários que serão provisionados no banco de dados tenham atributos que possam ser mapeados nas propriedades necessárias.

Você também pode configurar o comportamento de desprovisionamento . Se um usuário atribuído ao aplicativo for excluído no Microsoft Entra ID, o Microsoft Entra ID enviará uma operação de exclusão para o banco de dados. Você também pode desejar que o Microsoft Entra ID atualize o banco de dados quando um usuário sair do escopo de poder usar o aplicativo. Se um usuário não for atribuído a partir de um aplicativo, excluído por software na ID do Microsoft Entra ou bloqueado de entrar, você poderá configurar a ID do Microsoft Entra para enviar uma alteração de atributo. Se você estiver provisionando em uma tabela de banco de dados existente, convém ter uma coluna dessa tabela para mapear para isSoftDeleted. Quando o usuário sair do escopo, a ID do Microsoft Entra definirá o valor para esse usuário como True.

1. Instale o driver ODBC

O Windows Server onde você instalará o agente de provisionamento requer um driver ODBC para seu banco de dados de destino. Se você estiver planejando se conectar ao SQL Server ou ao banco de dados SQL do Azure, baixe o driver ODBC para SQL Server (x64) e instale-o no Windows Server. Para outros bancos de dados SQL, consulte as orientações do fornecedor de software independente sobre como instalar o driver ODBC.

2. Criar um arquivo de conexão DSN

O conector SQL genérico requer um arquivo DSN (Data Source Name) para se conectar ao ponto de extremidade SQL. Primeiro, você precisa criar um arquivo com as informações de conexão ODBC.

  1. Inicie o utilitário de gerenciamento ODBC no servidor. Use a versão de 64 bits.

    Captura de tela que mostra o gerenciamento ODBC.

  2. Selecione a guia DSN de arquivo e selecione Adicionar.

    Captura de ecrã que mostra o separador DSN de Ficheiro.

  3. Se você estiver usando o SQL Server ou o Azure SQL, selecione SQL Server Native Client 11.0 e selecione Avançar. Se você estiver usando outro banco de dados, selecione seu driver ODBC.

    Captura de tela que mostra a escolha de um cliente nativo.

  4. Dê um nome ao arquivo, como GenericSQL, e selecione Avançar. Captura de tela que mostra nomeando o conector.

  5. Selecione Concluir.

    Captura de tela que mostra Concluir.

  6. Agora configure a conexão. As etapas a seguir serão diferentes dependendo de qual driver ODBC você está usando. Esta ilustração pressupõe que você esteja usando o driver para se conectar ao SQL Server. Se o SQL Server estiver localizado em um computador servidor diferente, digite o nome do servidor. Em seguida, selecione Seguinte.

    Captura de ecrã que mostra a introdução de um nome de servidor.

  7. Se o usuário que você está executando esta etapa tiver permissões para se conectar ao banco de dados, mantenha a autenticação do Windows selecionada. Se o administrador do SQL Server exigir uma conta local do SQL, forneça essas credenciais. Em seguida, selecione Seguinte.

    Captura de tela que mostra a autenticação do Windows.

  8. Insira o nome do banco de dados, que neste exemplo é CONTOSO.

    Captura de tela que mostra a inserção de um nome de banco de dados.

  9. Mantenha tudo padrão nesta tela e selecione Concluir.

    Captura de tela que mostra a seleção de Concluir.

  10. Para verificar se tudo está funcionando conforme o esperado, selecione Testar fonte de dados.

    Captura de tela que mostra a Fonte de Dados de Teste.

  11. Certifique-se de que o teste foi bem-sucedido.

    Captura de tela que mostra o sucesso.

  12. Selecione OK duas vezes. Feche o administrador de fonte de dados ODBC. O arquivo de conexão DSN é salvo por padrão na pasta Documentos .

3. Instale e configure o Agente de Provisionamento do Microsoft Entra Connect

Se você já baixou o agente de provisionamento e o configurou para outro aplicativo local, continue lendo na próxima seção.

  1. Inicie sessão no portal do Azure.
  2. Vá para Aplicativos corporativos e selecione Novo aplicativo.
  3. Pesquise o aplicativo ECMA local, dê um nome ao aplicativo e selecione Criar para adicioná-lo ao seu locatário.
  4. No menu, navegue até a página Provisionamento do seu aplicativo.
  5. Selecione Introdução.
  6. Na página Provisionamento, altere o modo para Automático.

Captura de ecrã a mostrar a seleção de Automático.

  1. Em Conectividade local, selecione Baixar e instalar e selecione Aceitar termos & download.

Captura de tela do local de download para o agente.

  1. Saia do portal e execute o instalador do agente de provisionamento, concorde com os termos de serviço e selecione Instalar.
  2. Aguarde o assistente de configuração do agente de provisionamento do Microsoft Entra e selecione Avançar.
  3. Na etapa Selecionar extensão, selecione Provisionamento de aplicativo local e selecione Avançar.
  4. O agente de provisionamento usará o navegador da Web do sistema operacional para exibir uma janela pop-up para você se autenticar na ID do Microsoft Entra e, potencialmente, também no provedor de identidade da sua organização. Se você estiver usando o Internet Explorer como navegador no Windows Server, talvez seja necessário adicionar sites da Microsoft à lista de sites confiáveis do navegador para permitir que o JavaScript seja executado corretamente.
  5. Forneça credenciais para um administrador do Microsoft Entra quando você for solicitado a autorizar. O usuário deve ter pelo menos a função de Administrador de Identidade Híbrida .
  6. Selecione Confirmar para confirmar a configuração. Quando a instalação for bem-sucedida, você poderá selecionar Sair e também fechar o instalador do Pacote do Agente de Provisionamento.

4. Configurar o aplicativo ECMA local

  1. De volta ao portal, na seção Conectividade Local, selecione o agente implantado e selecione Atribuir Agente(s).

    Captura de tela que mostra como selecionar, atribuir e agente.

  2. Mantenha esta janela do navegador aberta enquanto conclui a próxima etapa de configuração usando o assistente de configuração.

5. Configurar o certificado Microsoft Entra ECMA Connector Host

  1. No Windows Server onde o agente de provisionamento está instalado, clique com o botão direito do mouse no Assistente de Configuração do Microsoft ECMA2Host no menu Iniciar e execute como administrador. A execução como administrador do Windows é necessária para que o assistente crie os logs de eventos do Windows necessários.

  2. Depois que a Configuração do Host do Conector ECMA for iniciada, se for a primeira vez que você executar o assistente, ele solicitará que você crie um certificado. Deixe a porta padrão 8585 e selecione Gerar certificado para gerar um certificado. O certificado gerado automaticamente será autoassinado como parte da raiz confiável. O certificado SAN corresponde ao nome do host.

    Captura de ecrã que mostra a definição das suas definições.

  3. Selecione Guardar.

Nota

Se você optou por gerar um novo certificado, registre a data de expiração do certificado, para garantir que você agende retornar ao assistente de configuração e gerar novamente o certificado antes que ele expire.

6. Crie um conector SQL genérico

Nesta seção, você cria a configuração do conector para seu banco de dados.

6.1 Configurar a conexão SQL

Para criar um conector SQL genérico, siga estes passos:

  1. Gere um token secreto que será usado para autenticar o ID do Microsoft Entra no conector. Deve ter um mínimo de 12 caracteres e ser único para cada aplicação.

  2. Se ainda não tiver feito isso, inicie o Assistente de Configuração do Microsoft ECMA2Host no menu Iniciar do Windows.

  3. Selecione Novo conector.

    Captura de tela que mostra a escolha de Novo Conector.

  4. Na página Propriedades, preencha as caixas com os valores especificados na tabela que segue a imagem e selecione Avançar.

    Captura de ecrã que mostra a introdução de propriedades.

    Property valor
    Nome O nome escolhido para o conector, que deve ser exclusivo em todos os conectores em seu ambiente. Por exemplo, se você tiver apenas um banco de dados SQL, SQL.
    Temporizador de sincronização automática (minutos) 120
    Token secreto Insira o token secreto que você gerou para esse conector. A chave deve ter no mínimo 12 caracteres.
    Extensão DLL Para o conector SQL genérico, selecione Microsoft.IAM.Connector.GenericSql.dll.
  5. Na página Conectividade, preencha as caixas com os valores especificados na tabela que se segue à imagem e selecione Avançar.

    Captura de ecrã que mostra a página Conectividade.

    Property Description
    Arquivo DSN O arquivo Nome da Fonte de Dados criado na etapa anterior, que é usado para se conectar à instância SQL.
    Nome de Utilizador O nome de usuário de uma conta com direitos para fazer atualizações na tabela na instância SQL. Se o banco de dados de destino for SQL Server e você estiver usando a autenticação do Windows, o nome de usuário deverá estar na forma de hostname\sqladminaccount para servidores autônomos ou domain\sqladminaccount para servidores membros do domínio. Para outros bancos de dados, o nome de usuário será uma conta local no banco de dados.
    Palavra-passe A senha do nome de usuário fornecido.
    DN é Âncora A menos que seu ambiente seja conhecido por exigir essas configurações, não marque as caixas de seleção DN é Âncora e Tipo de Exportação:Substituição de Objeto.

6.2 Recuperar o esquema do banco de dados

Depois de fornecer as credenciais, o ECMA Connector Host estará pronto para recuperar o esquema do seu banco de dados. Continue com a configuração de conexão SQL:

  1. Na página Esquema 1, você especificará a lista de tipos de objeto. Neste exemplo, há um único tipo de objeto, User. Preencha as caixas com os valores especificados na tabela que se segue à imagem e selecione Avançar.

    Captura de tela que mostra a página Esquema 1.

    Property valor
    Método de deteção de tipo de objeto Valor Fixo
    Lista de valores fixos/Tabela/Vista/SP User
  2. Depois de selecionar Avançar, a próxima página aparecerá automaticamente, para a configuração do tipo de User objeto. Na página Esquema 2, você indicará como os usuários são representados em seu banco de dados. Neste exemplo, é uma única tabela SQL, chamada Employees. Preencha as caixas com os valores especificados na tabela que se segue à imagem e selecione Avançar.

    Captura de tela que mostra a página Esquema 2.

    Property valor
    Usuário:Deteção de atributos Tabela
    Usuário:Tabela/Visualização/SP O nome da tabela em seu banco de dados, como Employees

    Nota

    Se ocorrer um erro, verifique a configuração do banco de dados para garantir que o usuário especificado na página Conectividade tenha acesso de leitura ao esquema do banco de dados.

  3. Depois de selecionar Avançar, a próxima página aparecerá automaticamente, para que você selecione as colunas da tabela especificada anteriormente, como a Employees tabela neste exemplo, que devem ser usadas como o Anchor e DN dos usuários. Essas colunas contêm identificadores exclusivos em seu banco de dados. Você pode usar as mesmas colunas ou colunas diferentes, mas certifique-se de que todas as linhas já neste banco de dados tenham valores exclusivos nessas colunas. Na página Esquema 3, preencha as caixas com os valores especificados na tabela que se segue à imagem e selecione Avançar.

    Captura de tela que mostra a página Esquema 3.

    Property Description
    Selecione Âncora para: Usuário A coluna da tabela do banco de dados a ser usada para a âncora, como User:ContosoLogin
    Selecionar atributo DN para Usuário A coluna do banco de dados a ser usada para o atributo DN, como AzureID
  4. Depois de selecionar Avançar, a próxima página aparecerá automaticamente, para que você confirme o tipo de dados de cada uma das colunas da Employee tabela e se o conector deve importá-las ou exportá-las. Na página Esquema 4, deixe os padrões e selecione Avançar.

    Captura de tela que mostra a página Esquema 4.

  5. Na página Global, preencha as caixas e selecione Avançar. Use a tabela que segue a imagem para obter orientação sobre as caixas individuais.

    Captura de tela que mostra a página Global.

    Property Description
    Estratégia Delta Para IBM DB2, selecione None
    Consulta de marca d'água Para IBM DB2, digite SELECT CURRENT TIMESTAMP FROM SYSIBM.SYSDUMMY1;
    Formato de Data e Hora da Fonte de Dados Para SQL Server yyyy-MM-dd HH:mm:ss e para IBM DB2, YYYY-MM-DD
  6. Na página Partições, selecione Avançar.

    Captura de ecrã que mostra a página Partições.

6.3 Configurar os perfis de execução

Em seguida, você configurará os perfis de execução Exportar e Importação completa. O perfil de execução Exportar será usado quando o host do ECMA Connector precisar enviar alterações do ID do Microsoft Entra para o banco de dados, para inserir, atualizar e excluir registros. O perfil de execução de Importação Completa será usado quando o serviço de host do ECMA Connector for iniciado, para ler o conteúdo atual do banco de dados. Neste exemplo, você usará o método Table em ambos os perfis de execução, para que o ECMA Connector Host gere as instruções SQL necessárias.

Continue com a configuração de conexão SQL:

  1. Na página Executar Perfis, mantenha a caixa de seleção Exportar marcada. Marque a caixa de seleção Importação completa e selecione Avançar.

    Captura de ecrã que mostra a página Executar Perfis.

    Property Description
    Exportar Execute o perfil que exportará dados para SQL. Este perfil de execução é necessário.
    Importação total Execute o perfil que importará todos os dados de fontes SQL especificadas anteriormente.
    Importação Delta Execute o perfil que importará apenas as alterações do SQL desde a última importação completa ou delta.
  2. Depois de selecionar Next, a próxima página aparecerá automaticamente, para você configurar o método para o perfil de execução Exportar . Na página Exportar, preencha as caixas e selecione Avançar. Use a tabela que segue a imagem para obter orientação sobre as caixas individuais.

    Captura de ecrã que mostra a página Exportar.

    Property Description
    Método de operação Tabela
    Tabela/Visualização/SP A mesma tabela configurada na guia Esquema 2, como Employees
  3. Na página Importação Completa, preencha as caixas e selecione Avançar. Use a tabela que segue a imagem para obter orientação sobre as caixas individuais.

    Captura de ecrã que mostra a página Importação Completa.

    Property Description
    Método de operação Tabela
    Tabela/Visualização/SP A mesma tabela configurada na guia Esquema 2, como Employees

6.4 Configurar como os atributos são apresentados no ID do Microsoft Entra

Na última etapa das configurações de conexão SQL, configure como os atributos são exibidos no ID do Microsoft Entra:

  1. Na página Tipos de Objeto , preencha as caixas e selecione Avançar. Use a tabela que segue a imagem para obter orientação sobre as caixas individuais.

    • Âncora: Os valores desse atributo devem ser exclusivos para cada objeto no banco de dados de destino. O serviço de provisionamento do Microsoft Entra consultará o host do conector ECMA usando esse atributo após o ciclo inicial. Esse valor de âncora deve ser o mesmo que a coluna âncora que você configurou anteriormente na página Esquema 3 .
    • Atributo de consulta: Este atributo deve ser o mesmo que a âncora.
    • DN: A opção Gerado automaticamente deve ser selecionada na maioria dos casos. Se não estiver selecionado, certifique-se de que o atributo DN está mapeado para um atributo no Microsoft Entra ID que armazena o DN neste formato: CN = anchorValue, Object = objectType. Para obter mais informações sobre âncoras e DN, consulte Sobre atributos de âncora e nomes distintos.
    Property Description
    Objeto de destino User
    Âncora A coluna configurada na guia Esquema 3, como ContosoLogin
    Atributo de consulta A mesma coluna que a Âncora, como ContosoLogin
    DN A mesma coluna configurada na guia Esquema 3, como ContosoLogin
    Gerado automaticamente Selecionado
  2. O host do conector ECMA descobre os atributos suportados pelo banco de dados de destino. Você pode escolher quais desses atributos deseja expor ao ID do Microsoft Entra. Esses atributos podem ser configurados no portal do Azure para provisionamento. Na página Selecionar Atributos, adicione todos os atributos na lista suspensa, um de cada vez.

A lista suspensa Atributo mostra qualquer atributo que foi descoberto no banco de dados de destino e não foi escolhido na página anterior Selecionar Atributos . Depois que todos os atributos relevantes tiverem sido adicionados, selecione Avançar.

Captura de ecrã da lista pendente de atributos.

  1. Na página Desprovisionamento, em Desabilitar fluxo, selecione Excluir. Os atributos selecionados na página anterior não estarão disponíveis para seleção na página Desprovisionamento. Selecione Concluir.

Nota

Se você usar o valor do atributo set, lembre-se de que somente valores booleanos são permitidos.

Captura de tela que mostra a página Desprovisionamento.

7. Verifique se o serviço ECMA2Host está em execução

  1. No servidor que executa o Microsoft Entra ECMA Connector Host, selecione Iniciar.

  2. Digite executar e digite services.msc na caixa.

  3. Na lista Serviços, verifique se o Microsoft ECMA2Host está presente e em execução. Caso contrário, selecione Iniciar.

    Captura de tela que mostra que o serviço está em execução.

Se você estiver se conectando a um novo banco de dados ou a um que esteja vazio e não tenha usuários, continue na próxima seção. Caso contrário, siga estas etapas para confirmar se o conector identificou usuários existentes no banco de dados.

  1. Se você iniciou recentemente o serviço e tem muitos objetos de usuário no banco de dados, aguarde alguns minutos para que o conector estabeleça uma conexão com o banco de dados.

8. Configurar a conexão do aplicativo no portal do Azure

  1. Retorne à janela do navegador da Web onde você estava configurando o provisionamento do aplicativo.

    Nota

    Se a janela tiver expirado, você precisará selecionar novamente o agente.

    1. Inicie sessão no portal do Azure.
    2. Vá para Aplicativos corporativos e o aplicativo ECMA local.
    3. Selecione Provisionamento.
    4. Se Introdução for exibido, altere o modo para Automático, na seção Conectividade Local, selecione o agente implantado e selecione Atribuir Agente(s). Caso contrário, vá para Editar provisionamento.
  2. Na secção Credenciais de administrador, introduza o seguinte URL. Substitua a {connectorName} parte pelo nome do conector no host do conector ECMA, como SQL. O nome do conector diferencia maiúsculas de minúsculas e deve ser o mesmo caso que foi configurado no assistente. Você também pode substituir localhost pelo nome do host da máquina.

    Property valor
    URL do locatário https://localhost:8585/ecma2host_{connectorName}/scim
  3. Insira o valor de Token secreto que você definiu quando criou o conector.

    Nota

    Se você acabou de atribuir o agente para o aplicativo, aguarde 10 minutos para que o registro seja concluído. O teste de conectividade não funcionará até que o registro seja concluído. Forçar a conclusão do registro do agente reiniciando o agente de provisionamento no servidor pode acelerar o processo de registro. Vá para o servidor, procure serviços na barra de pesquisa do Windows, identifique o Serviço do Agente de Provisionamento do Microsoft Entra Connect, clique com o botão direito do mouse no serviço e reinicie.

  4. Selecione Testar conexão e aguarde um minuto.

    Captura de tela que mostra a atribuição de um agente.

  5. Depois que o teste de conexão for bem-sucedido e indicar que as credenciais fornecidas estão autorizadas a habilitar o provisionamento, selecione Salvar.

    Captura de tela que mostra o teste de um agente.

9. Configurar mapeamentos de atributos

Agora você precisa mapear atributos entre a representação do usuário no Microsoft Entra ID e a representação de um usuário no banco de dados SQL do aplicativo local.

Você usará o portal do Azure para configurar o mapeamento entre os atributos do usuário do Microsoft Entra e os atributos que você selecionou anteriormente no assistente de configuração do Host ECMA.

  1. Verifique se o esquema do Microsoft Entra inclui os atributos exigidos pelo banco de dados. Se o banco de dados exigir que os usuários tenham um atributo, como uidNumber, e esse atributo ainda não fizer parte do esquema do Microsoft Entra para um usuário, será necessário usar o recurso de extensão de diretório para adicionar esse atributo como uma extensão.

  2. No centro de administração do Microsoft Entra, em Aplicativos corporativos, selecione o aplicativo ECMA local e, em seguida, a página Provisionamento .

  3. Selecione Editar provisionamento e aguarde 10 segundos.

  4. Expanda Mapeamentos e selecione o mapeamento Provisionar usuários do Microsoft Entra ID. Se esta for a primeira vez que você configurou os mapeamentos de atributos para este aplicativo, este será o único mapeamento presente, para um espaço reservado.

    Captura de tela que mostra o provisionamento de um usuário.

  5. Para confirmar se o esquema do banco de dados está disponível no Microsoft Entra ID, marque a caixa de seleção Mostrar opções avançadas e selecione Editar lista de atributos para ScimOnPremises. Certifique-se de que todos os atributos selecionados no assistente de configuração estejam listados. Caso contrário, aguarde alguns minutos até que o esquema seja atualizado e, em seguida, recarregue a página. Depois de ver os atributos listados, feche a página para retornar à lista de mapeamentos.

  6. Agora, clique no mapeamento userPrincipalName PLACEHOLDER. Esse mapeamento é adicionado por padrão quando você configura o provisionamento local pela primeira vez.

Captura de ecrã do marcador de posição. Altere os valores do atributo para corresponder ao seguinte:

Tipo de mapeamento Atributo Source Atributo de destino
Direct userPrincipalName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:ContosoLogin

Captura de ecrã da alteração do valor.

  1. Agora selecione Adicionar Novo Mapeamento e repita a próxima etapa para cada mapeamento.

    Captura de tela que mostra Adicionar Novo Mapeamento.

  2. Especifique os atributos de origem e destino para cada um dos mapeamentos na tabela a seguir.

    Captura de tela que mostra como salvar o mapeamento.

    Tipo de mapeamento Atributo Source Atributo de destino
    Direct userPrincipalName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:ContosoLogin
    Direct objectId urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:AzureID
    Direct correio urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:Email
    Direct givenName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:FirstName
    Direct surname urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:LastName
    Direct mailNickname urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:textID
  3. Depois que todos os mapeamentos tiverem sido adicionados, selecione Salvar.

10. Atribuir usuários a um aplicativo

Agora que você tem o Microsoft Entra ECMA Connector Host conversando com o Microsoft Entra ID e o mapeamento de atributos configurado, você pode passar para configurar quem está no escopo para provisionamento.

Importante

Se você entrou usando uma função de Administrador de Identidade Híbrida, precisará sair e entrar com uma conta que tenha pelo menos a função de Administrador de Aplicativos para esta seção. A função Administrador de Identidade Híbrida não tem permissões para atribuir usuários a aplicativos.

Se houver usuários existentes no banco de dados SQL, você deverá criar atribuições de função de aplicativo para esses usuários existentes. Para saber mais sobre como criar atribuições de função de aplicativo em massa, consulte Governando os usuários existentes de um aplicativo no Microsoft Entra ID.

Caso contrário, se não houver usuários atuais do aplicativo, selecione um usuário de teste do Microsoft Entra que será provisionado para o aplicativo.

  1. Verifique se o usuário tem todas as propriedades que serão mapeadas para os atributos necessários do esquema de banco de dados.

  2. No portal do Azure, selecione Aplicativos corporativos.

  3. Selecione o aplicativo ECMA local.

  4. À esquerda, em Gerir, selecione Utilizadores e grupos.

  5. Selecione Adicionar usuário/grupo.

    Captura de ecrã que mostra a adição de um utilizador.

  6. Em Usuários, selecione Nenhum selecionado.

    Captura de tela que mostra Nenhum selecionado.

  7. Selecione os usuários à direita e selecione o botão Selecionar .

    Captura de tela que mostra Selecionar usuários.

  8. Agora selecione Atribuir.

    Captura de ecrã que mostra Atribuir utilizadores.

11. Provisionamento de testes

Agora que seus atributos estão mapeados e os usuários são atribuídos, você pode testar o provisionamento sob demanda com um de seus usuários.

  1. No portal do Azure, selecione Aplicativos corporativos.

  2. Selecione o aplicativo ECMA local.

  3. À esquerda, selecione Provisionamento.

  4. Selecione Provisão sob demanda.

  5. Procure um dos seus usuários de teste e selecione Provisionar.

    Captura de tela que mostra o provisionamento de testes.

  6. Após alguns segundos, aparecerá a mensagem Usuário criado com êxito no sistema de destino, com uma lista dos atributos do usuário.

12. Comece a provisionar usuários

  1. Depois que o provisionamento sob demanda for bem-sucedido, volte para a página de configuração de provisionamento. Verifique se o escopo está definido apenas para usuários e grupos atribuídos, ative o provisionamento e selecione Salvar.

    Captura de tela que mostra Iniciar provisionamento.

  2. Aguarde alguns minutos para que o provisionamento seja iniciado. Pode demorar até 40 minutos. Após a conclusão do trabalho de provisionamento, conforme descrito na próxima seção, se você tiver concluído o teste, poderá alterar o status do provisionamento para Desativado e selecionar Salvar. Essa ação impede que o serviço de provisionamento seja executado no futuro.

Solução de problemas de erros de provisionamento

Se um erro for mostrado, selecione Exibir logs de provisionamento. Procure no log uma linha na qual o Status é Falha e selecione nessa linha.

Se a mensagem de erro for Falha ao criar usuário, verifique os atributos mostrados em relação aos requisitos do esquema de banco de dados.

Para obter mais informações, mude para a guia Solução de problemas & Recomendações . Se o driver ODBC retornasse uma mensagem, ela poderia ser exibida aqui. Por exemplo, a mensagem ERROR [23000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot insert the value NULL into column 'FirstName', table 'CONTOSO.dbo.Employees'; column does not allow nulls. é um erro do driver ODBC. Nesse caso, o column does not allow nulls pode indicar que a FirstName coluna no banco de dados é obrigatória, mas o usuário que está sendo provisionado não tinha um givenName atributo, portanto, o usuário não pôde ser provisionado.

Verifique se os usuários foram provisionados com êxito

Depois de esperar, verifique o banco de dados SQL para garantir que os usuários estão sendo provisionados.

Captura de tela verificando se os usuários estão provisionados.

Anexo A

Se você estiver usando o SQL Server, poderá usar o seguinte script SQL para criar o banco de dados de exemplo.

---Creating the Database---------
Create Database CONTOSO
Go
-------Using the Database-----------
Use [CONTOSO]
Go
-------------------------------------

/****** Object:  Table [dbo].[Employees]    Script Date: 1/6/2020 7:18:19 PM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Employees](
	[ContosoLogin] [nvarchar](128) NULL,
	[FirstName] [nvarchar](50) NOT NULL,
	[LastName] [nvarchar](50) NOT NULL,
	[Email] [nvarchar](128) NULL,
	[InternalGUID] [uniqueidentifier] NULL,
	[AzureID] [uniqueidentifier] NULL,
	[textID] [nvarchar](128) NULL
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[Employees] ADD  CONSTRAINT [DF_Employees_InternalGUID]  DEFAULT (newid()) FOR [InternalGUID]
GO

Próximos passos