Introduction

The purpose of this document is to demonstrate how to create an Oracle 11 or 12 management agent in the FIM 2010 R2 sync engine on Windows 2012 server.  There are several discussion threads about how to do this for Windows Server 2008 R2 but there was nothing for Windows Server 2012.  Additionally, there was some confusion and uncertainty about what Oracle client FIM could use even for Windows 2008 R2.  The goal of this article is to list the relevant components along with a step by step guide of how to create a management agent to pull data from Oracle 11+ databases.

Components used in this article:

  1. FIM Sync Engine build 4.1.3510.0
  2. Windows 2012 Standard Edition
  3. Oracle database version 11 or 12
  4. Oracle Admin client (12.1.0.1.0) x64

Below are steps to install Oracle client and create management agent to pull data from a client.

Download the Oracle Database Client:

In order for FIM to connect to your target Oracle database, you will need to download and install the 64-bit Oracle Admin client version 12.1.0.1.0 (or later) which is the rough equivalent of SQL Server Management Studio.  After several iterations of this, it was found that only FIM works with the 12.1.0.1.0 64-bit version.  

Even though we were able to successfully install and configure the Oracle 32-bit client, FIM was not able to communicate with it.  Trying to create an Oracle MA would typically generate an error stating FIM could not find the client software even though the 32-bit version was installed, configured and the FIM Sync Service account had full access to the Oracle client directory.  That being said, time to install the client.

Install the Oracle Admin Client

Unzip the Oracle client download to a target install directory of your choice. Navigate to the new directory and run the setup.exe as an administrator.  Now select the Admin client for installation.  Trying to get FIM to work with just the client tools was not successful.  Installing the Admin client was the solution.

  

Accept the service account defaults and continue through the screens until you have to select the home paths.  Went with the standard “C:\Oracle” as the parent folder here to keep it simple. 

  

Continue on and install the product.

  

The installer will report errors otherwise the installation is complete after you have pressed the “Install” button and it takes appropriate action.

Configure Oracle Net Manager

Your Oracle DBA probably gives you a connection string, along with login credentials, that look something along the lines of this:

acme.world =
 (DESCRIPTION=
  (ADDRESS_LIST=
   (ADDRESS= (COMMUNITY=TCP.world)(PROTOCOL=TCP)(HOST=beta)(PORT=1521))
  )
  (CONNECT_DATA=(SID=acme)(GLOBAL_NAME=acme.world))
 )

We want to make sure we can communicate with the Oracle database prior to creating the FIM management agent.  Go to the Start menu on Windows Server 2012 and find the icon that says “Net Manager” and run it.

  1. Expand the “Local” node and then expand “Service Naming”
  2. In the upper left-hand corner press the “+” sign
  3. Enter whatever descriptive name you want in the “Net Service Name” box and press next.
  4. Select “TCP/IP” in the protocol box.  Note, your selection should match the protocol type listed in the connection string above.  In this instance, our connection string says “PROTOCOL=TCP” so we will stick with “TCP/IP”.
  5. Enter your host name which is our case is “beta” since our connection string was “HOST=beta”.
  6. Enter the appropriate value from the connection string which again according to our connection string is “1521”.  Press next to continue.
  7. The service name listed in the SID value of the connection string.  Keep the default connection type. Select next to keep going
  8. Press “Test” and chances are you will get a failure.  For whatever reason, you are not given the option to enter your credentials prior to this point.
  9. On the failure screen choose “Change Login” and enter the credentials supplied by the DBA.
  10. Press “Test” and now you should see a successful connection.
  11. Now press “Close” then “Finish”.  
  12. Exit the Net Manager and save this item when prompted.
  13. Validate the connection by opening a command prompt from the Windows Server start menu.
  14. Type tnsping yourHotName and press enter.  You should see a successful connection.

Grant the FIM Sync Service account Full Access to Oracle Client

  1. Now go to the main Oracle program folder which in our case is “C:\Oracle”.  Right click and go to the security tab.  
  2. Add your FIM sync service account and grant it full access.  Save and close.
  3. Restart the FIM sync service for FIM to pick up the changes.

Create Your Oracle Management Agent

  1. Go into FIM sync and create a new Oracle Database management agent.
  2. Ignore the fact that in the connection configuration screen that “To create a management agent for an Oracle 8i or Oracle 9i Database”
  3. In the data source enter your connection string information.  There is a trick to this and it must be in the format of hostName:port/SID so in keeping with our example it would be beta:1521/acme.
  4. Enter your table info (the view name).  Here we did not need to add sysAdmin.myViewName, just myViewName.
  5. Type in your credentials but be sure to specify if this is a database on Windows login.
  6. Press next to keep going through the config screen.  Some of the W2K8 articles for FIM mentioned this might take a while but it was actually pretty quick for me.
  7. Finish your management agent up like you normally would and save it.
  8. Create your Full import run profile for the Oracle MA.
  9. Kick off your full import and you should start pulling data into the CS.

References: