Index: src/java/org/apache/hcatalog/security/HdfsAuthorizationProvider.java =================================================================== --- src/java/org/apache/hcatalog/security/HdfsAuthorizationProvider.java (revision 1339266) +++ src/java/org/apache/hcatalog/security/HdfsAuthorizationProvider.java (working copy) @@ -234,17 +234,21 @@ * Checks the permissions for the given path and current user on Hadoop FS. If the given path * does not exists, it checks for it's parent folder. */ - public static void checkPermissions(final Configuration conf, final Path path, + void checkPermissions(final Configuration conf, final Path path, final EnumSet actions) throws IOException, LoginException { if (path == null) { throw new IllegalArgumentException("path is null"); } - + + HadoopShims shims = ShimLoader.getHadoopShims(); final UserGroupInformation ugi; - - HadoopShims shims = ShimLoader.getHadoopShims(); - ugi = shims.getUGIForConf(conf); + if(getConf().get("proxy.user.name") != null){ + ugi = UserGroupInformation.createRemoteUser(getConf().get("proxy.user.name")); + } + else { + ugi = shims.getUGIForConf(conf); + } final String user = shims.getShortUserName(ugi); final FileSystem fs = path.getFileSystem(conf);