The following figure depicts the flow of the provisioning process and how the applicable components within the Microsoft Provisioning System (MPS) architecture work together to carry out a provisioning transaction.
Figure: Provisioning process flow
For a list of steps that correspond to the balloon items in the preceding figure, click the plus (+) sign below.
Process flow steps of Figure: Provisioning process flow
- A .NET calling application utilizes the methods of the MPS .NET
Client Wrapper to submit a request to the MPF COM Client. The
Client Wrapper and the MPF COM Client object both run on the same
computer as the calling application.
- The MPF COM Client receives the request and forwards it to the
Provisioning Engine.
- The Provisioning Engine parses the XML request and queries the
Configuration database. This query allows the Provisioning Engine
to expand the request into multiple actions based on the namespace
procedures defined in the request.
- Based on the actions identified in the expanded request, the
Provisioning Engine (MPS server) calls the relevant providers that
are registered on the system.
- The providers carry out the requests and the results are
returned to the MPS server.
- As these results are returned from the various providers,
transaction data is written to the Transaction database on a
computer running SQL Server. In the event of a failure, this data
is used to roll back the transactions.
- The MPS server returns the results to the MPF COM Client in XML
format.
- The MPF COM Client returns the results to the MPS .NET Client
Wrapper, which in turn provides them to the calling
application.
- Every few minutes, transaction data is moved from the
Transaction log to the Audit database for historical
reference.