Wednesday 26 July 2017

Mapattributesforexport


Referência: Como ter fluxo bidirecional para EmployeeEndDate e AccountExpires Recentemente, trabalhei em um cenário onde devemos controlar o fluxo de dados entre EmployeeEndDate e AccountExpires. Este cenário forneceu alguns desafios interessantes e então eu decidi blogar sobre isso e compartilhar as informações e desafios enfrentados. Você encontrará neste blog uma descrição do cenário, os desafios enfrentados e a forma como eu fui para concluir com sucesso esse cenário. Nesta solução, precisávamos confiar na extensibilidade. Utilizamos uma extensão de agente de gerenciamento para o agente de gerenciamento do Active Directory. Precisa fluir EmployeeEndDate do Portal FIM para accountExpires no Active Directory Precisa ser capaz de fluir um valor de data válido do Portal FIM para o Active Directory por meio do Mecanismo de Serviço de Sincronização Precisa ser capaz de fluir uma data vazia quando o valor da data for apagado Do Portal FIM para o Active Directory através do mecanismo de serviço de sincronização Precisa fluir a contaExpire do Active Directory para EmployeeEndDate no Portal FIM Precisa ser capaz de fluir uma data válida do Active Directory para o Portal FIM através do Mecanismo de Serviço de Sincronização Precisa ser Capaz de fluir o valor padrão de 9223372036854775807 do Active Directory para o Portal FIM através do Mecanismo de Serviço de Sincronização Precisa ser capaz de fluir um 0 do Active Directory para o Portal FIM através do Serviço de Sincronização Atributos do Mecanismo EmployeeEndDate (Portal FIM) Portal FIM: Data Valor Agente de Gerenciamento de Serviço FIM: String employeeEndDate (Synchronization Service Engine 8211 Metaverse) EmployE adicional Atributo dDate (mecanismo de serviço de sincronização 8211 Metaverse) accountExpires (Active Directory) Active Directory: Int64 ou Longo Valor padrão: 9223372036854775807 Desafios Fluxo bidirecional. Aqui é onde as fontes de dados, FIM Portal e Active Directory, precisam ser autorizadas. Isso causará um problema devido à precedência de atributo. Se um conector de agente de gerenciamento exclui o atributo metaverso, a prioridade de atributo determinará o que acontece com o atributo metaverso e seu valor. Convertendo uma string para um inteiro longo ou tipo de dados int64. Convertendo o número de inteiro longo ou o tipo de dados int64 para uma cadeia Valor nulo ou Cadeia vazia Como lidar com um valor nulo ou uma Cadeia vazia de employeeEndDate 0 ou 9223372036854775807 Como lidar com o valor 0 ou padrão para accountExpires Solution Outline As etapas descritas abaixo para você foram concluídas Em uma nova instalação FIM. Você já pode ter um Agente de Gerenciamento do Active Directory e um Agente de Gerenciamento de Serviços da FIM na sua solução. Você já pode ter uma extensão do agente de gerenciamento do Active Directory. Se você tiver essas coisas, então você precisará modificar sua solução para implementar essas etapas. Adicione um novo atributo Metaverse para um segundo atributo Metaverse do empregado. (Por exemplo, employeeEndDate2) Crie dois agentes de gerenciamento (NOTA: se você já possui um Agente de Gerenciamento de Serviço FIM e um Agente de Gerenciamento do Active Directory, você pode ignorar esta etapa) Agente de Gerenciamento de Gerenciamento do Active Directory Agente de Gerenciamento de Serviço FIM Veja as Propriedades do Gerenciamento do Active Directory Agente e vá para Configurar o Fluxo de Atributos Adicionar novo fluxo de atributos para o Usuário de Objeto de Origem de Dados para Metaguard Object Importar e exportar Fluxo de Atributo: Fonte de Dados Coluna: accountExpires to Metaverse Column: employeeEndDate Entre as duas caixas de listagem na parte inferior, você irá Ver Tipo de mapeamento. Escolha Avançado. Isso será para o fluxo de atributos de importação e exportação. Para Exportar fluxo de atributos, na caixa Direção de fluxo, certifique-se de verificar Permitir anões. Se você não tiver Permitir Nulos marcados, o fluxo pára durante o fluxo de atributos de exportação e não atualiza o Espaço do conector do agente do Active Directory Management do destino. Clique em OK e salve as propriedades do agente de gerenciamento do Active Directory. Veja as Propriedades do Agente de Gerenciamento de Serviço FIM e vá para Configurar Fluxos de Atributos Expanda o ramo Pessoa a Pessoa e adicione novo fluxo de Atributo de Importação para EmployeeEndDate para o seu novo atributo de metaversário employeeEndDate NOTA: No meu exemplo, estou usando FIMemployeeEndDate. Clique em Ok e salve o Propriedades do agente de gerenciamento de serviços da FIM Atualize a extensão do agente de gerenciamento do agente do Active Directory Management nas seções MapAttributesForImport e MapAttributesForExport. A ilustração do código de exemplo está documentada abaixo na seção Código de extensão da solução. Código de extensão da solução NOTA: Observe que o código abaixo é uma ilustração de exemplo de como essa solução pode ser realizada. Você provavelmente terá que fazer algumas modificações para permitir que o código funcione em seu ambiente de acordo com suas regras de negócios. NOTA IMPORTANTE: Certifique-se de testar o código em seu ambiente de teste de desenvolvimento antes da implementação em produção. Você precisa entender como este código funcionará com o resto de sua Solução de Gerenciamento de Identidade. MapAttributesForExport (código que irá disparar durante Export atributo fluxo) Resource Links123623543512403 1218 Up 20998 GALSync 32622255631239512388123561239012398353522010712395123881235612390 20363228061239835211209981236926041 Microsoft. MetaDirectoryServices. UnexpectedDataException: Unhandled nome regra de fluxo em MapAttributesForExport chamada com o contato de entrada CS LTCS gt CNltCN gt, OUltOU gt, DCltDC gt e fluxo nome da regra MsExchMasterAccountSidMappingForwards Microsoft. MetaDirectoryServices. GALSync. Synchronizer. LogAndThrowUnexpectedDataException (String ExceptionString) Microsoft. MetaDirectoryServices. GALSync. Synchronizer. MapAttributesForExport (String FlowRuleName, MVEntry mventry, CSEntry CSEntry) Caso Galsync. dll Public Sub MapAttributesForExport () 8220 msExchMasterAccountSidMappingForwards 8221 Caso RTM Case Else Else LogAndThrowUnexpectedDataException Caso msExchMasterAccountSidMappingForwards Public Sub MapAttributesForExport (ByVal FlowRuleName As String. Amp 8221 e fluxo Nome da regra 8220 amp FlowRuleName) msExchMasterAccountSidMappingForwads Galsync. dll Selecione Case Case 8220msExchMasterAccountHistoryMappingForwards8221 msExchMasterAccountSidMappingForwads Case Else (8216 ()) LogAndThrowUnexpectedDataException ILM2007 FP1 MapAttributesForExport Case Public Sub MapAttributesForExport (ByVal FlowRuleName As String).

No comments:

Post a Comment