@Override
  public void grantRole(List<HivePrincipal> hivePrincipals, List<String> roles,
      boolean grantOption, HivePrincipal grantorPrinc) throws HiveAuthzPluginException,
      HiveAccessControlException {
    // validate principals
    hivePrincipals = SQLAuthorizationUtils.getValidatedPrincipals(hivePrincipals);
    roles = getLowerCaseRoleNames(roles);
    grantorPrinc = SQLAuthorizationUtils.getValidatedPrincipal(grantorPrinc);

    hiveAccessController.grantRole(hivePrincipals, roles, grantOption, grantorPrinc);
  }
Wrapper for {@link SQLStdHiveAccessController} that does validation of
arguments and then calls the real object. Doing the validation in this
separate class, so that the chances of missing any validation is small.

Validations/Conversions to be done
1. Call SQLAuthorizationUtils.getValidatedPrincipals on HivePrincipal to validate and
update
2. Convert roleName to lower case
ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAccessControllerWrapper.java