oracle数据库脱敏代码
作者:安华金和 发布时间:2020-10-02


  【oracle数据库脱敏代码】
  /**
  * @param args
  * @throws SQLException
  * @throws ClassNotFoundException
  */
  public static void main(String[] args) throws SQLException, ClassNotFoundException {
  //驱动
  Class.forName("oracle.jdbc.driver.OracleDriver");
  //数据库链接配置
  String url = "jdbc:oracle:thin:@192.168.111.111:1521:orcl";
  String user = "admin";
  String password = "admin";
  Connection conn = DriverManager.getConnection(url, user, password);
  conn.setAutoCommit(true);
  PreparedStatement pre = null;
  //查询数据库所有的表
  String sql = "SELECT * FROM USER_TABLES";
  ResultSet result = null;
  pre = (PreparedStatement) conn.prepareStatement(sql);
  result = pre.executeQuery();
  while (result.next()){
  try {
  ResultSet result1 = null;
  //获取表的所有列
  String sql1 = "select column_name from user_tab_columns where table_name='" + result.getString("TABLE_NAME") + "'";
  pre = conn.prepareStatement(sql1);
  result1 = pre.executeQuery();
  while(result1.next()){
  ResultSet result2 = null;
  //执行脱敏,将列中的科技集团改成公司
  String sql2 = "update " + result.getString("TABLE_NAME") + " set "+ result1.getString("column_name")
  +"="+"replace(" + result1.getString("column_name") + ",'科技集团','公司') where " +  result1.getString("column_name")
  + " like '%科技集团%'";
  pre = conn.prepareStatement(sql2);
  boolean execute = pre.execute(sql2);
  System.out.println(execute);
  }
  result1.close();
  } catch (Exception e) {
  continue;
  }
  }
  conn.close();
  }
  【一款强大的oracle数据库脱敏系统】
  安华金和(静态)数据脱敏系统采用专门的脱敏算法对敏感数据进行屏蔽、随机替换、乱序处理和加密,将敏感数据转化为虚构数据,将个人信息匿名化,为数据的安全使用提供基础保障。广泛适用于银行、证券、保险等金融机构,同时在政府部门、涉密单位也有很好的适用场景,在国家等级保护、分级保护等领域均具有较强的政策合规性。
  【oracle数据库脱敏系统部署方式】
  oracle数据库脱敏系统支持单服务器部署模式和成对服务器部署模式,满足用户不同的部署需求场景。
  oracle单台服务器部署
  oracel单台数据库脱敏系统部署
     将连接业务部门的生产数据库,对生产数据进行抽取和数据脱敏,脱敏后的数据输出到测试部门的测试数据库中,供测试部门使用数据。单服务器部署模式用于客户生产环境网络和测试环境网络允许通过设备进行连接的使用场景。
  oracle成对服务器部署
  oracel成对数据库脱敏系统部署
     在业务部门数据出口及测试部门数据入口分别部署脱敏服务器,可将业务部门的数据进行有效隔离,通过offline的方式,满足测试部门使用业务部门脱敏后数据的需求。多服务器模式用于客户生产环境网络和测试环境网络需要隔离的使用场景。