1.3.1 ServerSoap (FindServiceLocations) Overview

RMS servers use the ServerSoap (FindServiceLocations) port type of the RMS: Server-Server Protocol to find the URLs for specific services that are provided by other RMS servers. This communication can be useful in two scenarios:

  1. Finding the appropriate URLs for a client to use for bootstrapping.

  2. Finding the Group Expansion port type on a remote server before making a cross-forest group expansion request.

Clients contact the server for a bootstrapping process so they can begin functioning in the RMS system. This bootstrapping process is defined in the RMS: Client-to-Server Protocol, as specified in [MS-RMPR]. To bootstrap a specific user, the RMS server needs to authenticate that user and determine the user's email address by checking the directory. If the user's account resides in a partition of the directory that the RMS server cannot access, it cannot successfully bootstrap the user. A client starts the bootstrapping process by making a request for service locations to a specific RMS server. If that RMS server is not the appropriate server to bootstrap the client, the server can use the ServerSoap (FindServiceLocations) port type to find the URLs on the appropriate server, and then return them to the client.

The ServerSoap (FindServiceLocations) port type uses a SOAP-based protocol over HTTP. It exposes one request/response operation: FindServiceLocations.