The Forefront Identity Manager Certificate Management (FIM CM) Provision API supports .NET Framework remoting to allow for the distribution of client and server components. When you write applications that use the Provision API, you should decide whether your application will run in the same process as the FIM CM Web application, or if it will run as a distributed process (or multiple process threads).
In essence, there are two cases to consider when you are trying to decide whether a FIM CM application that uses the Provision API is required to use .NET Framework remoting.
- If your program is an ASP.NET application
that is running in the same Internet Information Services (IIS)
application pool as the FIM CM Web application, calls to the
Provision API do not have to use remoting. In this case, the custom
code is running in the same process as the FIM CM Web application.
In this case, the UseRemoting property of the classes
FindOperations,
RequestOperations,
ExecuteOperations
and PermissionOperations
must be set to false. All that is required is a reference to
Microsoft.clm.shared.dll and
Microsoft.clm.provision.dll; for example,
PermissionOperations.UseRemoting = false;
- For applications that are not co-located with
the FIM CM server and not executing under the same application pool
in IIS you need to use remoting. This includes .NET Framework
console or Windows.Forms applications (running on the same or a
different computer as the FIM CM web application). This also
includes ASP.NET applications running on a different computer (or
on the same computer as the FIM CM Web application, but in a
different IIS application pool). In this case, the
UseRemoting property of each of the classes FindOperations,
RequestOperations,
ExecuteOperations
and PermissionOperations
must be set to true. A reference to
Microsoft.clm.shared.dll and
Microsoft.clm.provision.dll is still required; for example,
FindOperations.UseRemoting = true;
For more information about .NET Framework remoting in the Provision API, see FIM CM Remoting Configuration .