Session Variables
Session variables are similar to dynamic repository variables in that they obtain their values from initialization blocks. Unlike dynamic repository variables, however, the initialization of session variables is not scheduled. When a user begins a session, the Oracle BI Server creates new instances of session variables and initializes them.
Unlike a repository variable, there are as many instances of a session variable as there are active sessions on the Oracle BI Server. Each instance of a session variable could be initialized to a different value.
Session variables are primarily used when authenticating users against external sources such as database tables or LDAP servers. If a user is authenticated successfully, session variables can be used to set filters and permissions for that session. For information about using session variables when setting up security, see "Managing Session Variables" in Oracle Fusion Middleware Security Guide for Oracle Business Intelligence Enterprise Edition.
This section contains the following topics:
System Session Variables
System session variables are session variables that the Oracle BI Server and Oracle BI Presentation Services use for specific purposes. System session variables have reserved names that cannot be used for other kinds of variables (such as static or dynamic repository variables and nonsystem session variables).When you use these variables for Oracle BI Presentation Services, preface their names with
NQ_SESSION
. For example, to filter a column on the value of the variable LOGLEVEL
, set the filter to the variable NQ_SESSION.LOGLEVEL
.
System Session Variables
Variable | Description |
---|---|
USER | Holds the value the user enters as his or her logon name. This variable is typically populated from the LDAP profile of the user. |
PROXY | Holds the name of the proxy user. A proxy user is a user that has been authorized to act for another user. See Oracle Fusion Middleware System Administrator's Guide for Oracle Business Intelligence Enterprise Edition for more information about the PROXY system session variable. |
GROUP | Contains the groups to which the user belongs. Exists only for compatibility with previous releases. Legacy groups are mapped to application roles automatically. |
WEBGROUPS | Specifies the Catalog groups (Presentation Services groups) to which the user belongs, if any. Note that the recommended practice is to use application roles rather than Catalog groups. |
USERGUID | Contains the global unique identifier (GUID) of the user, typically populated from the LDAP profile of the user. |
ROLES | Contains the application roles to which the user belongs. |
ROLEGUIDS | Contains the global unique identifiers (GUIDs) for the application roles to which the user belongs. GUIDs for application roles are the same as the application role names. |
PERMISSIONS | Contains the permissions held by the user, such as oracle.bi.server.impersonateUser or oracle.bi.server.manageRepository. |
DISPLAYNAME | Used for Oracle BI Presentation Services. It contains the name that is displayed to the user in the greeting in the Oracle BI Presentation Services user interface. It is also saved as the author field for catalog objects. This variable is typically populated from the LDAP profile of the user. |
PORTALPATH | Used for Oracle BI Presentation Services. It identifies the default dashboard the user sees when logging in (the user can override this preference after logged on). |
LOGLEVEL | The value of LOGLEVEL (a number between 0 and 5) determines the logging level that the Oracle BI Server uses for user queries.This system session variable overrides a variable defined in the Users object in the Administration Tool. If the administrator user (defined upon install) has a Logging level defined as 4 and the session variable LOGLEVEL defined in the repository has a value of 0 (zero), the value of 0 applies. |
REQUESTKEY | Used for Oracle BI Presentation Services. Any users with the same nonblank request key share the same Oracle BI Presentation Services cache entries. This tells Oracle BI Presentation Services that these users have identical content filters and security in the Oracle BI Server. Sharing Oracle BI Presentation Services cache entries is a way to minimize unnecessary communication with the Oracle BI Server. |
SKIN | Determines certain elements of the look and feel of the Oracle BI Presentation Services user interface. The user can alter some elements of the user interface by picking a style when logged on to Oracle BI Presentation Services. The SKIN variable points to an Oracle BI Presentation Services folder that contains the nonalterable elements (for example, figures such as GIF files). Such directories begin with sk_. For example, if a folder were called sk_companyx, the SKIN variable would be set to companyx. |
DESCRIPTION | Contains a description of the user, typically populated from the LDAP profile of the user. |
USERLOCALE | Contains the locale of the user, typically populated from the LDAP profile of the user. |
DISABLE_CACHE_HIT | Used to enable or disable Oracle BI Server result cache hits. This variable has a possible value of 0 or 1. |
DISABLE_CACHE_SEED | Used to enable or disable Oracle BI Server result cache seeding. This variable has a possible value of 0 or 1. |
DISABLE_SUBREQUEST_CACHE | Used to enable or disable Oracle BI Server subrequest cache hits and seeding. This variable has a possible value of 0 or 1. |
SELECT_PHYSICAL | Identifies the query as a SELECT_PHYSICAL query. See "Syntax and Usage Notes for SELECT_PHYSICAL" for more information. |
DISABLE_PLAN_CACHE_HIT | Used to enable or disable Oracle BI Server plan cache hits. This variable has a possible value of 0 or 1. |
DISABLE_PLAN_CACHE_SEED | Used to enable or disable Oracle BI Server plan cache seeding. This variable has a possible value of 0 or 1. |
TIMEZONE | Contains the time zone of the user, typically populated from the LDAP profile of the user. |
Nonsystem Session Variables
You use the same procedure to define nonsystem session variables as for system session variables.A common use for nonsystem session variables is setting user filters. For example, you could define a nonsystem variable called SalesRegion that would be initialized to the name of the sales region of the user.
You could then set a security filter for all members of a group that would allow them to view only data pertinent to their region.
When you use these variables for Oracle BI Presentation Services, preface their names with
NQ_SESSION
. For example, to filter a column on the value of the variable SalesRegion
, set the filter to the variable NQ_SESSION.SalesRegion
.
No comments:
Post a Comment