我们有这样的要求: User1加载一个jsp页面,例如带有信用卡信息的客户端屏幕,在该屏幕中应该屏蔽卡号。
但另一位用户说具有更高权限的用户2(比如管理员),加载相同的客户端屏幕,然后他应该看到确切的卡号。
为了实现这一点,我们考虑使用Oracle 12C dbms_redact.add_policy的概念。
但是,Web应用程序只使用一个userId(在web.xml中,整个应用程序由一个用户连接到DB)来连接Oracle。 那么,要应用不同的掩码策略,我是否需要在web.xml中添加另一个用户,并且Web应用程序应该配置为动态连接不同的userId,以达到上述要求?
还有其他方式以更优雅的方式实现它吗?
答案 0 :(得分:0)
Oracle redaction policies可以查看SYS_CONTEXT
值,因此您可以根据用户在进行身份验证时的权限设置一个值吗?
答案 1 :(得分:0)
通过使用SYS_CONTEXT,您可以基于用户ID或角色等实现相同的功能。