APEX 5授权方案特定用户

时间:2018-01-23 21:27:58

标签: oracle authorization oracle-apex-5

我正在为学校建立一个APEX 5申请表。有一个名为“课程信息”的页面,它包含几个经典报告,其中包含班级名单和测试时间表等信息。我想要包含一个成绩报告,但我只希望该课程的老师能够看到这个区域。如果我可以在页面上显示一个隐藏的项目以填充教师的用户名,我是否可以构建一个授权方案来检查APP_USER对这个项目,并且只显示该区域是否匹配?

我将如何做到这一点?

2 个答案:

答案 0 :(得分:2)

我会稍微改变一下,并且不会对此特定要求使用授权方案。

  1. 将报告基于具有教师用户名作为其中一列的视图。在报告SQL中放置一个where子句,例如select col1, col2, col3 from the_view where teacher_username = :APP_USER

  2. 根据select 1 from the_view where teacher_username = :APP_USER之类的内容,使用返回的行为条件添加条件。

  3. 这样,只有在允许用户查看其中的记录时才会呈现报告区域。

答案 1 :(得分:1)

最简单的选择是使用服务器端条件,该函数返回该区域的布尔值。只需加上

return :APP_USER = 'YOUR_TEACHER';
在那里。区域将仅为您的老师呈现。当然,' YOUR_TEACHER'应该用他真实的用户名代替。