Cached report bursting is a security mechanism for controlling user access to data at the group level in a page report. It enables different users to view different data groups according to their access privileges. By defining which groups of data are available to which users, groups, or roles exist in the JReport Server security system, report results are created for each user, role and group. When a user accesses a report at runtime, JReport checks the user and the group and role of the user and merges the groups of data the user is authorized to see and displays it to the user. Cached report bursting also applies to nested groups.
Cached report bursting is implemented with these security properties on the group panel of a table or banded object: Cascade, Grant, Groups, and Roles. The following example shows the basic procedure to set up a cached report bursting policy.
Here, we write the formula Burst_User to set the security identifier as follows:
if (@Country == "China" || @Country == "Canada")
return "admin";
if (@Country == "USA")
return "jennifer";
"admin" and "jennifer" are two users assigned by the JReport Server administrator. The above formula states that, the user "admin" is authorized to view only the China and Canada groups, while the user "jennifer" can only view the USA group. If the formula is written as follows:
if ( @Country =="USA")
return "user1|user2|user3";
Then, user1, user2, and user3 can view the USA group.
if(@Country=='Italy')
return 'group1';
if(@Country=='USA')
return 'group2';
if(@Country=='Japan')
return 'role1';
if(@Country=='USA')
return 'role2';
Since the control of report access is not possible without user ID, the significance of this function is only apparent when other users try to access a report after it has been published to JReport Server. When an end user views a report with cached report bursting on JReport Server, the corresponding group will be displayed according to the security identifier.
In the above example, if "admin" belongs to group1 and role1, he will be able to view the China, Canada, Italy, and Japan groups. jennifer will be able to view only the USA group if she belongs to group2 and role2.
See also Cached Report Bursting in the JReport Server User's Guide for details about how to work with cached report bursting on the server side.