private List<String> getTableNames(List<HivePrivilegeObject> filteredObjects) { List<String> tnames = new ArrayList<String>(); for(HivePrivilegeObject obj : filteredObjects) { tnames.add(obj.getObjectName()); } return tnames; }
private List<String> getTableNames(List<HivePrivilegeObject> filteredObjects) { List<String> tnames = new ArrayList<String>(); for(HivePrivilegeObject obj : filteredObjects) { tnames.add(obj.getObjectName()); } return tnames; }
public boolean needsMaskingOrFiltering(HivePrivilegeObject privObject) throws SemanticException { String filter = privObject.getRowFilterExpression(); if (filter != null) { return true; } List<String> exprs = privObject.getCellValueTransformers(); if (exprs != null) { if (exprs.size() != privObject.getColumns().size()) { throw new SemanticException("Expect " + privObject.getColumns().size() + " columns in " + privObject.getObjectName() + ", but only find " + exprs.size()); } for (int index = 0; index < exprs.size(); index++) { String expr = exprs.get(index); if (expr == null) { throw new SemanticException("Expect string type CellValueTransformer in " + privObject.getObjectName() + ", but only find null"); } String colName = privObject.getColumns().get(index); if (!expr.equals(colName)) { return true; } } } return false; }
sb.append(HiveUtils.unparseIdentifier(privObject.getDbname(), conf)); sb.append("."); sb.append(HiveUtils.unparseIdentifier(privObject.getObjectName(), conf)); sb.append(" " + maskAndFilterInfo.additionalTabInfo); String filter = privObject.getRowFilterExpression();
/** * Convert thrift HiveObjectRef to plugin HivePrivilegeObject * @param privObj * @return * @throws HiveException */ public static HiveObjectRef getThriftHiveObjectRef(HivePrivilegeObject privObj) throws HiveException { if (privObj == null) { return null; } HiveObjectType objType = getThriftHiveObjType(privObj.getType()); return new HiveObjectRef(objType, privObj.getDbname(), privObj.getObjectName(), null, null); }
if (exprs.size() != privObject.getColumns().size()) { throw new SemanticException("Expect " + privObject.getColumns().size() + " columns in " + privObject.getObjectName() + ", but only find " + exprs.size()); if (expr == null) { throw new SemanticException("Expect string type CellValueTransformer in " + privObject.getObjectName() + ", but only find null"); sb.append(HiveUtils.unparseIdentifier(privObject.getDbname(), conf)); sb.append("."); sb.append(HiveUtils.unparseIdentifier(privObject.getObjectName(), conf)); sb.append(" " + maskAndFilterInfo.additionalTabInfo); String filter = privObject.getRowFilterExpression();
/** * Convert thrift HiveObjectRef to plugin HivePrivilegeObject * @param privObj * @return * @throws HiveException */ public static HiveObjectRef getThriftHiveObjectRef(HivePrivilegeObject privObj) throws HiveException { if (privObj == null) { return null; } HiveObjectType objType = getThriftHiveObjType(privObj.getType()); return new HiveObjectRef(objType, privObj.getDbname(), privObj.getObjectName(), null, null); }
@Override public HiveResourceACLs getResourceACLs(HivePrivilegeObject hiveObject) { HiveResourceACLs acls = null; try { switch (hiveObject.getType()) { case DATABASE: Database db = Hive.get().getDatabase(hiveObject.getDbname()); acls = getResourceACLs(new Path(db.getLocationUri())); break; case TABLE_OR_VIEW: case COLUMN: Table table = Hive.get().getTable(hiveObject.getDbname(), hiveObject.getObjectName()); acls = getResourceACLs(new Path(table.getTTable().getSd().getLocation())); break; default: // Shall never happen throw new RuntimeException("Unknown request type:" + hiveObject.getType()); } } catch (Exception e) { } return acls; }
try { thriftTableObj = metastoreClient.getTable(hivePrivObject.getDbname(), hivePrivObject.getObjectName()); } catch (Exception e) { throwGetObjErr(e, hivePrivObject);
privObj.getDbname(), privObj.getObjectName());
if (privObj.getObjectName() != null) { tableObj = hive.getTable(dbObj.getName(), privObj.getObjectName());
privObj.getDbname(), privObj.getObjectName()); } else { String replacementText = tableMask.create(privObj, info); privObj.getDbname(), privObj.getObjectName());
try { thriftTableObj = metastoreClient.getTable(hivePrivObject.getDbname(), hivePrivObject.getObjectName()); } catch (Exception e) { throwGetObjErr(e, hivePrivObject);
if (privObj.getObjectName() != null) { tableObj = hive.getTable(dbObj.getName(), privObj.getObjectName());
case LOCAL_URI: case DFS_URI: availPrivs = SQLAuthorizationUtils.getPrivilegesFromFS(new Path(hiveObj.getObjectName()), conf, userName); break;
case LOCAL_URI: case DFS_URI: availPrivs = SQLAuthorizationUtils.getPrivilegesFromFS(new Path(hiveObj.getObjectName()), conf, userName); break;
appendNonNull(builder, resource.getObjectName()); appendNonNull(builder, resource.getPartKeys()); appendNonNull(builder, resource.getColumns());
appendNonNull(builder, resource.getObjectName()); appendNonNull(builder, resource.getPartKeys()); appendNonNull(builder, resource.getColumns());
if (privObject.getObjectName() != null) { tableObj = hive.getTable(dbObj.getName(), privObject.getObjectName());
if (privObject.getObjectName() != null) { tableObj = hive.getTable(dbObj.getName(), privObject.getObjectName());