Guia de fluxo de trabalho do Conector do Serviço Web para um exemplo de API REST
Este artigo aborda a implementação de uma API REST de exemplo para percorrer a ferramenta de Configuração do Serviço Web com uma Origem de Dados Web da API REST.
Pré-requisitos
São necessários os seguintes pré-requisitos para utilizar o exemplo:
- A Ferramenta de Configuração do Serviço Web está instalada.
- O serviço de exemplo de origem de dados REST está implementado. Transfira e instale o exemplo a partir do (consulte aqui).
Nota
Os dados JSON têm de conter um único objeto com uma propriedade que contenha uma matriz.
{
"EmployeeList":[
{"id":"1","employee_name":"Albano","employee_salary":"22213","employee_age":"37","profile_image":""},{"id":"2","employee_name":"Albano","employee_salary":"22213","employee_age":"37","profile_image":""}
]
}
Configurar a deteção de projetos REST na Ferramenta de Configuração do Serviço Web
Os passos seguintes mostram-lhe como criar um novo projeto para a sua origem de dados na Ferramenta de Configuração do Serviço Web.
Abra a Ferramenta de Configuração do Serviço Web. Abre um projeto SOAP em branco.
Selecione Ficheiro>Novo>Projeto REST.
À esquerda, selecione Projeto REST e, em seguida, selecione Adicionar.
Na página seguinte, forneça as seguintes informações:
- O novo nome do serviço Web
- Endereço (caminho do URL da API REST)
- Espaço de Nomes
- Modo de segurança (tipo de autenticação)
O ecrã seguinte mostra exemplos destes valores:
Defina o Modo de Segurança como Nenhum. Defina o Endereço para o servidor JSON de exemplo alojado no Azure.
Selecione OK. O projeto REST listado na Ferramenta de Configuração dos Serviços Web.
O próximo passo é definir a chamada à API REST e traduzir a chamada para as chamadas do Windows Communication Foundation (WCF).
Expanda o Projeto REST e selecione o serviço RESTSAMPLE .
Selecione Adicionar. É-lhe pedido que adicione dois valores:
- Introduza o Nome. Este passo está etiquetado como 3 na captura de ecrã.
- Introduza o Endereço. Este passo está etiquetado como 4 na captura de ecrã.
- Selecione OK. É adicionado um recurso REST à descrição do serviço RESTSAMPLE .
Na caixa Recursos , selecione o recurso REST que acabou de adicionar. Adicione o seguinte método:
Selecione o método REST. Tenha em atenção que é possível criar vários métodos no mesmo recurso e definir as consultas transmitidas durante a execução.
Para o método GETALL, não são necessárias consultas. Deixe os valores dos parâmetros em branco. Ao exportar ou importar a API REST, tem de definir o Pedido de Exemplo /ou Resposta consoante a função. Copie e cole o JSON devolvido ao navegar para este exemplo.
Selecione Guardar. Guarde o projeto em
C:\Program Files\Microsoft Forefront Identity Manager\2010\Synchronization Service\Extensions
.
Nota
Depois de o projeto ser guardado, o ficheiro WsConfig é gerado. O ficheiro de configuração contém vários ficheiros que são definidos anteriormente na descrição geral do Serviço Web.
Configurar tipos de objetos na Ferramenta de Configuração do Serviço Web
Os passos seguintes mostram-lhe como configurar tipos de objetos para a sua origem de dados na Ferramenta de Configuração do Serviço Web.
O próximo passo é definir o esquema de espaço do conector. Isto é conseguido ao criar o Tipo de Objeto e definir os respetivos tipos de objeto. Clique em Tipos de Objetos no painel esquerdo e clique no botão Adicionar . Esta ação é aberta abaixo do ecrã. Adicione um novo tipo de objeto e forneça um nome. Clique no botão OK .
Adicionar um tipo de objeto fornece o ecrã abaixo.
O painel direito correspondente ao tipo de objeto permite-lhe manter os atributos e as respetivas propriedades para o tipo de objeto selecionado. Clicar no botão Adicionar fornece o ecrã abaixo, onde se pode adicionar atributos.
O ecrã abaixo é apresentado depois de adicionar todos os atributos necessários.
O tipo de objeto e os atributos depois de criados fornecem fluxos de trabalho em branco que atendem às operações realizadas no Microsoft Identity Manager (MIM).
Configurar fluxos de trabalho na Ferramenta de Configuração do Serviço Web
O próximo passo é configurar os fluxos de trabalho para o tipo de objeto. Os ficheiros de fluxo de trabalho são uma série de atividades que são utilizadas pelo Conector de Serviços Web no tempo de execução. Os fluxos de trabalho são utilizados para implementar a operação mim adequada. A Ferramenta de configuração do Serviço Web ajuda-o a criar quatro fluxos de trabalho diferentes:
Importação: importe dados de uma origem de dados para os dois tipos de fluxos de trabalho seguintes:
- Importação completa: uma importação completa que pode ser configurada.
- Importação delta: não suportada pela Ferramenta de Configuração do Serviço Web.
Exportar: exportar dados do MIM para uma origem de dados ligada. As três ações seguintes são suportadas para a operação. Pode configurar estas ações com base nos seus requisitos.
- Adicionar
- Eliminar
- Substituir
Palavra-passe: efetue a gestão de palavras-passe para o utilizador (tipo de objeto). Estão disponíveis duas ações para esta operação:
- Definir palavra-passe
- Alterar palavra-passe
Ligação de Teste: configure um fluxo de trabalho para verificar se a ligação com o servidor de origem de dados foi estabelecida com êxito.
Nota
Pode configurar estes fluxos de trabalho para o seu projeto ou transferir o projeto predefinido a partir do Centro de Transferências da Microsoft.
Estruturador de Fluxos de Trabalho
O Estruturador de Fluxos de Trabalho abre a área de trabalho para configurar o fluxo de trabalho de acordo com os requisitos. Para cada tipo de objeto (novo /existente), a ferramenta de configuração fornece os nós para fluxos de trabalho suportados pela ferramenta.
O Estruturador de Fluxos de Trabalho é composto pelos seguintes elementos de IU:
Nós no painel esquerdo: estes ajudam-no a selecionar o fluxo de trabalho que pretende estruturar.
Estruturador de Fluxo de Trabalho Central: aqui pode remover as atividades para configurar os fluxos de trabalho. Para realizar várias operações do MIM (Exportar, Importar, Gestão de palavras-passe), pode utilizar as atividades de fluxo de trabalho padrão e personalizadas do .NET Workflow Framework 4. A ferramenta de Configuração do Serviço Web utiliza atividades de fluxo de trabalho padrão e personalizadas. Para obter mais informações sobre atividades padrão, veja Utilizar designers de atividade.
No Estruturador de Fluxo de Trabalho Central, um círculo vermelho com um ponto de exclamação ao lado de qualquer atividade indica que a operação caiu e não está definida correta e completamente. Paire o cursor sobre o círculo vermelho para descobrir o erro exato. Depois de a atividade ser definida corretamente, o círculo vermelho muda para a marca de informação amarela.
No Estruturador de Fluxo de Trabalho Central, uma marca de informação de triângulo amarelo junto a qualquer atividade indica que a atividade está definida, mas há mais que pode fazer para concluir a atividade. Paire o cursor sobre o triângulo amarelo para ver mais informações.
Caixa de ferramentas: empacota todas as ferramentas, incluindo atividades personalizadas e de sistema e instruções predefinidas para estruturar o fluxo de trabalho. Para obter mais informações, consulte Caixa de Ferramentas.
Secções da caixa de ferramentas: a Caixa de Ferramentas tem as seguintes secções e categorias:
Descrição: o cabeçalho da Caixa de Ferramentas. Um separador acede à Caixa de Ferramentas e às propriedades da atividade de fluxo de trabalho selecionada.
Importar fluxo de trabalho: atividades personalizadas para configurar fluxos de trabalho de importação.
Exportar fluxo de trabalho: 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. Estas atividades permitem o controlo 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, veja Utilizar designers de atividade.
Propriedades: o separador propriedades apresenta as propriedades de uma determinada atividade de fluxo de trabalho que é removida na área do estruturador e selecionada. A figura à esquerda mostra as propriedades de Atribuir atividade. Para cada atividade, as propriedades diferem e são utilizadas ao configurar o fluxo de trabalho personalizado. Este separador permite-lhe definir os atributos da ferramenta selecionada que foi largada no estruturador de fluxo de trabalho central. Para obter mais informações, veja Propriedades.
Barra de Tarefas: A barra de tarefas inclui três elementos: Variáveis, Argumentos e Importações. Estes elementos são utilizados juntamente com as atividades de fluxo de trabalho. Para obter mais informações, veja Introdução de um programador ao Windows Workflow Foundation (WF) no .NET 4.
Configurar um fluxo de trabalho de importação completo na Ferramenta de Configuração do Serviço Web
Os passos seguintes mostram como configurar fluxos de trabalho de importação completos para a API REST com a Ferramenta de Configuração do Serviço Web.
Aviso
Este exemplo só cria um fluxo de trabalho. Podem ser necessárias modificações ao fluxo de trabalho, como a utilização de lógica personalizada na API.
Selecione o fluxo de trabalho Importação Completa a configurar. Os Argumentos e Importações já estão definidos e são específicos das atividades. Consulte os ecrãs seguintes para obter mais informações.
Após a reconfiguração das chamadas, tem de alterar os nomes dos atributos que alteram ou adicionam o espaço de nomes a variáveis que fazem referência à estrutura de retorno da API e aos tipos de objeto que fazem referência ao espaço de nomes 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 vai utilizar para a sua lógica. Aceda à secção inferior do estruturador de fluxo de trabalho central e declare as variáveis. As variáveis são declaradas no próximo passo.
Adicionar uma atividade de Sequência. Arraste o estruturador de atividade Sequência da Caixa de Ferramentas e largue-o na superfície Estruturador de Fluxos de Trabalho do Windows. Veja os ecrãs seguintes. A atividade Sequência contém uma coleção ordenada de atividades subordinadas que executa por ordem.
Para adicionar uma variável, localize Criar Variável. Escreva wsResponse para o Nome, selecione o menu pendente Tipo de variável e, em seguida, selecione Procurar Tipos. É apresentada uma caixa de diálogo. Selecionea RespostaGETALL>gerada>. Mantenha os valores Âmbito e Predefinidos desmarcados. Em alternativa, defina estes valores com a vista Propriedades .
Arraste mais um estruturador de atividade sequência da Caixa de Ferramentas dentro da atividade Sequência já adicionada.
Arraste um WebServiceCallActivity apresentado em Comum. Esta atividade é utilizada para invocar a operação de serviço Web disponível após a Deteção. Esta é uma atividade personalizada e é comum em diferentes cenários de operação.
Para utilizar a operação do serviço Web, defina as seguintes propriedades:
Nome do Serviço: introduza um nome para o serviço Web.
Nome do Ponto Final: especifique um nome de ponto final para o serviço selecionado.
Nome da Operação: especifique a respetiva operação para o serviço.
Argumento: selecione Argumentos. Na caixa de diálogo seguinte, atribua os valores do argumento, conforme mostrado na seguinte figura:
Importante
Não altere o Nome, Direção ou Tipo para um argumento através desta caixa de diálogo. Se algum destes valores for alterado, a atividade torna-se inválida. Defina apenas o Valor para o argumento . Conforme mostrado nesta figura, o valor wsResponse é definido.
Adicione uma atividade ForEach imediatamente abaixo de WebServiceCallActivity. Esta atividade é utilizada para iterar todos os atributos (âncoras e não âncoras) do tipo de objeto. Ao arrastar esta atividade para a superfície do Estruturador de Fluxos de Trabalho, enumera automaticamente todos os nomes de atributos do objeto. Defina os valores necessários de acordo com o ecrã seguinte:
Em alguns casos, poderá ter de abrir o generated.dll que se encontra no ficheiro WsConfig. Copie este ficheiro WsConfig e mude o nome do mesmo com a extensão .zip. Abra e extraia o generated.dll com a sua ferramenta de reflexão .NET preferida.
Identifique o espaço de nomes público da EmployeeList:
Em seguida, adicione este retorno ao fluxo de trabalho ForEach:
Arraste uma atividade CreateCSEntryChangeScope no corpo de ForEach . Esta atividade é utilizada para criar uma instância do objeto CSEntryChange no domínio de fluxo de trabalho para cada registo respetivo ao obter dados da origem de dados de destino. Arrastar esta atividade fornece o ecrã abaixo. As atividades CreateAnchorAttribute são herdadas automaticamente. Atualize o valor DN para o seu nome de domínio preferido.
Nota
Os valores de âncora e os nomes dos objetos variam de acordo com o serviço Web exposto. A figura mostra um exemplo.
Arraste uma atividade CreateAttributeChange abaixo da atividade CreateAnchorAttribute . O número de atividades a arrastar é igual ao número de atributos não ancorados. Veja a seguinte figura para referência.
Nota
Para utilizar esta atividade, selecione e atribua os respetivos campos a partir do menu pendente e atribua os valores. Para atributos de valores múltiplos, largue várias atividades CreateValueChangeActivity dentro de uma atividade CreateAttributeChangeActivity .
Guarde este projeto na localização
%FIM_INSTALL_FOLDER%\Synchronization Service\Extensions
. Em seguida, configure o Agente de Gestão conforme descrito na configuração do MA do Serviço Web.Os projetos predefinidos devem ser transferidos e guardados na localização
%FIM_INSTALL_DIR\2010\Synchronization Service\Extensions
no sistema de destino. Em seguida, os projetos são visíveis no assistente do conector do serviço Web.Ao executar o ficheiro executável, é-lhe pedido que especifique a localização da instalação. Introduza a localização para guardar.
Importante
O ficheiro de projeto pode ser guardado e aberto a partir de qualquer localização (com os privilégios de acesso adequados do executor). Apenas os ficheiros de projeto guardados na
Synchronization Service\Extension
pasta podem ser selecionados no assistente do conector do Serviço Web que é acedido através da IU de Sincronização do MIM.O utilizador que está a executar a ferramenta de Configuração do Serviço Web necessita dos seguintes privilégios:
- Controlo Total para a pasta Extensão do Serviço de Sincronização.
- Leia o acesso à chave
HKLM\System\CurrentControlSet\Services\FIMSynchronizationService\Parameters
de registo através da qual o caminho da pasta Extensão está localizado.