Referenz: Wie bidirektionalen Fluss für EmployeeEndDate und AccountExpires haben Vor kurzem arbeitete ich an einem Szenario, wo wir mussten den Fluss der Daten zwischen EmployeeEndDate und AccountExpires zu kontrollieren. Dieses Szenario stellte einige interessante Herausforderungen und so beschloss ich, darüber zu bloggen und teilen die Informationen und Herausforderungen konfrontiert. Sie finden in diesem Blog eine Beschreibung des Szenarios, Herausforderungen konfrontiert und wie ich ging, um dieses Szenario erfolgreich abzuschließen. In dieser Lösung mussten wir uns auf Erweiterbarkeit verlassen. Wir verwendeten eine Management Agent-Erweiterung für den Active Directory-Verwaltungsagenten. Brauchen Sie, um EmployeeEndDate aus dem FIM-Portal zu accountExpires in Active Directory fließen zu müssen, um in der Lage sein, ein gültiges Datum Wert aus dem FIM-Portal in Active Directory über die Synchronization Service Engine fließen zu können, um ein leeres Datum fließen zu können, wenn der Datumswert leer ist Out aus dem FIM Portal in Active Directory über die Synchronization Service Engine Notwendigkeit, accountExpires von Active Directory zu EmployeeEndDate im FIM Portal zu fließen Notwendig, um ein gültiges Datum von Active Directory zum FIM Portal über die Synchronization Service Engine zu führen, muss sein können Sie den Standardwert von 9223372036854775807 aus dem Active Directory in das FIM Portal über die Synchronisation Service Engine fließen Need EmployeeEndDate (FIM Portal) FIM Portal eine 0 aus dem Active Directory in das FIM Portal über die Synchronisation Service Engine Attribute fließen zu können: Datum Wert FIM-Service-Management-Agent: String employeeEndDate (Synchronization Service Engine 8211 Metaverse) Zusatz employeeEndDate Attribut (Synchronization Service Engine 8211 Metaverse) accountExpires (Active Directory) Active Directory: Int64 oder lang Standardwert: 9223372036854775807 Herausforderungen Bidirektionale Fluss. Hier müssen beide Datenquellen, FIM Portal und Active Directory, maßgeblich sein. Dies führt zu einem Problem wegen Attributvorrang. Wenn ein Verwaltungsagent-Connector das Metaverse-Attribut löscht, bestimmt die Attributpriorität, was mit dem Metaverse-Attribut und seinem Wert geschieht. Konvertieren eines Strings in einen langen Integer - oder Int64-Datentyp. Die Umwandlung des Long-Integer oder int64-Datentyp in eine Zeichenfolge Nullwert oder eine leere Zeichenfolge wie ein Nullwert oder eine leere Zeichenfolge aus employeeEndDate 0 oder 9223372036854775807 zu handhaben wie die 0 oder Standardwert für accountExpires Lösung zu handhaben umreißen die Schritte skizziert unten für Sie fertig waren In einer neuen FIM Installation. Sie verfügen bereits über einen Active Directory-Verwaltungsagenten und einen FIM-Serviceverwaltungsagenten in Ihrer Lösung. Möglicherweise verfügen Sie bereits über eine Active Directory-Verwaltungsagentenerweiterung. Wenn Sie diese Dinge haben, dann müssen Sie einfach ändern Sie Ihre Lösung, um diese Schritte zu implementieren. Fügen Sie ein neues Metaverse-Attribut für ein zweites employeeEndDate Metaverse-Attribut hinzu. (Z. B. employeeEndDate2) Erstellen Sie zwei Verwaltungsagenten (HINWEIS: Wenn Sie bereits über einen FIM-Serviceverwaltungsagenten und einen Active Directory-Verwaltungsagenten verfügen, können Sie diesen Schritt überspringen) Active Directory-Verwaltungsagent FIM Service Management Agent Zeigen Sie die Eigenschaften der Active Directory-Verwaltung an Agenten und gehen Attribute Flow neues Attribut hinzufügen fließen für das Datenquellenobjekt Benutzer zur Metaverse Object Person Import und Export Attribute Flow konfigurieren: Datenquelle Spalte: accountExpires Spalte zu Metaverse: employeeEndDate zwischen den beiden Listenfelder am Boden, werden Sie Siehe Mapping-Typ. Dort wählen Sie Erweitert. Dies gilt sowohl für den Import als auch für den Exportattributfluss. Für den Export-Attributfluss muss im Feld Flussrichtung das Kontrollkästchen Nullwerte zulassen aktiviert sein. Wenn Sie keine zulässigen Werte zulassen haben, wird der Fluss beim Exportieren von Attributfluss ignoriert und der Zielserver-Active Directory-Verwaltungsagent-Connectorraum wird nicht aktualisiert. Klicken Sie auf OK, und speichern Sie die Eigenschaften des Active Directory-Verwaltungsagenten. Sehen Sie sich die Eigenschaften des FIM-Service-Management-Agenten und gehen Attribut konfigurieren fließt die Person zu Person Zweig erweitern und Neuen Import Attribute Flow für EmployeeEndDate neue employeeEndDate Metaverse attributegt HINWEIS ltYour: In meinem Beispiel verwende ich FIMemployeeEndDate. Click Ok, und speichern Sie die FIM Service Management Agent-Eigenschaften Aktualisieren Sie Ihre Active Directory Management Agent-Agent-Erweiterung in den Abschnitten MapAttributesForImport und MapAttributesForExport. Die Beispielcode-Abbildung ist unten im Abschnitt Solution Extension Code dokumentiert. Solution Extension Code HINWEIS: Bitte beachten Sie, dass der untenstehende Code eine Beispiel-Illustration ist, wie diese Lösung erreicht werden kann. Sie müssen höchstwahrscheinlich einige Änderungen vornehmen, damit der Code nach Ihren Geschäftsregeln in Ihrer Umgebung funktionieren kann. WICHTIGE HINWEISE: Testen Sie den Code in Ihrer Entwicklungstestumgebung vor der Implementierung in der Produktion. Sie müssen verstehen, wie dieser Code mit dem Rest Ihrer Identity Management Solution funktionieren wird. MapAttributesForExport (Code, der während der Export Attribute Flow ausgelöst wird) Ressource Links123623543512403 1218 bis 20998 Galsync 32622255631239512388123561239012398353522010712395123881235612390 20363228061239835211209981236926041 Microsoft. MetaDirectoryServices. UnexpectedDataException: Unbehandelte Flussregelnamen in MapAttributesForExport genannt mit Eintrag CS LTCS gt Kontakt CNltCN gt, OUltOU gt, DCltDC gt und Regelnamen fließen MsExchMasterAccountSidMappingForwards Microsoft. MetaDirectoryServices. GALSync. Synchronizer. LogAndThrowUnexpectedDataException (String ExceptionString) Microsoft. MetaDirectoryServices. GALSync. Synchronizer. MapAttributesForExport (String FlowRuleName, MVEntry mventry, CSEntry CSEntry) galsync. dll Public Sub MapAttributesForExport () Fall 8220 msExchMasterAccountSidMappingForwards 8221 RTM Case Else Case Else LogAndThrowUnexpectedDataException Fall msExchMasterAccountSidMappingForwards Public Sub MapAttributesForExport (ByVal FlowRuleName As String. Verstärker 8221 und Fluss Regelname 8220 Ampere FlowRuleName) msExchMasterAccountSidMappingForwads galsync. dll Select Case-Fall 8220msExchMasterAccountHistoryMappingForwards8221 msExchMasterAccountSidMappingForwads Case Else (8216 ()) LogAndThrowUnexpectedDataException ILM2007 FP1 MapAttributesForExport Fall Public Sub MapAttributesForExport (ByVal FlowRuleName As String.
Comments
Post a Comment