Share via


Bootstrapping To Use an OMA Client Provisioning Server

Send Feedback

The mobile operator can provision the device with a OMA Client Provisioning Trusted Provisioning Server (TPS) and a trusted Push Proxy Gateway (PPG) used by the TPS for continuous provisioning. You can use the XML example in this section as a template. After the device is bootstrapped, the message coming from the TPS will be granted the Manager role, and WAP push will still be the mechanism for continuous provisioning.

A mobile operator can also set other data connectivity information in the device's configurable settings in this bootstrap message.

For the default parameters that can be changed by TPS and the manager, see the Smartphone SDK Developer's Reference and the Pocket PC SDK Developer's Reference on MSDN. To enable the device to accept a message from the TPS. The TPS must use a provisioned, trusted PPG to push continuous provisioning XML to the device through Short Message Service (SMS). Also, the PPG should authenticate the push initiator (TPS) and inform the device by using a Push-Flag header. The push initiator header should be used to provide the URL of the TPS.

Note   After this bootstrap process, user-PIN-signed WAP push messages will be accepted if they originate from a trusted PPG and the PPG authenticated the push initiator.

The user authenticated message can be:

  • Input from the user interface.
  • Data sent through RAPI if the default RAPI policy is not changed.
  • WAP push messages that are signed with a user PIN.

The device can be bootstrapped with this provisioning document through any of the following methods:

The following XML example bootstraps the device with a WAP push gateway, a Trusted Provisioning Server URL for continuous provisioning. The message coming from the OMA Client Provisioning TPS will be granted the Manager role after the device is bootstrapped.

<wap-provisioningdoc>
<!-- The following XML is needed ONLY if the bootstrap message is sent over the air over WAP push --> 
   <characteristic type="BOOTSTRAP">
      <parm name="PROVURL" value="https://www.thephone-company.com/TPS" />
   </characteristic>

<!-- Provide a trusted WAP push gateway's SMS address -->
   <characteristic type="PXLOGICAL">
      <parm name="NAME" value="WAP Push Gateway"/>
      <parm name="PROXY-ID" value="163.187.21.3"/>
      <parm name="TRUST"/>
      <characteristic type="PXPHYSICAL">
         <parm name="PHYSICAL-PROXY-ID" value="Push Gateway 1"/>
         <!-- The push gateway's SMS address -->
         <parm name="PXADDR" value="9201612"/>
         <parm name="PXADDRTYPE" value="E164"/>
         <parm name="PUSHENABLED" value="1"/>
         <parm name="TO-NAPID" value="SMS NAP"/>
      </characteristic>
   </characteristic>

<!--Provide the NAPDEF for the PPG. This will be ignored by the device though because the default SMSC number stored in a SIM card will be used for all incoming SMS messages. -->
   <characteristic type="NAPDEF">
      <parm name="NAPID" value="SMS NAP"/>
      <parm name="NAME" value="SMS Connection"/>
      <parm name="NAP-ADDRESS" value="+12345550150"/>
      <parm name="BEARER" value="GSM-SMS"/>
   </characteristic>

<!-- Must change grant manager policy (4119) if the message is sent over RAPI so that the message that is assigned the TPS role will be granted as the device manager by updating the following policy. After bootstrapping must change the grant manager policy so that RAPI messsage no longer has the device manager role --> 
   <characteristic type="SecurityPolicy">
      <parm name="4119" value="128"/>
   </characteristic>

<!-- The following xml is only required when the bootstrap message is sent over RAPI.Must change manager policy (4119) and WAP Signed Message policy (4107) if the message is sent OTA through WAP Push so that the message that is assigned TPS role will be granted as the device manager and pure user pin signed or network pin signed WAP push provisioning message from unknown source is disallowed --> 
   <characteristic type="SecurityPolicy">
      <parm name="4119" value="128"/>
      <parm name="4107" value="3200"/>
   </characteristic>

<!-- Any other configuration data put in a bootstrap message such as HTTP proxy, synchronization settings, e-mail settings, etc. See the SDK API Reference for a complete list. -->
</wap-provisioningdoc>

See Also

Bootstrapping Windows Mobile-Based Devices | NAPDEF Configuration Service Provider | PXLOGICAL Configuration Service Provider | SecurityPolicy Configuration Service Provider | BOOTSTRAP Configuration Service Provider

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.