Because you can use the Outline API to create, edit, and delete outlines, you must be aware of some security issues when creating an application that uses the Outline API. These issues impact only programs that create, edit, or save outlines during a session.
To manipulate outlines through the Outline Editor in Administration Services, you must have Application Manager or higher privileges. You also need these privileges to use a program that uses the Outline API during execution. If you do not have these privileges, Outline API calls that read or write outlines from the server do not work. See the Oracle Essbase Database Administrator's Guide for more detailed information on security and privilege levels.
For example, you are writing a new EIS end-user application that allows your users to explore a number of "what-if" situations during a session. To do this, the program dynamically creates a number of Essbase databases during a session. These databases (and their outlines) are temporary and are not saved after the session terminates. You can approach this situation in several ways:
If you want the user to be able to create an application and multiple databases during a session, give the user the Create/Delete Application privilege. This privilege must be assigned by an Essbase administrator prior to running the program. This is a relatively high privilege level in Essbase, but if the user does not have access to other programs, there is little impact on the overall system security.
If you do not need multiple databases available at the same time, you can have the Essbase administrator create a temporary application and database during the installation of your program. The program itself manipulates the temporary database without having to create a new database for each "what-if" situation.
With the second approach, a user requires only the lower and more restricted Database Manager privilege. You could have the Essbase administrator set up a special group with Database Manager privilege only for your temporary application and database. Users can be assigned to that group. The users would revert to ordinary user privilege for any other access to the system. This approach offers less security exposure, but does require more set up prior to running your program.