Kent Nordström Blog: Twitter: © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se.

Slides:



Advertisements
Similar presentations
Microsoft Dynamics® AX 2012
Advertisements

Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification.
PHYS707: Special Topics C++ Lectures Lecture 2. Summary of Today’s lecture: 1.More data types 2.Flow control (if-else, while, do-while, for) 3.Brief introduction.
Whether you like it or not! Importance increases significantly with SharePoint 2013 Pretty much every investment area relies on Profiles for core.
Semantics Static semantics Dynamic semantics attribute grammars
Relational Algebra, Join and QBE Yong Choi School of Business CSUB, Bakersfield.
The Instant Replay MA for FIM
The FIM Team User Group Proudly sponsored by. Housekeeping I am speaking now – check your audio settings if you can’t hear Keep your mic muted unless.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification.
Identity Management with Microsoft Identity Integration Server.
Ch1: File Systems and Databases Hachim Haddouti
Getting Started (Excerpts) Chapter One DAVID M. KROENKE’S DATABASE CONCEPTS, 2 nd Edition.
Database Systems More SQL Database Design -- More SQL1.
Discover, Master, InfluenceSlide 1 SQL Server Compact Edition and the Entity Framework Rob Sanders Readify.
#CONVERGE2014 Session 1304 Managing Telecom Directories in a Distributed or Multi-Vendor Environment David Raanan Starfish Associates.
Automate Microsoft Azure Ross Sponholtz Mark Ghazai.
Chapter Oracle Server An Oracle Server consists of an Oracle database (stored data, control and log files.) The Server will support SQL to define.
Developing Workflows with SharePoint Designer David Coe Application Development Consultant Microsoft Corporation.
CSE314 Database Systems More SQL: Complex Queries, Triggers, Views, and Schema Modification Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson.
HAP 709 – Healthcare Databases SQL Data Manipulation Language (DML) Updated Fall, 2009.
The FIM Team User Group Proudly sponsored by November 2014.
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Workflow Development Overview Architecture Requirements Types of workflows Stages of workflow.
@CRMUG Technical Academy Fetch Xml Were can Fetch Xml be used Basic Fetch Xml and using advanced find to build your own Fetch Query Creating Fetch Xml.
By: Matt Batalon, MCITP  Another form of temporary storage that can be queried or joined against, much like a table variable, temp.
Microsoft Dynamics NAV 2009 Building Web Services.
Copyright © 2010 Certification Partners, LLC -- All Rights Reserved Perl Specialist.
FIM Best Practices – Technical Deep-Dive Carol Wapshere, MVP Identity Management Specialist Unify Solutions SIM423.
Presentation_title Forefront Identity Manager 2010
3-Tier Client/Server Internet Example. TIER 1 - User interface and navigation Labeled Tier 1 in the following graphic, this layer comprises the entire.
Using the Table API. Standard Uses of API Populate Columns via Sequences Insert Default Values instead of nulls Populate Autogen Columns –Date Created,
Making Entitlements in AD Understandable to the Business Rob de Jong Senior Program Manager Microsoft Corporation SIA314.
Windows Role-Based Access Control Longhorn Update
SharePoint 2010 Business Intelligence Module 5: Business Connectivity Services.
Copyright © 2003 ProsoftTraining. All rights reserved. Perl Fundamentals.
 CS 405G: Introduction to Database Systems Lecture 6: Relational Algebra Instructor: Chen Qian.
6 Copyright © 2007, Oracle. All rights reserved. Retrieving Data Using Subqueries.
Higher Computing Software Development -So Far- 5/10/10.
+ Publishing Your First Post USING WORDPRESS. + A CMS (content management system) is an application that allows you to publish, edit, modify, organize,
ADO.NET 3.0 – Entity Data Model Gert E.R. Drapers Chief Software Architect Visual Studio Team Edition for Database Professionals Microsoft Corporation.
Introducing Novell ® Identity Manager 4 Insert Presenter's Name (16pt) Insert Presenter's Title (14pt) Insert Company/ (14pt)
ASP.net Course From Intermediate to Advance level By Arsalan Ahmed 3 Months Course Cell :
Rolando Jimenez Sr. Lead Program Manager Microsoft Corporation.
20 Copyright © 2006, Oracle. All rights reserved. Best Practices and Operational Considerations.
Hybrid –the state of the art Hugh Simpson-Wells 2016 Redmond Summit | Identity Without Boundaries May 24 th 2016 CEO
Intro to Declarative Workflows in SharePoint Daryl Rasmussen, MCSD (.NET), MSTS (Moss 2007), MCSD (SP 2010) Calgary SharePoint Users Group.
2 Copyright © 2008, Oracle. All rights reserved. Building the Physical Layer of a Repository.
More SQL: Complex Queries, Triggers, Views, and Schema Modification
Jonathan Rosenberg dynamicsoft
4/12/2018 5:44 PM BRK3354 Using custom themes and designs to standardize the creation of clean, functional SharePoint sites Sean Squires
More SQL: Complex Queries,
A variable is a name for a value stored in memory.
Using a 2nd MIM as data generator for referential objects
Dynamics GP SmartList and SmartList Designer
Data Warehousing/Loading the DW—Topics
Informatica PowerCenter Performance Tuning Tips
Quiz Questions Q.1 An entity set that does not have sufficient attributes to form a primary key is a (A) strong entity set. (B) weak entity set. (C) simple.
Introduction to Database Systems, CS420
Decision Making in Code Logical Tests & Truth Logical Expressions
Kent Nordström Blog: Twitter:
Writing Correlated Subqueries
FIM User Group BHOLD Eihab Isaac (FIM MVP) 11/14/2018
More SQL: Complex Queries, Triggers, Views, and Schema Modification
SQL Fundamentals in Three Hours
Relational Calculus and QBE
SharePoint 2016 in MIM 2016 Robi Vončina Kompas Xnet.
Relational Calculus and QBE
Attribute Assistant’s Top 10 Rules
Identifying & Creating Use Cases - Part 3
TN19-TCI: Integration and API management using TIBCO Cloud™ Integration
Data Warehousing/Loading the DW—Topics
Presentation transcript:

Kent Nordström Blog: Twitter: © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se

Topic © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se FIM 2010 R2 codeless (or less-code) deployments

FIM 2010 R2 Handbook © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se

History © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se MIIS/ILM“All” logic built using Visual Studio Case "user:description" Dim description As String = String.Empty If mventry("inetUserStatus").IsPresent Then description = mventry("inetUserStatus").Value Else description = "missing" End If FIM 2010Declarative Synchronization Rules Declarative Provisioning IIF(companyActive, IIF(IsPresent(companyUAC),BitAnd( ,companyUAC),512), IIF(IsPresent(companyUAC),BitOr(2,companyUAC),514))  userAccountControl

Synchronization Rules © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se NO ERE’s and DRE’s Multiple Outbound rules to avoid complex IIF logic Rule 1: Common user attributes Rule 2: Provisioning Employee Rule 3: Provisioning Students “Kent’s Best Practices”

Synchronization Rules – cont. © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se CustomExpression rather than UI function builder RulesExtensions Shared DLL: CompanyRulesExtension.dll Flow rule name: MA:ObjectType:TargetAttribute Type conversions DateTime dtFileTime = DateTime.FromFileTime(csentry["lastLogonTimestamp"].IntegerValue); mventry["companyLastLogon"].Value = dtFileTime.ToUniversalTime().ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.000'"); MultiValue attributes if (csentry["proxyAddresses"].IsPresent) {if(csentry["proxyAddresses"].Values.Contains("SMTP:" + mventry[" "].Value.ToLower())) {break;} }else {csentry["proxyAddresses"].Values.Add("SMTP:" + mventry[" "].Value.ToLower());} “Kent’s Best Practices”

Boolean flags © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se MA1: Inbound InMA1 = true AllObjects MA : Inbound InMA1 = false Synchronization Rule IIF(InMA1),… Scoping Filter InMA1 equal true

References! © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se Extend FIM schema to handle Organizational tree Modify connected systems to get References Take a turn through SQL to enhance References PowerShell MA gives extended possibilities

Update using Reference © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se

Update using Reference © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se Lookup IIF([//Target/Org/OrgLevel] -eq 3),[//Target/Org/DisplayName], IIF([//Target/Org/OrgLevel] -eq 4),[//Target/Org/Org/DisplayName], IIF([//Target/Org/OrgLevel] -eq 5),[//Target/Org/Org/Org/DisplayName], IIF([//Target/Org/OrgLevel] -eq 6),[//Target/Org/Org/Org/Org/DisplayName], [//Target/Org/Org/Org/Org/Org/DisplayName])))) Target [//Target/Company]

Watch out for locks! © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se MPR1: OrgUnit changed -> WF1: Activity 1: Update Department Activity 2: Update Company - LOCK MPR2: Department changed -> WF2: Activity 1: Update “some attribute” – LOCK Activity 2: Notify new manager – OK Serialize Activities – Not Parallel!

Watch out for locks! © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se MPR1: OrgUnit changed -> WF1: Activity 1: Update Department Activity 2: Update Company Add->Activity 3: Update “some attribute” MPR2: Department changed -> WF2: Del->Activity 1: Update “some attribute” Activity 2: Notify new manager Serialize Activities – Not Parallel!

New User Example © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se

Use SQL intelligence © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se create view [dbo].[vOrgTree] as /*Level describes level in org tree where 1 is the top level. Writer: Marcus Olsson, XP Services AB, 2013 */ with OrgTree as ( -- Anchor (get top level i tree) select ObjectID, cast(null as varchar(50)) as Org, DisplayName, 1 as [Level] from OrgObjekt as o where ObjectType='O' and not exists(select * from Relations where ObjectType='O' and Kpl=2 and ObjectID=o.ObjectID) union all -- Underlying structure select o.ObjectID, r.KplID, o.DisplayName, [Level] + 1 from OrgTree as ot -- This CTE (to create an iteration) inner join Relations as r -- Relations on ot.ObjectID=r.KplID and kpl=2 -- Find Orgs that has this as its parent inner join OrgObjekt as o -- Info on underlying orgs on r.ObjectID=o.ObjectID -- Connect "child" to tabel ) select ot.ObjectID,'Organisation' as ObjectType,Org,DisplayName as Title,[Level] from OrgTree as ot left join Relationer as r on ot.ObjectID=r.KplID and r.Kpl=12

SQL and PS MA – NOT XMA © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se HR FIM Person Org PS MA SQL Person Org FIMObjects FIMMVData File Export Get Files Bulk Insert SQL Logic Import

What about Deprovisioning? © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se READ Carols great article: NO MV Object Deletions! Once created in MV/FIM Service it stays for traceability reasons Repopulate join attributes using FIM Service MA or other side-meta Deprovision using Rules Extension “Kent’s Best Practices”

Summary © 2014 XP Services AB. All rights reserved. Kent Nordströmhttp://xpservices.se Simple logic Synchronization Rule Complex logic WorkFlow activity Performance SQL “Kent’s Best Practices”