Guia de fluxo de trabalho do Conector de Serviço Web para SOAP

Este artigo descreve como criar um novo projeto para sua fonte de dados na Ferramenta de Configuração do Serviço Web. Siga estas etapas para criar um projeto.

  1. Abra a Ferramenta de Configuração do Serviço Web. Ele abre um projeto em branco.

    Ferramenta de Configuração de Serviço Web

  2. Selecione Projeto SOAP e, em seguida, adicionar.

    Projeto SOAP

  3. Na próxima página, forneça as seguintes informações e, em seguida, selecione Avançar:

    • O novo nome do serviço Web
    • Endereço (caminho WSDL) para recuperar os serviços, pontos de extremidade e operações expostos
    • Namespace
    • Modo de segurança (tipo de autenticação)
  4. Neste exemplo, a página Credenciais é mostrada com os requisitos para o modo de segurança Básico (o modo selecionado na etapa anterior). Se "Nenhum" tiver sido especificado para o modo de segurança, uma página Credenciais não será exibida. Selecione Avançar.

    Tela de serviço SOAP com nome de usuário e senha

  5. O caminho do WSDL está sendo acessado para recuperar as informações de serviço e a lista de funções expostas é exibida. Se o caminho WSDL inserido estiver incorreto, a ferramenta de configuração falhará ao recuperar as informações de serviço e gerará um erro.

    Tela de progresso do download do serviço Web

  6. Depois que a descoberta for executada, ela listará o ponto de extremidade e as operações descobertas. Selecione Concluir.

    Pontos de extremidade e operações de serviço SOAP descobertos

  7. A compilação é executada. A compilação é um processo de compilação do assembly de contrato de dados, que pode ser uma operação demorada. O usuário é informado sobre quaisquer erros de compilação. Depois que a descoberta é executada, a ferramenta exibe a seguinte página:

    Descoberta de sabão

  8. Expandindo o projeto SOAP e selecionando o ponto de extremidade exposto fornecido abaixo da tela. Essa tela lista as operações declaradas no ponto de extremidade.

    Operações declaradas no ponto final

  9. A expansão do ponto de extremidade exibe a lista de operações. Uma operação é uma função declarada por um ponto de extremidade. Cada operação aborda um tipo de tarefa que pode ser executada dentro do serviço. Essa tela lista os argumentos declarados para a operação. Esses argumentos são definidos quando a operação é usada na configuração dos fluxos de trabalho.

    Pontos de extremidade expandidos

  10. A próxima etapa é definir o esquema de espaço do conector, que é obtido criando o Tipo de Objeto e definindo seus tipos de objeto. Selecione Tipos de Objeto e, em seguida, selecione Adicionar. Na nova janela, adicione um novo tipo de objeto e forneça um nome. Selecione OK.

    Definindo o tipo de objeto

  11. Adicionar um tipo de objeto fornece a tela abaixo.

    exibindo o tipo de objeto recém-criado

  12. O painel direito correspondente ao tipo de objeto permite que você mantenha os atributos e suas propriedades para o tipo de objeto selecionado. Selecione Adicionar. Uma nova janela é aberta para adicionar atributos:

    Atributo e tipo de dados

    Atributo e tipo de dados com a opção Âncora selecionada

  13. A tela a seguir é exibida depois de adicionar todos os atributos necessários:

    Tipo de objeto com informações de atributo

  14. O tipo de objeto e os atributos, uma vez criados, fornecem fluxos de trabalho em branco que atendem às operações executadas no MIM (Microsoft Identity Manager 2016).

    Tipos de objeto mostra as operações que o funcionário pode executar

Configurar fluxos de trabalho na Ferramenta de Configuração de Serviço Web

A próxima etapa é configurar os fluxos de trabalho para o tipo de objeto. Os arquivos de fluxo de trabalho são uma série de atividades que são usadas pelo Conector de Serviços Web em tempo de execução. Os fluxos de trabalho são usados para implementar a operação mim apropriada. A Ferramenta de configuração do Serviço Web ajuda você a criar quatro fluxos de trabalho diferentes:

  • Importação: importe dados de uma fonte de dados para os dois tipos de fluxos de trabalho a seguir:

    • Importação completa: uma importação completa que pode ser configurada.
    • Importação delta: não há suporte para a Ferramenta de Configuração de Serviço Web.
  • Exportar: exportar dados do MIM para uma fonte de dados conectada. As três ações a seguir têm suporte para a operação. Você pode configurar essas ações com base em seus requisitos.

    • Adicionar
    • Excluir
    • Substitua
  • Senha: execute o gerenciamento de senha para o usuário (tipo de objeto). Duas ações estão disponíveis para esta operação:

    • Definir senha
    • Alterar senha
  • Conexão de Teste: configure um fluxo de trabalho para marcar se a conexão com o servidor de fonte de dados for estabelecida com êxito.

Observação

Você pode configurar esses fluxos de trabalho para seu projeto ou baixar o projeto padrão no Centro de Download da Microsoft.

Designer de Fluxo de Trabalho

O Designer de Fluxo de Trabalho abre a área de trabalho para configurar o fluxo de trabalho de acordo com o requisito. Para cada tipo de objeto (novo /existente), a ferramenta de configuração fornece os nós para fluxos de trabalho compatíveis com a ferramenta.

Designer de Fluxo de Trabalho

A Designer de fluxo de trabalho é composta pelos seguintes elementos de interface do usuário:

  • Nós no painel esquerdo: eles ajudam você a selecionar qual você deseja projetar qual fluxo de trabalho.

  • Central Workflow Designer: aqui você pode descartar as atividades para configurar os fluxos de trabalho. Para realizar várias operações do MIM (Exportar, Importar, Gerenciamento de senha), você pode usar as atividades de fluxo de trabalho padrão e personalizadas do .NET Workflow Framework 4. A ferramenta Configuração de Serviço Web usa atividades de fluxo de trabalho padrão e personalizadas. Para obter mais informações sobre atividades padrão, consulte Usando designers de atividade.

    • No fluxo de trabalho central Designer, um círculo vermelho com ponto de exclamação ao lado de qualquer atividade indica que a operação foi descartada e não está definida corretamente e completamente. Passe o mouse sobre o círculo vermelho para descobrir o erro exato. Depois que a atividade é definida corretamente, o círculo vermelho muda para a marca de informações amarela.

    • No fluxo de trabalho central Designer, uma marca de informações de triângulo amarelo ao lado de qualquer atividade indica que a atividade está definida, mas há mais que você pode fazer para concluir a atividade. Passe o mouse sobre o triângulo amarelo para ver mais informações.

  • Caixa de ferramentas: empacota todas as ferramentas, incluindo atividades personalizadas e sistema e instruções predefinidas para projetar o fluxo de trabalho. Para saber mais, confira Caixa de Ferramentas.

  • Seções da caixa de ferramentas: a Caixa de Ferramentas tem as seguintes seções e categorias:

    • Descrição: o cabeçalho da Caixa de Ferramentas. Uma guia acessa a Caixa de Ferramentas e as propriedades da atividade de fluxo de trabalho selecionada.

    • Importar fluxo de trabalho: atividades personalizadas para configurar fluxos de trabalho de importação.

    • Fluxo de trabalho de exportação: atividades personalizadas para configurar fluxos de trabalho de exportação.

    • Comum: atividades personalizadas para configurar qualquer fluxo de trabalho.

    • Depuração: atividades de fluxo de trabalho do sistema para depuração definidas no Fluxo de Trabalho 4. Essas atividades permitem o acompanhamento de problemas de um fluxo de trabalho.

    • Instruções: atividades de fluxo de trabalho do sistema definidas no Fluxo de Trabalho 4. Para obter mais informações, consulte Usando designers de atividade.

  • Propriedades: a guia propriedades exibe as propriedades de uma atividade de fluxo de trabalho específica que é descartada na área do designer e selecionada. A figura à esquerda mostra as propriedades de Atribuir atividade. Para cada atividade, as propriedades diferem e são usadas durante a configuração do fluxo de trabalho personalizado. Essa guia permite que você defina os atributos da ferramenta selecionada que foi descartada no designer de fluxo de trabalho central. Para obter mais informações, consulte Propriedades.

  • Barra de Tarefas: A barra de tarefas inclui três elementos: Variáveis, Argumentos e Importações. Esses elementos são usados junto com atividades de fluxo de trabalho. Para obter mais informações, consulte Introdução de um desenvolvedor ao WF (Windows Workflow Foundation) no .NET 4.

Configurar um fluxo de trabalho de importação completo na Ferramenta de Configuração do Serviço Web

As etapas a seguir mostram como configurar fluxos de trabalho de importação completos para SOAP usando a Ferramenta de Configuração do Serviço Web.

Aviso

Este exemplo cria apenas um fluxo de trabalho. Modificações no fluxo de trabalho, como usar a lógica personalizada na API, podem ser necessárias.

  1. Selecione o fluxo de trabalho Importação Completa a ser configurado. Os Argumentos e Importações já estão definidos e são específicos para as atividades. Confira as telas a seguir para obter mais informações.

    Argumentos completos do fluxo de trabalho de importação

    Namespaces importados

    Após a reconfiguração das chamadas, altere os nomes dos atributos que alteram, adicione ou altere o namespace para variáveis que se referem à estrutura de retorno da API e dos tipos de objeto que se referem ao namespace antigo. A caixa de ferramentas no painel direito contém todas as atividades personalizadas específicas do fluxo de trabalho necessárias para a configuração. Atribua os valores às variáveis que você usará para sua lógica. Vá para a seção inferior do designer de fluxo de trabalho central e declare as variáveis. As variáveis são declaradas na próxima etapa.

  2. Adicione uma atividade Sequence. Arraste o designer de atividade Sequência da Caixa de Ferramentas e solte-o na superfície Designer fluxo de trabalho do Windows. Consulte as telas a seguir. A atividade Sequence contém uma coleção ordenada de atividades filho que ela executa na ordem.

    Atividade de sequência

  3. Para adicionar uma variável, localize Criar Variável. Digite wsResponse para o Nome, selecione a lista suspensa Tipo de variável e, em seguida, selecione Procurar Tipos. Uma caixa de diálogo é exibida. SelecioneRespostapadrão>gerada>. Mantenha os valores Escopo e Padrão não selecionados. Como alternativa, defina esses valores usando a exibição Propriedades .

    Resposta padrão

    Propriedades de importação completas

  4. Agora, adicione todas as outras variáveis e abaixo está a tela final.

    Variáveis de importação completas

  5. Arraste mais um designer de atividade Sequência da Caixa de Ferramentas dentro da atividade Sequence já adicionada.

  6. Arraste um WebServiceCallActivity apresentado em Comum. Essa atividade é usada para invocar a operação de serviço Web disponível após a Descoberta. Essa é uma atividade personalizada e é comum em diferentes cenários de operação.

    Operação de nome do serviço

    Para usar a operação de serviço Web, defina as seguintes propriedades:

    • Nome do Serviço: insira um nome para o serviço Web.

    • Nome do ponto de extremidade: especifique um nome de ponto de extremidade para o serviço selecionado.

    • Nome da operação: especifique a respectiva operação para o serviço.

    • Argumento: selecione Argumentos. Na próxima caixa de diálogo, atribua os valores de argumento, conforme mostrado na figura a seguir:

      Atribuir argumentos

      Importante

      Não altere o Nome, Direção ou Tipo para um argumento usando essa caixa de diálogo. Se qualquer um desses valores for alterado, a atividade se tornará inválida. Defina apenas o Valor para o argumento . Conforme mostrado nesta figura, o valor wsResponse é definido.

  7. Adicione uma atividade ForEach logo abaixo de WebServiceCallActivity. Essa atividade é usada para iterar em todos os atributos (âncoras e não âncoras) do tipo de objeto. Ao arrastar essa atividade para a superfície Designer fluxo de trabalho, ela enumera automaticamente todos os nomes de atributo para o objeto. Defina os valores necessários de acordo com a tela a seguir:

    Atividade de chamada do Serviço Web

  8. Arraste uma atividade CreateCSEntryChangeScope dentro do corpo de ForEach . Essa atividade é usada para criar uma instância do objeto CSEntryChange no domínio de fluxo de trabalho para cada registro respectivo ao recuperar dados da fonte de dados de destino. Arrastar essa atividade fornece a tela abaixo. As atividades CreateAnchorAttribute são herdadas automaticamente.

    Criar atividade de escopo de alteração de entrada do CS

  9. Defina o valor da expressão DN como ‘string.Concat ("Employee",item.EmployeeID)’. Defina AnchorValue para o EmployeeID como 'Convert.tostring(item. EmployeeID)'. Defina ObjectTypeName como Employee. Depois de fazer essas modificações, você verá a seguinte tela:

    Obter a ID do funcionário

    Observação

    Os valores de âncora e os nomes de objeto variam de acordo com o serviço Web exposto. A figura mostra um exemplo.

  10. Arraste uma atividade CreateAttributeChange abaixo da atividade CreateAnchorAttribute . O número de atividades a serem arrastadas é igual ao número de atributos não âncoras. Consulte a figura a seguir para obter referência.

    Criar âncora

  11. Arraste CreateValueChangeActivity dentro da atividade CreateAttributeChange e defina o valor do atributo de acordo com a tela abaixo.

    Alterar um atributo

    Observação

    Para usar essa atividade, escolha e atribua os respectivos campos na lista suspensa e atribua os valores. Para atributos multivalorizados, descarte várias atividades CreateValueChangeActivity dentro de uma atividade CreateAttributeChangeActivity .

  12. Para adicionar condições para um atributo, adicione uma atividade If , conforme mostrado na figura a seguir:

    Atividade If

  13. Por fim, adicione uma atividade Assign e defina a expressão , conforme mostrado na figura a seguir:

    Atribuir atividade e definir a expressão

  14. Salve este projeto no local %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions.

    Os projetos padrão devem ser baixados e salvos no local %FIM_INSTALL_DIR\2010\Synchronization Service\Extensions no sistema de destino. Os projetos ficam visíveis no assistente do conector de serviço Web.

    Ao executar o arquivo executável, você será solicitado a especificar o local para a instalação. Insira o local de salvamento.

    Importante

    O arquivo de projeto pode ser salvo e aberto de qualquer local (com os privilégios de acesso apropriados de seu executor). Somente os arquivos de projeto salvos na Synchronization Service\Extension pasta podem ser selecionados no assistente do conector do Serviço Web acessado por meio da interface do usuário de sincronização do MIM.

    O usuário que está executando a ferramenta configuração de serviço Web requer os seguintes privilégios:

    • Controle total para a pasta Extensão do Serviço de Sincronização.
    • Acesso de leitura à chave HKLM\System\CurrentControlSet\Services\FIMSynchronizationService\Parameters do Registro por meio da qual o caminho da pasta Extensão está localizado.

Configurar fluxos de trabalho de exportação na Ferramenta de Configuração do Serviço Web

As seções a seguir mostram como exportar seus fluxos de trabalho usando a Ferramenta de Configuração do Serviço Web.

Adicionar fluxos de trabalho

Adicione fluxos de trabalho de exportação seguindo estas etapas na Ferramenta de Configuração do Serviço Web.
  1. Selecione o fluxo de trabalho de exportação a ser configurado. Em Exportar, selecione Adicionar. Os Argumentos e Importações já estão definidos e são específicos para as atividades. Consulte as telas a seguir para referência.

    Captura de tela mostrando Adicionar no painel de navegação.

  2. Adicione uma atividade Sequence . Arraste o designer de atividade Sequência da Caixa de Ferramentas e solte-o na superfície Designer fluxo de trabalho do Windows. A atividade Sequence contém uma coleção ordenada de atividades filho que ela executa em ordem. Selecione Criar Variável. Atribua os valores às variáveis que você usará para sua lógica.

    Exportar

    Observação

    As etapas para adicionar uma variável são descritas na seção para criar fluxos de trabalho de importação completos.

  3. Arraste uma atividade ForEach dentro da atividade Sequence já adicionada para iterar sobre valores de atributo de âncora.

  4. Selecione Propriedades e defina os Valores de acordo com a tela abaixo. Aqui objectToExport é argumento.

    Captura de tela mostrando os valores definidos para a atividade ForEach.

  5. Definir DisplayName como ForEach<AnchorAttribute>

    Captura de tela mostrando a definição de DisplayName.

  6. Defina TypeArgument como Microsoft.MetadirectoryServices.AnchorAttribute.

    Captura de tela mostrando o conjunto TypeArgument.

  7. Adicione uma atividade Switch no corpo ForEach do AnchorAttribute.

    Captura de tela mostrando como adicionar uma atividade Switch no corpo ForEach do AnchorAttribute.

  8. Adicione uma expressão de acordo com a tela abaixo.

    Adicionar uma expressão

  9. Selecione Adicionar um novo caso e insira um valor para a EmployeeId. Arraste uma atividade Sequence e, dentro dela, adicione uma atividade Atribuir .

    Captura de tela mostrando como adicionar um novo caso para o Employee I d.

  10. Atribua as propriedades To e Value para a atividade Assign .

    Captura de tela mostrando as propriedades To e Value para essa atividade.

  11. A atividade ForEach é usada para valores de âncora. Adicione outra atividade ForEach para atribuir valores não ancorados. Neste exemplo, a âncora AttributeChange é usada.

    Adicionar outra atividade ForEach com a âncora AttributeChange

  12. Adicione uma atividade Switch no corpo forEach da âncora AttributeChange .

    Adicionar atividade switch para a âncora AttributeChange

  13. Adicione uma expressão de acordo com a tela abaixo.

    Adicionar uma expressão para a atividade de comutador

  14. Selecione Adicionar um novo caso e insira um valor para o FirstName. Arraste uma atividade Sequence e, dentro dela, adicione uma atividade Atribuir . Atribua as propriedades To e Value para a atividade Assign .

    Adicionar um novo caso para a sequência

  15. Adicione valores para os atributos necessários, como LastName, Email e assim por diante.

    Adicionar valores para atributos necessários

  16. Em Comum, arraste um WebServiceCallActivity e defina Valores para seus Argumentos.

    Captura de tela da seção mostrando a atividade de chamada do Serviço Web e definindo os valores.

    Importante

    Não altere o Nome, Direção ou Tipo para um argumento usando essa caixa de diálogo. Se qualquer um desses valores for alterado, a atividade se tornará inválida. Defina apenas o Valor para o argumento . Conforme mostrado nesta figura, o valor wsResponse é definido.

  17. Por fim, adicione uma atividade If para marcar respostas retornadas da operação do serviço Web.

A criação do fluxo de trabalho de exportação com a operação Adicionar foi concluída:

Fluxo de trabalho de exportação concluído

Salve este projeto no local %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions.

Excluir fluxos de trabalho

Exclua fluxos de trabalho de exportação seguindo estas etapas na Ferramenta de Configuração do Serviço Web.

  1. Selecione o fluxo de trabalho de exportação a ser configurado. Em Exportar, selecione Excluir. Os Argumentos e Importações já estão definidos e são específicos para as atividades. Consulte as telas a seguir para referência.

    Exportar fluxos de trabalho de exclusão

  2. Adicione uma atividade Sequence . Selecione Criar Variável. Atribua os valores às variáveis que você usará para sua lógica.

    Adicionar uma atividade de sequência

    Observação

    As etapas para adicionar uma variável são descritas na seção para criar fluxos de trabalho de importação completos.

  3. Arraste uma atividade ForEach dentro da atividade Sequence já adicionada para iterar sobre valores de atributo de âncora.

  4. Selecione Propriedades e defina os Valores por tela abaixo. Aqui objectToExport é argumento.

    Captura de tela mostrando como definir as propriedades para a atividade ForEach.

  5. Defina DisplayName como ForEach\<AnchorAttribute\>:

    Captura de tela mostrando como definir o nome de exibição.

  6. Defina TypeArgument como Microsoft.MetadirectoryServices.AnchorAttribute:

    Captura de tela mostrando como definir o argumento de tipo.

  7. Adicione uma atividade Switch no corpo ForEach do AnchorAttribute.

    Captura de tela mostrando a adição de uma atividade switch.

  8. Adicione uma expressão de acordo com a tela abaixo.

    Adicionar uma expressão

  9. Selecione Adicionar um novo caso e insira um valor para a EmployeeId. Arraste uma atividade Sequence e, dentro dela, adicione uma atividade Atribuir .

    Captura de tela mostrando a adição de um novo caso e atribuindo-o à sequência.

  10. Atribua as propriedades To e Value para a atividade Assign .

    Captura de tela mostrando como atribuir as propriedades To e Value para as atividades de atribuição.

  11. Em Comum, arraste um WebServiceCallActivity e defina Valores para seus Argumentos.

    Captura de tela e chamada mostrando valores de argumentos para adicionar uma atividade de chamada do Serviço Web.

    Importante

    Não altere o Nome, Direção ou Tipo para um argumento usando essa caixa de diálogo. Se qualquer um desses valores for alterado, a atividade se tornará inválida. Defina apenas o Valor para o argumento . Conforme mostrado nesta figura, o valor employeeID é definido.

  12. Por fim, adicione uma atividade If para marcar as respostas retornadas da operação do serviço Web.

A exclusão do fluxo de trabalho de exportação com a operação Delete foi concluída:

Fluxo de trabalho de exportação excluído

Salve este projeto no local %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions.

Substituir fluxos de trabalho

Substitua os fluxos de trabalho de exportação seguindo estas etapas na Ferramenta de Configuração do Serviço Web.

  1. Selecione o fluxo de trabalho de exportação a ser configurado. Em Exportar, selecione Substituir. Os Argumentos e Importações já estão definidos e são específicos para as atividades. Veja a tela abaixo para referência.

    Substituir um fluxo de trabalho

  2. Adicione uma atividade Sequence .

  3. Arraste uma atividade ForEach para o< AnchorAttribute>.

  4. Adicione outra atividade AttributeChange> ForEach< para atribuir valores que não são de âncora.

  5. Por fim, a tela se parece com a figura a seguir. As instruções para configurar essa atividade são fornecidas na seção para adicionar fluxos de trabalho de exportação.

    ForEach com uma atividade Switch e um atributo de âncora

  6. Em Comum, arraste um WebServiceCallActivity e defina Valores para seus Argumentos.

    Captura de tela mostrando valores para adicionar uma atividade de chamada de Serviço Web.

    Importante

    Não altere o Nome, Direção ou Tipo para um argumento usando essa caixa de diálogo. Se qualquer um desses valores for alterado, a atividade se tornará inválida. Defina apenas o Valor para o argumento . Conforme mostrado nesta figura, o valor funcionário é definido.

  7. Por fim, adicione uma atividade If para marcar as respostas retornadas da operação do serviço Web.

A substituição do fluxo de trabalho de exportação pela operação Substituir foi concluída:

Substituir fluxo de trabalho de exportação

Salve este projeto no local %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions.

Atividades de depuração

As atividades personalizadas a seguir estão disponíveis para ajudar a depurar o modelo de fluxo de trabalho.

Atividade de log

A atividade Log é usada para gravar mensagens de texto no arquivo de log. Para obter mais informações, confira Log.

Observação

Se você não conseguir depurar facilmente seu fluxo de trabalho, tente depurar o fluxo de trabalho no ambiente de produção.

Para usar a atividade Log , defina as propriedades a seguir. As propriedades ficam visíveis quando você seleciona a atividade no fluxo de trabalho Designer e exibe as Propriedades da atividade.

Atividade WriteLine

A atividade WriteLine é usada para gravar mensagens de texto no gravador de um provedor. Se nenhum gravador estiver disponível, a atividade WriteLine gravará o texto na janela do console.

Na caixa de texto, escreva a mensagem que você deseja que fique visível no destino do gravador.

Importante

A janela do console não pode ser usada para essa atividade. Use outro gravador de saída de janela para essa tarefa.

Para usar a atividade WriteLine , defina as propriedades a seguir. As propriedades ficam visíveis quando você seleciona a atividade no fluxo de trabalho Designer e exibe as Propriedades da atividade.

  • Nível de Log: especifica a quantidade de conteúdo a ser gravada no valor de log. Os valores possíveis são:

    • Alto: escreva a mensagem LogText no arquivo de log se a severidade do log estiver definida como Alta.
    • Detalhado: escreva a mensagem LogText no arquivo de log se a severidade do log estiver definida como Detalhado.
    • Desabilitado: não escreva no arquivo de log.
  • LogText: especifica o conteúdo do texto a ser gravado no log.

  • Marca: adiciona uma marca ao texto para identificar o tipo de conteúdo que está sendo gravado no log. Os valores possíveis são: Erro, Rastreamento ou Aviso.

Próximas etapas