Capabilities (Symbian Signed)
From Symbian Developer Community
Contents |
What is a Capability?
The Symbian platform enables applications to use the Platform Security architecture in order to gain access to sensitive functionality within the platform. The APIs which give access to this functionality are protected by a series of capabilities. There are twenty capabilities, and they are split into four groups - User Capabilities, System Capabilities, Restricted Capabilities and Device Manufacturer Capabilities.
Depending which APIs you use within the platform, you will need to grant your application the relevant capabilities when you sign it.
Which capabilities can I access?
| Capability Group | Capability Name | Self-Signed | Open Signed Online | Open Signed Offline | Express Signed | Certified Signed |
| User Capabilities | LocalServices | Yes, with user confirmation at install time | Yes | Yes | Yes | Yes |
| Location | ||||||
| NetworkServices | ||||||
| ReadUserData | ||||||
| UserEnvironment | ||||||
| WriteUserData | ||||||
| System Capabilities | PowerMgmt | No | Yes | Yes | Yes | Yes |
| ProtServ | ||||||
| ReadDeviceData | ||||||
| SurroundingsDD | ||||||
| SwEvent | ||||||
| TrustedUI | ||||||
| WriteDeviceData | ||||||
| Restricted Capabilities | CommDD | No | No | Yes | No | Yes |
| DiskAdmin | ||||||
| NetworkControl | ||||||
| MultimediaDD | ||||||
| Device Manufacturer Capabilities | AllFiles | No | No | No | No | See below |
| DRM | ||||||
| TCB |
How do I know which capabilities I need?
There are, broadly speaking, two ways to find out which capabilities your application will need signing with.
- The first option is to look up the functions you use in the SDK documentation. When you find the documentation on a particular API, it will tell you which (if any) capabilities you need in order to use that API, as the following example shows
- The second way is to select the .mmp file in the Project Explorer window from within Carbide.c++ and select Project, Run Capability Scanner on Project MMP. The results will be displayed in a new Platform Security window, as shown in the example below
Device Manufacturer Capabilities
AllFiles, TCB and DRM protect the most sensitive aspects of the platform functionality, and access to them is only permissible when working with a Device Manufacturer and with their consent. However, it is very unlikely that your application will need these capabilities as they are only required for some very sensitive operations.
A more in-depth discussion of these capabilities can be found in the full article on the subject.
Comments
Sign in to comment…



